gluonts.mx.distribution.mixture 模块#
- class gluonts.mx.distribution.mixture.MixtureArgs(distr_outputs: List[gluonts.mx.distribution.distribution_output.DistributionOutput], prefix: Optional[str] = None)[源代码]#
基类:
mxnet.gluon.block.HybridBlock
- class gluonts.mx.distribution.mixture.MixtureDistribution(mixture_probs: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], components: List[gluonts.mx.distribution.distribution.Distribution], F=None)[源代码]#
基类:
gluonts.mx.distribution.distribution.Distribution
一个混合分布,其中每个分量都是一个分布 (Distribution)。
- 参数
mixture_probs – 混合概率张量。所有条目应为正,并在最后一维上求和为 1。形状:(…, k),其中 k 是要混合的分布数量。除最后一维外的所有轴应与分量分布的轴一致,或为 1(在这种情况下,混合系数在轴上共享)。
components – 表示混合分量的 k 个分布对象列表。分布可以有不同的类型。每个分量的支持集应由形状为 (…, d) 的张量组成。
F – 一个模块,可以是 MXNet 中的 Symbol API 或 NDArray API。
- property F#
- arg_names: Tuple#
- property batch_shape: Tuple#
分布考虑的事件集合的布局。
调用分布的 sample() 将产生形状为 batch_shape + event_shape 的张量,并计算此样本的 log_prob(或更一般的 loss)将产生形状为 batch_shape 的张量。
此属性通常仅在 mx.ndarray 模式下可用,当分布参数的形状可访问时。
- cdf(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol] [源代码]#
返回在 x 处计算的累积分布函数的值。
- property event_dim: int#
事件维数,即 event_shape 元组的长度。
对于标量上的分布,此值为 0;对于向量上的分布,此值为 1;对于矩阵上的分布,此值为 2,依此类推。
- property event_shape: Tuple#
分布考虑的每个单独事件的形状。
例如,标量上的分布具有 event_shape = (),向量上的分布具有 event_shape = (d, ),其中 d 是向量的长度,矩阵上的分布具有 event_shape = (d1, d2),依此类推。
从分布中调用 sample() 会产生形状为 batch_shape + event_shape 的张量。
此属性通常仅在 mx.ndarray 模式下可用,当分布参数的形状可访问时。
- is_reparameterizable = False#
- log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol] [源代码]#
计算分布在 x 处的对数密度。
- 参数
x – 形状为 (*batch_shape, *event_shape) 的张量。
- 返回
形状为 batch_shape 的张量,包含 x 中每个事件的分布对数密度。
- 返回类型
Tensor
- property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#
包含分布均值的张量。
- sample(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol] [源代码]#
从分布中抽取样本。
如果给定 num_samples,则输出的第一个维度将是 num_samples。
- 参数
num_samples – 要抽取的样本数量。
dtype – 样本的数据类型。
- 返回
包含样本的张量。如果 num_samples = None,则形状为 (*batch_shape, *eval_shape);否则形状为 (num_samples, *batch_shape, *eval_shape)。
- 返回类型
Tensor
- property stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#
包含分布标准差的张量。
- property support_min_max: Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#
- class gluonts.mx.distribution.mixture.MixtureDistributionOutput(distr_outputs: List[gluonts.mx.distribution.distribution_output.DistributionOutput])[源代码]#
基类:
gluonts.mx.distribution.distribution_output.DistributionOutput
- args_dim: Dict[str, int]#
- distr_cls: type#
- distribution(distr_args, loc: Optional[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None, scale: Optional[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None, **kwargs) gluonts.mx.distribution.mixture.MixtureDistribution [源代码]#
给定构造函数参数集合,并可选地给定一个尺度张量,构建关联的分布。
- 参数
distr_args – 底层分布类型的构造函数参数。
loc – 可选张量,与结果分布的 batch_shape+event_shape 具有相同的形状。
scale – 可选张量,与结果分布的 batch_shape+event_shape 具有相同的形状。
- property event_shape: Tuple#
此对象构建的分布所考虑的每个单独事件的形状。
- get_args_proj(prefix: Optional[str] = None) gluonts.mx.distribution.mixture.MixtureArgs [源代码]#
- property value_in_support: float#
计算相应分布的对数损失时将具有有效数值的浮点数;默认为 0.0。
此值将在填充数据序列时使用。