gluonts.mx.distribution 包#

class gluonts.mx.distribution.Beta(alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

Beta 分布。

参数
  • alpha – 包含 alpha 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • beta – 包含 beta 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • F

property F#
arg_names: Tuple#
property args: List#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

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][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

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][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

property stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

property variance: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布方差的张量。

class gluonts.mx.distribution.BetaOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'alpha': 1, 'beta': 1}#
distr_cls#

别名 gluonts.mx.distribution.beta.Beta

classmethod domain_map(F, alpha, beta)[source]#

将原始张量映射到构建 Beta 分布的有效参数。

参数
  • F

  • alpha – 形状为 (*batch_shape, 1) 的张量

  • beta – 形状为 (*batch_shape, 1) 的张量

返回值

两个压缩后的张量,形状为 (*batch_shape):两者的条目都被映射到正卦限。

返回类型

Tuple[Tensor, Tensor]

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

property value_in_support: float#

一个浮点数,计算相应分布的对数损失时将具有有效的数值;默认为 0.0。

填充数据序列时将使用此值。

class gluonts.mx.distribution.Binned(bin_log_probs: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], bin_centers: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], label_smoothing: Optional[float] = None)[source]#

基类: gluonts.mx.distribution.distribution.Distribution

一个通过 bin 中心和 bin 概率定义的分箱分布。

参数
  • bin_log_probs – 包含 bin 对数概率的张量,形状为 (*batch_shape, num_bins)

  • bin_centers – 包含 bin 中心的张量,形状为 (*batch_shape, num_bins)

  • F

  • label_smoothing – 标签平滑权重,范围在 [0, 1) 的实数。默认为 None。如果不是 None,则分布的损失将是“标签平滑”交叉熵。例如,计算估计的 bin 概率与硬标签(one-hot 编码)[1, 0, 0] 之间的交叉熵损失,改为将 [0.9, 0.05, 0.05] 的软标签作为真实值(当 label_smoothing=0.15 时)。更多参考请参见 (Muller et al., 2019) [MKH19]

property F#
arg_names: Tuple#
property args: List#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

property bin_probs#
cdf(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

返回在 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)[source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

loss(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

根据分布计算在 x 处的损失。

默认情况下,此方法返回 log_prob 的负值。然而,对于某些分布,对数密度不容易计算,因此会计算其他损失函数。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含对于 x 中每个事件的损失值。

返回类型

张量

property mean#

包含分布均值的张量。

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

sample(num_samples=None, dtype=<class 'numpy.float32'>)[source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

smooth_ce_loss(x)[source]#

带有“平滑”标签的交叉熵损失。

property stddev#

包含分布标准差的张量。

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.BinnedOutput(bin_centers: mxnet.ndarray.ndarray.NDArray, label_smoothing: Optional[float] = None)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls#

别名 gluonts.mx.distribution.binned.Binned

distribution(distr_args, loc=None, scale=None, **kwargs) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

get_args_proj(*args, **kwargs) mxnet.gluon.block.HybridBlock[source]#
class gluonts.mx.distribution.BoxCoxTransformOutput(lb_obs: float = 0.0, fix_lambda_2: bool = True)[source]#

基类: gluonts.mx.distribution.bijection_output.BijectionOutput

args_dim: Dict[str, int] = {'box_cox.lambda_1': 1, 'box_cox.lambda_2': 1}#
bij_cls#

别名 gluonts.mx.distribution.box_cox_transform.BoxCoxTransform

domain_map(F, *args: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], ...][source]#
property event_shape: Tuple#
class gluonts.mx.distribution.Categorical(log_probs: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

一个在 num_cats 个类别上的分类分布。

参数
  • log_probs – 包含各个类别对数概率的张量,形状为 (*batch_shape, num_cats)

  • F

property F#
arg_names: Tuple#
property args: List#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

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 模式下可用,此时可以访问分布参数的形状。

log_prob(x)[source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

property mean#

包含分布均值的张量。

property probs#
sample(num_samples=None, dtype=<class 'numpy.int32'>)[source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

property stddev#

包含分布标准差的张量。

class gluonts.mx.distribution.CategoricalOutput(num_cats: int, temperature: float = 1.0)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls#

别名 gluonts.mx.distribution.categorical.Categorical

distribution(distr_args, loc=None, scale=None, **kwargs) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

将参数转换为正确的形状和域。

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

class gluonts.mx.distribution.Deterministic(value: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

该对象构建的分布所考虑的每个单独事件的形状。

确定性/退化分布。:param value: 包含值的张量,形状为 (*batch_shape, *event_shape)。:param F

基类: gluonts.mx.distribution.distribution.Distribution

property F#

arg_names: Tuple#
property args: List#
property batch_shape: Tuple#
cdf(x)[source]#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

property event_dim: int#

返回在 x 处评估的累积分布函数的值。

property event_shape: Tuple#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

is_reparameterizable = True#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 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][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

property stddev: 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)

返回类型

张量

class gluonts.mx.distribution.DeterministicOutput(value: float)[source]#

包含分布标准差的张量。

args_dim: Dict[str, int] = {'value': 1}#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls#
别名 gluonts.mx.distribution.deterministic.Deterministic

property event_shape: Tuple#

get_args_proj(prefix: Optional[str] = None) mxnet.gluon.block.HybridBlock[source]#

该对象构建的分布所考虑的每个单独事件的形状。

class gluonts.mx.distribution.Dirichlet(alpha: typing.Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], float_type: typing.Type = <class 'numpy.float32'>)[source]#
Dirichlet 分布,由长度为 d 的集中参数 alpha 向量指定。https://en.wikipedia.org/wiki/Dirichlet_distribution

基类: gluonts.mx.distribution.distribution.Distribution

Dirichlet 分布定义在开放 (d-1) 单纯形上,这意味着一个样本(或观测值)x = (x_0,…, x_{d-1}) 必须满足

sum_k x_k = 1 and for all k, x_k > 0.

alpha – 集中参数向量,形状为 (…, d)

参数
  • F – 一个可以引用 MXNet 中 Symbol API 或 NDArray API 的模块

  • property F#

arg_names: Tuple#
property args: List#
property batch_shape: Tuple#
property event_dim: int#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

property event_shape: Tuple#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

is_reparameterizable = False#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

sample(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

包含分布均值的张量。

property variance: 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)

返回类型

张量

class gluonts.mx.distribution.DirichletMultinomial(dim: int, n_trials: int, alpha: typing.Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], float_type: typing.Type = <class 'numpy.float32'>)[source]#

包含分布方差的张量。

Dirichlet-Multinomial 分布,由长度为 dim 的集中参数 alpha 向量和试验次数 n_trials 指定。https://en.wikipedia.org/wiki/Dirichlet-multinomial_distribution

基类: gluonts.mx.distribution.distribution.Distribution

Dirichlet-Multinomial 分布是一个离散多元概率分布,一个样本(或观测值)x = (x_0,…, x_{dim-1}) 必须满足

sum_k x_k = n_trials and for all k, x_k is a non-negative integer.

这样的样本可以通过首先从 Dirichlet(alpha) 分布中抽取向量 p,然后从具有 n 次试验的 Multinomial(p) 分布中抽取 x 来获得。

dim – 任何样本的维度

参数
  • n_trials – 试验次数

  • alpha – 集中参数向量,形状为 (…, dim)

  • property F#

  • property F#

arg_names: Tuple#
property batch_shape: Tuple#
property event_dim: int#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

property event_shape: Tuple#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

is_reparameterizable = False#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

属性 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][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

属性 variance: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布方差的张量。

gluonts.mx.distribution.DirichletMultinomialOutput(dim: int, n_trials: int)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls: type#
distribution(distr_args, loc=None, scale=None) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

domain_map(F, alpha_vector)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

gluonts.mx.distribution.DirichletOutput(dim: int)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls: type#
distribution(distr_args, loc=None, scale=None) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

domain_map(F, alpha_vector)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

gluonts.mx.distribution.Distribution[source]#

基类: object

表示概率分布的类。

属性 F#
属性 all_dim: int#

总维度数。

arg_names: Tuple#
属性 args: List#
属性 batch_dim: int#

Batch 维度数,即 batch_shape 元组的长度。

属性 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][source]#

返回在 x 处评估的累积分布函数的值。

crps(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

根据分布计算 x 的*连续分级概率分数* (CRPS)。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,包含根据分布计算的每个 x 事件的 CRPS 分数。

返回类型

张量

属性 event_dim: int#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 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 中每个事件的对数密度。

返回类型

张量

loss(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

根据分布计算在 x 处的损失。

默认情况下,此方法返回 log_prob 的负值。然而,对于某些分布,对数密度不容易计算,因此会计算其他损失函数。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含对于 x 中每个事件的损失值。

返回类型

张量

属性 mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,包含分布在每个 x 事件处的密度。

返回类型

张量

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

sample(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

sample_rep(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
slice_axis(axis: int, begin: int, end: Optional[int]) gluonts.mx.distribution.distribution.Distribution[source]#
属性 stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

属性 support_min_max: Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#
属性 variance: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布方差的张量。

gluonts.mx.distribution.DistributionOutput[source]#

基类: gluonts.mx.distribution.distribution_output.Output

根据网络输出构建分布的类。

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) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

domain_map(F, *args: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], **kwargs)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_dim: int#

事件维度数,即此对象构建的分布的 event_shape 元组的长度。

属性 event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

属性 value_in_support: float#

一个浮点数,计算相应分布的对数损失时将具有有效的数值;默认为 0.0。

填充数据序列时将使用此值。

gluonts.mx.distribution.EmpiricalDistribution(samples: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], event_dim: int)[source]#

基类: gluonts.mx.distribution.distribution.Distribution

表示经验分布的类。

目标可以是向量/张量值,即 event_shape 可以大于或等于 1。但是,请注意,在计算方差和 CRPS 损失时,假设每个维度是独立的。

此外,在计算 CDF 和分位数时,假设样本在样本维度上是不同的,如果样本是从连续分布中抽取的,情况几乎总是如此。

参数
  • samples – 包含样本的张量,形状为 (num_samples, *batch_shape, *event_shape)

  • event_dim – 事件维度数,即 event_shape 元组的长度。对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 F#
arg_names: Tuple#
属性 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])[source]#

返回在 x 处评估的累积分布函数的值。

crps_univariate(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

根据经验分布计算 obs 的*连续分级概率分数* (CRPS)。

obs 的最后一个维度指定了目标的“事件维度”(单变量情况下为 1)。对于多变量目标,CRSP 分数会针对每个维度单独计算,然后返回它们的总和。

参数

x – 真实值的张量,形状为 (*batch_shape, *event_shape)

返回值

形状为 (*batch_shape, 1) 的 CRPS 分数。

返回类型

张量

属性 event_dim: int#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: Tuple#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

loss(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

根据分布计算在 x 处的损失。

默认情况下,此方法返回 log_prob 的负值。然而,对于某些分布,对数密度不容易计算,因此会计算其他损失函数。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含对于 x 中每个事件的损失值。

返回类型

张量

属性 mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

quantile_losses(obs: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], quantiles: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], levels: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算指定的所有分位数的分位数损失。

参数
  • obs – 真实观测值。形状:(batch_size, seq_len, *event_shape)

  • quantiles – 分位数的值。形状:(batch_size, seq_len, *event_shape, num_quantiles)

  • levels – 分位数水平。形状:(batch_size, seq_len, *event_shape, num_quantiles)

返回值

分位数损失的形状:(batch_size, seq_len, *event_shape, num_quantiles)

返回类型

张量

sample(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

属性 stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

gluonts.mx.distribution.EmpiricalDistributionOutput(num_samples: int, distr_output: gluonts.mx.distribution.distribution_output.DistributionOutput)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

这允许我们用任何参数分布包装 EmpiricalDistribution,并通过最小化 EmpiricalDistribution 样本上的 CRPS 损失来学习参数。

请参阅 test.distribution.test_mx_distribution_inference 中的推理测试 test_empirical_distribution,该测试检查 CRPS 损失是否正确实现。

args_dim: Dict[str, int] = {'alpha': 1, 'beta': 1}#
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) gluonts.mx.distribution.distribution.Distribution#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

domain_map(F, *args, **kwargs)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

get_args_proj(prefix: Optional[str] = None) gluonts.mx.distribution.distribution_output.ArgProj[source]#
gluonts.mx.distribution.FixedKnotsPiecewiseLinearOutput(quantile_levels: Union[List[float], numpy.ndarray])[source]#

基类: gluonts.mx.distribution.piecewise_linear.PiecewiseLinearOutput

PiecewiseLinearOutput 的一个简单扩展,它“固定”了分位数函数表示中的结(knot)位置。也就是说,不是用分段数进行初始化,而是在初始化时直接提供分位数。

参数

quantile_levels

分位数函数域上(即区间 [0,1] 内)的固定结位置,按升序提供。

有关分段线性分位数函数的更多信息,请参阅 gluonts.distribution.PiecewiseLinear

distr_cls#

的别名 gluonts.mx.distribution.piecewise_linear.PiecewiseLinear

类方法 domain_map(F, gamma, slopes, knot_spacings)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

get_args_proj(prefix: Optional[str] = None) gluonts.mx.distribution.distribution_output.ArgProj[source]#
gluonts.mx.distribution.Gamma(alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

Gamma 分布。

参数
  • alpha – 包含形状参数的张量,形状为 (*batch_shape, *event_shape)

  • beta – 包含率参数的张量,形状为 (*batch_shape, *event_shape)

  • F

属性 F#
arg_names: Tuple#
属性 args: List#
属性 batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

属性 event_dim: int#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 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 中每个事件的对数密度。

返回类型

张量

属性 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)

返回类型

张量

属性 stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

gluonts.mx.distribution.GammaOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'alpha': 1, 'beta': 1}#
distr_cls#

的别名 gluonts.mx.distribution.gamma.Gamma

类方法 domain_map(F, alpha, beta)[source]#

将原始张量映射到构建 Gamma 分布的有效参数。

参数
  • F

  • alpha – 形状为 (*batch_shape, 1) 的张量

  • beta – 形状为 (*batch_shape, 1) 的张量

返回值

两个压缩后的张量,形状为 (*batch_shape):两者的条目都被映射到正卦限。

返回类型

Tuple[Tensor, Tensor]

属性 event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

属性 value_in_support: float#

一个浮点数,计算相应分布的对数损失时将具有有效的数值;默认为 0.0。

填充数据序列时将使用此值。

gluonts.mx.distribution.Gaussian(mu: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], sigma: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

高斯分布。

参数
  • mu – 包含均值的张量,形状为 (*batch_shape, *event_shape)

  • std – 包含标准差的张量,形状为 (*batch_shape, *event_shape)

  • F

属性 F#
arg_names: Tuple#
属性 args: List#
属性 batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

cdf(x)[source]#

返回在 x 处评估的累积分布函数的值。

属性 event_dim: int#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: Tuple#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

类方法 fit(F, samples: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

将参数拟合到给定数据后,返回 Gaussian 的实例。

参数
  • F

  • samples – 形状为 (num_samples, batch_size, seq_len) 的张量。

返回类型

类型为 Gaussian 的分布实例。

is_reparameterizable = True#
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 中每个事件的对数密度。

返回类型

张量

属性 mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

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)

返回类型

张量

sample_rep(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
property stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

class gluonts.mx.distribution.GaussianOutput[源码]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'mu': 1, 'sigma': 1}#
distr_cls#

的别名 gluonts.mx.distribution.gaussian.Gaussian

classmethod domain_map(F, mu, sigma)[源码]#

将原始张量映射到构建高斯分布的有效参数。

参数
  • F

  • mu – 形状为 (*batch_shape, 1) 的张量

  • sigma – 形状为 (*batch_shape, 1) 的张量

返回值

两个压缩后的张量,形状为 (*batch_shape):第一个具有与 mu 相同的条目,第二个具有映射到正交限的条目。

返回类型

Tuple[Tensor, Tensor]

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

class gluonts.mx.distribution.GenPareto(xi: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[源码]#

基类: gluonts.mx.distribution.distribution.Distribution

广义帕累托分布。

参数
  • xi – 包含 xi 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • beta – 包含 beta 尺度参数的张量,形状为 (*batch_shape, *event_shape)

property F#
arg_names: Tuple#
property args: List#
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 中每个事件的对数密度。

返回类型

张量

property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[源码]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

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)

返回类型

张量

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]]#
property variance: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布方差的张量。

class gluonts.mx.distribution.GenParetoOutput[源码]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'beta': 1, 'xi': 1}#
distr_cls#

的别名 gluonts.mx.distribution.genpareto.GenPareto

classmethod domain_map(F, xi, beta)[源码]#

将原始张量映射到构建广义帕累托分布的有效参数。

参数
  • F

  • xi – 形状为 (*batch_shape, 1) 的张量

  • beta – 形状为 (*batch_shape, 1) 的张量

返回值

两个压缩后的张量,形状为 (*batch_shape):两者的条目都被映射到正卦限。

返回类型

Tuple[Tensor, Tensor]

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

property value_in_support: float#

一个浮点数,计算相应分布的对数损失时将具有有效的数值;默认为 0.0。

填充数据序列时将使用此值。

class gluonts.mx.distribution.ISQF(spline_knots: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], spline_heights: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta_l: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta_r: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], qk_y: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], qk_x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], num_qk: int, num_pieces: int, tol: float = 0.0001)[源码]#

基类: gluonts.mx.distribution.distribution.Distribution

论文 Learning Quantile Functions without Quantile Crossing for Distribution-free Time Series Forecasting (Park, Robinson, Aubet, Kan, Gasthaus, Wang 著) 中提出的增量(样条)分位数函数的分步类。

参数
  • spline_knots – 参数化样条结点 x 位置(y 位置)的张量 形状:(*batch_shape, (num_qk-1), num_pieces)

  • spline_heights – 参数化样条结点 x 位置(y 位置)的张量 形状:(*batch_shape, (num_qk-1), num_pieces)

  • qk_x – 包含分位数结点递增 x 位置(y 位置)的张量,形状:(*batch_shape, num_qk)

  • qk_y – 包含分位数结点递增 x 位置(y 位置)的张量,形状:(*batch_shape, num_qk)

  • beta_l – 包含左(右)尾部的非负可学习参数的张量,形状:(*batch_shape,)

  • beta_r – 包含左(右)尾部的非负可学习参数的张量,形状:(*batch_shape,)

property F#
arg_names: Tuple#
property args: List#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

cdf(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][源码]#

计算分位数水平 alpha_tilde,使得 q(alpha_tilde) = z :param z: 形状为 (*batch_shape,) 的张量

返回值

形状为 (*batch_shape,) 的张量

返回类型

alpha_tilde

cdf_spline(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][源码]#

对于观测值 z 和定义在 [qk_x[k], qk_x[k+1]] 中的样条,计算分位数水平 alpha_tilde,使得 alpha_tilde。

= q^{-1}(z) 如果 z 在 qk_x[k] 和 qk_x[k+1] 之间 = qk_x[k] 如果 z < qk_x[k] = qk_x[k+1] 如果 z > qk_x[k+1] :param z: 观测值,形状 = (*batch_shape,)

返回值

对应的分位数水平,形状 = (*batch_shape, num_qk-1)

返回类型

alpha_tilde

cdf_tail(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], left_tail: bool = True) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][源码]#

计算分位数水平 alpha_tilde,使得 alpha_tilde。

= q^{-1}(z) 如果 z 在尾部区域 = qk_x_l 或 qk_x_r 如果 z 在非尾部区域

参数
  • z – 观测值,形状 = (*batch_shape,)

  • left_tail – 如果为 True,则计算左尾部的 alpha_tilde 否则,计算右尾部的 alpha_tilde

返回值

对应的分位数水平,形状 = (*batch_shape,)

返回类型

alpha_tilde

crps(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][源码]#

以解析形式计算 CRPS :param z: 要评估的观测值。形状 = (*batch_shape,)

返回值

包含 CRPS 的张量,形状与 z 相同

返回类型

张量

crps_spline(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][源码]#

以解析形式计算样条的 CRPS :param z: 要评估的观测值。形状 = (*batch_shape,)

返回值

包含 CRPS 的张量,形状与 z 相同

返回类型

张量

crps_tail(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], left_tail: bool = True) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

以解析形式计算左/右尾部的 CRPS。

参数
  • z – 要评估的观测值。形状 = (*batch_shape,)

  • left_tail – 如果为 True,则计算左尾部的 CRPS 否则,计算右尾部的 CRPS

返回值

包含 CRPS 的张量,形状与 z 相同

返回类型

张量

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#
loss(z: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][源码]#

根据分布计算在 x 处的损失。

默认情况下,此方法返回 log_prob 的负值。然而,对于某些分布,对数密度不容易计算,因此会计算其他损失函数。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含对于 x 中每个事件的损失值。

返回类型

张量

static parametrize_qk(F, quantile_knots: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#

参数化 num_qk 个分位数结点的 x 或 y 位置的函数。

参数

quantile_knots – 分位数结点的 x 或 y 位置 形状: (*batch_shape, num_qk)

返回值

  • qk – 索引为 1, …, num_qk-1 的分位数结点 (qk) 的 x 或 y 位置,形状: (*batch_shape, num_qk-1)

  • qk_plus – 索引为 2, …, num_qk 的分位数结点 (qk) 的 x 或 y 位置,形状: (*batch_shape, num_qk-1)

  • qk_l – 最左边分位数结点 (qk) 的 x 或 y 位置,形状: (*batch_shape)

  • qk_r – 最右边分位数结点 (qk) 的 x 或 y 位置,形状: (*batch_shape)

static parametrize_spline(F, spline_knots: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], qk: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], qk_plus: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], num_pieces: int, tol: float = 0.0001) Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#

参数化样条结点 x 或 y 位置的函数 :param spline_knots: 参数化样条结点位置的变量 :param qk: 分位数结点 (qk) 的 x 或 y 位置,

索引为 1, …, num_qk-1,形状: (*batch_shape, num_qk-1)

参数
  • qk_plus – 分位数结点 (qk) 的 x 或 y 位置,索引为 2, …, num_qk,形状: (*batch_shape, num_qk-1)

  • num_pieces – 样条片段的数量

  • tol – 用于数值稳定性的容差超参数

返回值

  • sk – 样条结点 (sk) 的 x 或 y 位置,形状: (*batch_shape, num_qk-1, num_pieces)

  • delta_sk – 样条结点 (sk) 的 x 或 y 位置的差值,形状: (*batch_shape, num_qk-1, num_pieces)

static parametrize_tail(F, beta: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], qk_x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], qk_y: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#

参数化尾部参数的函数。

注意,指数尾部由以下公式给出:如果左尾部 q(alpha) = a_l log(alpha) + b_l 如果右尾部 = a_r log(1-alpha) + b_r

其中 a_l=1/beta_l, b_l=-a_l*log(qk_x_l)+q(qk_x_l) a_r=1/beta_r, b_r=a_r*log(1-qk_x_r)+q(qk_x_r)

参数
  • beta – 参数化左尾部或右尾部,形状: (*batch_shape,)

  • qk_x – 分位数结点的最左或最右 x 位置,形状: (*batch_shape,)

  • qk_y – 分位数结点的最左或最右 y 位置,形状: (*batch_shape,)

返回值

  • tail_a – 如上所述的 a_l 或 a_r

  • tail_b – 如上所述的 b_l 或 b_r

quantile(input_alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

quantile_internal(alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], axis: Optional[int] = None) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

在分位数水平 input_alpha 处评估分位数函数 :param alpha: 形状为 (*batch_shape,) 的张量,如果 axis=None,或者在指定位置包含一个

额外的轴,否则

参数

axis – 包含要计算的不同分位数水平的轴索引。有关详细信息,请参阅下面的描述。

返回值

分位数张量,形状与 alpha 相同

返回类型

张量

quantile_spline(alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], axis: Optional[int] = None) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

在 alpha 中包含的分位数水平处评估样条函数。

参数
  • alpha – 输入分位数水平

  • axis – 沿其扩展的轴 有关 input_alpha 形状和 axis 的详细信息,请参阅 quantile_internal 中的描述

返回值

分位数张量,形状为 (*batch_shape, num_qk-1) 如果 axis = None = (1, *batch_shape, num_qk-1) 如果 axis = 0 = (*batch_shape, num_qk-1, num_pieces) 如果 axis = -2

返回类型

张量

quantile_tail(alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], axis: Optional[int] = None, left_tail: bool = True) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

在 alpha 中包含的分位数水平处评估尾部函数 :param alpha: 输入分位数水平 :param axis: 沿其扩展的轴

有关 input_alpha 形状和 axis 的详细信息,请参阅 quantile_internal 中的描述

参数

left_tail – 如果为 True,计算左尾部的分位数 否则,计算右尾部的分位数

返回值

分位数张量,形状与 alpha 相同

返回类型

张量

sample(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

用于抽取随机样本的函数 :param num_samples: 样本数量 :param dtype: 数据类型

返回值

形状为 (*batch_shape,) 的张量,如果 num_samples = None 否则为 (num_samples, *batch_shape)

返回类型

张量

class gluonts.mx.distribution.ISQFOutput(num_pieces: int, qk_x: List[float], tol: float = 0.0001)[源码]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

增量(样条)分位数函数的 DistributionOutput 类。

参数
  • num_pieces – 每个样条的样条片段数量 当 num_pieces = 1 时,ISQF 退化为 IQF

  • alpha – 包含分位数结点 x 位置的张量

  • tol – 数值安全保护的容差

distr_cls#

的别名 gluonts.mx.distribution.isqf.ISQF

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) gluonts.mx.distribution.isqf.ISQF#

输出分布类的函数 distr_args: 分布参数 loc: 数据均值的偏移 scale: 数据的尺度

classmethod domain_map(F, *args: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], tol: float = 0.0001) Tuple[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#

域映射函数 此函数的输入由 self.args_dim 指定 knots, heights

参数化样条结点的 x-/y- 位置,形状 = (*batch_shape, (num_qk-1)*num_pieces) q: 参数化分位数结点 y 位置,形状 = (*batch_shape, num_qk) beta_l, beta_r: 参数化左/右尾部,形状 = (*batch_shape, 1)

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

reshape_spline_args(distr_args, qk_x)#

辅助函数,将 knots 和 heights 重塑为 (*batch_shape, num_qk-1, num_pieces),将 alpha 重塑为 (*batch_shape, num_qk)

class gluonts.mx.distribution.InverseBoxCoxTransformOutput(lb_obs: float = 0.0, fix_lambda_2: bool = True)[源码]#

基类: gluonts.mx.distribution.box_cox_transform.BoxCoxTransformOutput

args_dim: Dict[str, int] = {'box_cox.lambda_1': 1, 'box_cox.lambda_2': 1}#
bij_cls#

的别名 gluonts.mx.distribution.box_cox_transform.InverseBoxCoxTransform

property event_shape: Tuple#
class gluonts.mx.distribution.Laplace(mu: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], b: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[源码]#

基类: gluonts.mx.distribution.distribution.Distribution

拉普拉斯分布。

参数
  • mu – 包含均值的张量,形状为 (*batch_shape, *event_shape)

  • b – 包含分布尺度的张量,形状为 (*batch_shape, *event_shape)

  • F

property F#
arg_names: Tuple#
property args: List#
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 = True#
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 中每个事件的对数密度。

返回类型

张量

property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

sample_rep(num_samples=None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#
property stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

class gluonts.mx.distribution.LaplaceFixedVarianceOutput[源码]#

基类: gluonts.mx.distribution.laplace.LaplaceOutput

classmethod domain_map(F, mu, b)#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

class gluonts.mx.distribution.LaplaceOutput[源码]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'b': 1, 'mu': 1}#
distr_cls#

的别名 gluonts.mx.distribution.laplace.Laplace

classmethod domain_map(F, mu, b)#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

class gluonts.mx.distribution.LogitNormal(mu: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], sigma: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[源码]#

基类: gluonts.mx.distribution.distribution.Distribution

Logit-normal 分布。

参数
  • mu – 包含位置信息的张量,形状为 (*batch_shape, *event_shape)

  • sigma – 指示尺度的张量,形状为 (*batch_shape, *event_shape)

  • F

property F#
arg_names: Tuple#
property args: List#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

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 模式下可用,此时可以访问分布参数的形状。

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 中每个事件的对数密度。

返回类型

张量

quantile(level: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

sample(num_samples=None, dtype=<class 'numpy.float32'>)[source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

class gluonts.mx.distribution.LogitNormalOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'mu': 1, 'sigma': 1}#
distr_cls#

的别名 gluonts.mx.distribution.logit_normal.LogitNormal

distribution(distr_args, loc=None, scale=None, **kwargs) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

classmethod domain_map(F, mu, sigma)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

class gluonts.mx.distribution.LowrankMultivariateGaussian(dim: int, rank: int, mu: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], D: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], W: Optional[Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None)[source]#

基类: gluonts.mx.distribution.distribution.Distribution

多元高斯分布,其协方差矩阵被参数化为一个对角矩阵和一个低秩矩阵之和。

\[\Sigma = D + W W^T\]

W = None 时,协方差矩阵是对角的。

此实现的灵感主要来源于 Pytorch: https://github.com/pytorch/pytorch/blob/master/torch/distributions/lowrank_multivariate_normal.py

计算 \(\text{log\_prob}\) 的复杂度为每个元素 \(O(dim * rank + rank^3)\)

参数
  • dim – 分布支持的维度

  • rank – W 的秩

  • mu – 均值张量,形状为 (…, dim)

  • D – 协方差矩阵中的对角项,形状为 (…, dim)

  • W – 协方差矩阵中的低秩因子,形状为 (…, dim, rank) 可选;如果未提供,协方差矩阵是对角的。

property F#
arg_names: Tuple#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

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 模式下可用,此时可以访问分布参数的形状。

classmethod fit(F, samples: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], rank: int = 0) gluonts.mx.distribution.distribution.Distribution[source]#

在将参数拟合到给定数据后,返回一个 LowrankMultivariateGaussian 的实例。目前仅支持 rank = 0 的特殊情况。

参数
  • F

  • samples – 张量,形状为 (num_samples, batch_size, seq_len, target_dim)

  • rank – W 的秩

返回类型

类型为 LowrankMultivariateGaussian 的分布实例。

is_reparameterizable = True#
log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

sample_rep(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从多元高斯分布中抽取样本

\[s = \mu + D u + W v,\]

其中 \(u\)\(v\) 是标准正态样本。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回类型

形状为 (num_samples, …, dim) 的张量。

property variance: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布方差的张量。

class gluonts.mx.distribution.LowrankMultivariateGaussianOutput(dim: int, rank: int, sigma_init: float = 1.0, sigma_minimum: float =0.001)[source]#

基类: 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.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

domain_map(F, mu_vector, D_vector, W_vector=None)[source]#
参数
  • F

  • mu_vector – 张量,形状为 (…, dim)

  • D_vector – 张量,形状为 (…, dim)

  • W_vector – 张量,形状为 (…, dim * rank )

返回值

一个包含张量 mu, D, 和 W 的元组,它们的形状分别为 (…, dim), (…, dim), 和 (…, dim, rank)

返回类型

Tuple

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

get_args_proj(prefix: Optional[str] = None) gluonts.mx.distribution.distribution_output.ArgProj[source]#
class gluonts.mx.distribution.MixtureDistribution(mixture_probs: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], components: List[gluonts.mx.distribution.distribution.Distribution], F=None)[source]#

基类: gluonts.mx.distribution.distribution.Distribution

一个混合分布,其中每个分量都是一个 Distribution。

参数
  • mixture_probs – 一个混合概率张量。所有条目应为正且沿最后一个维度求和为 1。形状:(…, k),其中 k 是要混合的分布数量。除最后一个轴外,所有轴都应与分量分布的轴一致,或者为 1(在这种情况下,混合系数在轴上共享)。

  • components – 一个包含 k 个 Distribution 对象的列表,表示混合分量。分布可以是不同类型。每个分量的支持应由形状为 (…, d) 的张量组成。

  • property F#

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][source]#

返回在 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][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

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][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

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.MixtureDistributionOutput(distr_outputs: List[gluonts.mx.distribution.distribution_output.DistributionOutput])[source]#

基类: 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[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • 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[source]#
property value_in_support: float#

一个浮点数,计算相应分布的对数损失时将具有有效的数值;默认为 0.0。

填充数据序列时将使用此值。

class gluonts.mx.distribution.MultivariateGaussian(mu: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], L: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], F=None)[source]#

基类: gluonts.mx.distribution.distribution.Distribution

多元高斯分布,由均值向量和其协方差矩阵的乔利斯基因子指定。

参数
  • mu – 均值向量,形状为 (…, d)

  • L – 协方差矩阵的下三角乔利斯基因子,形状为 (…, d, d)

  • property F#

property F#
arg_names: Tuple#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

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 = True#
log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

property mean: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

sample_rep(num_samples: typing.Optional[int] = None, dtype=<class 'numpy.float32'>) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从多元高斯分布中抽取样本。内部使用协方差矩阵的乔利斯基分解

sample = L v + mu,

其中 L 是乔利斯基因子,v 是标准正态样本。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

形状为 (num_samples, …, d) 的张量。

返回类型

张量

property variance: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布方差的张量。

class gluonts.mx.distribution.MultivariateGaussianOutput(dim: int)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int]#
distr_cls: type#
domain_map(F, mu_vector, L_vector)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

class gluonts.mx.distribution.NanMixture(nan_prob: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], distribution: gluonts.mx.distribution.distribution.Distribution, F=None)[source]#

基类: gluonts.mx.distribution.mixture.MixtureDistribution

一个由 NaN 值的 Deterministic distribution 和 Distribution 分布组成的混合分布。

参数
  • nan_prob – 表示缺失值概率的张量。所有条目应为正且小于 1。所有轴应与分量分布的轴一致,或者为 1(在这种情况下,NaN 概率在轴上共享)。

  • distribution – 一个 Distribution 对象,表示非 NaN 值的分布。分布可以是不同类型。每个分量的支持应由形状为 (…, d) 的张量组成。

  • property F#

arg_names: Tuple#
property distribution#
is_reparameterizable = False#
log_prob(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

property nan_prob#
class gluonts.mx.distribution.NanMixtureOutput(distr_output: gluonts.mx.distribution.distribution_output.DistributionOutput)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls#

的别名 gluonts.mx.distribution.nan_mixture.NanMixture

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[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • 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.nan_mixture.NanMixtureArgs[source]#
class gluonts.mx.distribution.NegativeBinomial(mu: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

负二项分布,即一系列独立伯努利试验中成功的次数的分布。

参数
  • mu – 包含均值的张量,形状为 (*batch_shape, *event_shape)

  • alpha – 形状参数张量,形状为 (*batch_shape, *event_shape)

  • F

property F#
arg_names: Tuple#
property args: List#
property batch_shape: Tuple#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

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][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

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)

返回类型

张量

property stddev: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

class gluonts.mx.distribution.NegativeBinomialOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: Dict[str, int] = {'alpha': 1, 'mu': 1}#
distr_cls#

的别名 gluonts.mx.distribution.neg_binomial.NegativeBinomial

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) gluonts.mx.distribution.neg_binomial.NegativeBinomial[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

classmethod domain_map(F, mu, alpha)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

property event_shape: Tuple#

该对象构建的分布所考虑的每个单独事件的形状。

class gluonts.mx.distribution.OneInflatedBeta(alpha: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], one_probability: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.inflated_beta.ZeroAndOneInflatedBeta

One Inflated Beta 分布,如 Raydonal Ospina, Silvia L.P. Ferrari: Inflated Beta Distributions 中所述。

参数
  • alpha – 包含 alpha 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • beta – 包含 beta 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • one_probability – 包含概率为 1 的值的张量,形状为 (*batch_shape, *event_shape)

  • F

arg_names: Tuple#
is_reparameterizable = False#
class gluonts.mx.distribution.OneInflatedBetaOutput[source]#

基类: gluonts.mx.distribution.inflated_beta.ZeroInflatedBetaOutput

args_dim: Dict[str, int] = {'alpha': 1, 'beta': 1, 'one_probability': 1}#
distr_cls#

的别名 gluonts.mx.distribution.inflated_beta.OneInflatedBeta

classmethod domain_map(F, alpha, beta, one_probability)[source]#

将原始张量映射到构建 ZeroInflatedBeta 分布的有效参数。

参数
  • F

  • alpha – 形状为 (*batch_shape, 1) 的张量

  • beta – 形状为 (*batch_shape, 1) 的张量

  • zero_probability – 张量,形状为 (*batch_shape, 1)

返回值

三个被挤压的张量,形状为 (*batch_shape):前两个条目映射到正卦限,最后一个映射到 (0,1)。

返回类型

Tuple[Tensor, Tensor, Tensor]

class gluonts.mx.distribution.PiecewiseLinear(gamma: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], slopes: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], knot_spacings: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

分段线性分布。

此类表示与分布相关的分位数函数(即逆 CDF),是定义在 [0, 1] 区间上的连续、非递减的分段线性函数

\[q(x; \gamma, b, d) = \gamma + \sum_{l=0}^L b_l (x_l - d_l)_+\]

其中输入 \(x \in [0,1]\),参数为

  • \(\gamma\):在 0 处的截距

  • \(b\):连续分段斜率的差异

  • \(d\):节点位置

参数
  • gamma – 包含在零处截距的张量

  • slopes – 包含每个线性分段斜率的张量。所有系数必须为正。形状:(*gamma.shape, num_pieces)

  • knot_spacings – 包含样条曲线中节点间距的张量。所有系数必须为正,并且在最后一个轴上求和为 1。形状:(*gamma.shape, num_pieces)

  • F

property F#
arg_names: 元组#
属性 args: 列表#
属性 batch_shape: 元组#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

cdf(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分位数水平 \(\alpha\),使得 \(q(\alpha) = x\)。

参数

x – 形状与 gamma.shape 相同的张量

返回值

形状与 gamma.shape 相同的张量

返回类型

张量

crps(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算解析形式的 CRPS。

参数

x – 要评估的观测值。形状等于 gamma.shape。

返回值

包含 CRPS 的张量。

返回类型

张量

属性 event_dim: 整型#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: 元组#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

is_reparameterizable = False#
loss(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

根据分布计算在 x 处的损失。

默认情况下,此方法返回 log_prob 的负值。然而,对于某些分布,对数密度不容易计算,因此会计算其他损失函数。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含对于 x 中每个事件的损失值。

返回类型

张量

quantile(level: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

quantile_internal(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], axis: 可选的[整型] = None) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

在 x 中包含的分位数水平上评估分位数函数。

参数
  • x – 如果 axis=None,则形状为 *gamma.shape 的张量;否则,包含指定位置上的额外轴。

  • axis – 包含要计算的不同分位数水平的轴的索引。

返回值

分位数张量,形状与 x 相同。

返回类型

张量

sample(num_samples: 可选的[int] = None, dtype=<class 'numpy.float32'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

gluonts.mx.distribution.PiecewiseLinearOutput(num_pieces: 整型)[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

distr_cls#

的别名 gluonts.mx.distribution.piecewise_linear.PiecewiseLinear

distribution(distr_args, loc: 可选的[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None, scale: 可选的[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None) gluonts.mx.distribution.piecewise_linear.PiecewiseLinear[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

类方法 domain_map(F, gamma, slopes, knot_spacings)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: 元组#

该对象构建的分布所考虑的每个单独事件的形状。

gluonts.mx.distribution.Poisson(rate: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

泊松分布,即指定区域内成功次数的分布。

参数
  • rate – 包含均值的张量,形状为 (*batch_shape, *event_shape)

  • F

属性 F#
arg_names: 元组#
属性 args: 列表#
属性 batch_shape: 元组#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

属性 event_dim: 整型#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: 元组#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

is_reparameterizable = False#
log_prob(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

属性 mean: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

sample(num_samples: 可选的[int] = None, dtype=<class 'numpy.float32'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

属性 stddev: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

gluonts.mx.distribution.PoissonOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: 字典[str, int] = {'rate': 1}#
distr_cls#

别名 gluonts.mx.distribution.poisson.Poisson

distribution(distr_args, loc: 可选的[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None, scale: 可选的[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None) gluonts.mx.distribution.poisson.Poisson[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

类方法 domain_map(F, rate)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: 元组#

该对象构建的分布所考虑的每个单独事件的形状。

gluonts.mx.distribution.StudentT(mu: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], sigma: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], nu: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], F=None)[source]#

基类: gluonts.mx.distribution.distribution.Distribution

学生 t 分布。

参数
  • mu – 包含均值的张量,形状为 (*batch_shape, *event_shape)

  • sigma – 包含标准差的张量,形状为 (*batch_shape, *event_shape)

  • nu – 包含分布自由度的非负张量,形状为 (*batch_shape, *event_shape)

  • F

属性 F#
arg_names: 元组#
属性 args: 列表#
属性 batch_shape: 元组#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

属性 event_dim: 整型#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: 元组#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

is_reparameterizable = False#
log_prob(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

属性 mean: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

sample(num_samples: 可选的[int] = None, dtype=<class 'numpy.float32'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

属性 stddev: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

gluonts.mx.distribution.StudentTOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: 字典[str, int] = {'mu': 1, 'nu': 1, 'sigma': 1}#
distr_cls#

别名 gluonts.mx.distribution.student_t.StudentT

类方法 domain_map(F, mu, sigma, nu)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: 元组#

该对象构建的分布所考虑的每个单独事件的形状。

gluonts.mx.distribution.TransformedDistribution(base_distribution: gluonts.mx.distribution.distribution.Distribution, transforms: 列表[gluonts.mx.distribution.bijection.Bijection])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

通过在基本分布上应用一系列变换获得的分布。

属性 F#
arg_names: 元组#
属性 batch_shape: 元组#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

cdf(y: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

返回在 x 处评估的累积分布函数的值。

属性 event_dim#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: 元组#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

log_prob(y: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

quantile(level: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

sample(num_samples: 可选的[int] = None, dtype=<class 'numpy.float32'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

sample_rep(num_samples: 可选的[int] = None, dtype=<class 'float'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
属性 support_min_max: 元组[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]]#
gluonts.mx.distribution.TransformedDistributionOutput(base_distr_output: gluonts.mx.distribution.distribution_output.DistributionOutput, transforms_output: 列表[gluonts.mx.distribution.bijection_output.BijectionOutput])[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

连接网络与经过一系列可学习双射变换后的分布的类。

args_dim: 字典[str, int]#
distr_cls: 类型#
distribution(distr_args, loc: 可选的[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None, scale: 可选的[联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]] = None) gluonts.mx.distribution.distribution.Distribution[source]#

给定构造函数参数的集合,并可选择地提供一个比例张量,构建关联的分布。

参数
  • distr_args – 底层分布类型的构造函数参数。

  • loc – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

  • scale – 可选张量,形状与生成分布的 batch_shape+event_shape 相同。

domain_map(F, *args: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: 元组#

该对象构建的分布所考虑的每个单独事件的形状。

get_args_proj(prefix: 可选的[str] = None) gluonts.mx.distribution.distribution_output.ArgProj[source]#
gluonts.mx.distribution.TransformedPiecewiseLinear(base_distribution: gluonts.mx.distribution.piecewise_linear.PiecewiseLinear, transforms: 列表[gluonts.mx.distribution.bijection.Bijection])[source]#

基类: gluonts.mx.distribution.transformed_distribution.TransformedDistribution, gluonts.mx.distribution.piecewise_linear.PiecewiseLinear

arg_names: 元组#
crps(y: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

根据分布计算 x 的*连续分级概率分数* (CRPS)。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,包含根据分布计算的每个 x 事件的 CRPS 分数。

返回类型

张量

gluonts.mx.distribution.Uniform(low: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], high: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.distribution.Distribution

均匀分布。

参数
  • low – 包含分布域下界的张量。

  • high – 包含分布域上界的张量。

  • F

属性 F#
arg_names: 元组#
属性 args: 列表#
属性 batch_shape: 元组#

分布所考虑的事件集合的布局。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量,而在此样本上计算 log_prob(或者更普遍地说 loss)会得到一个形状为 batch_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

cdf(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

返回在 x 处评估的累积分布函数的值。

属性 event_dim: 整型#

事件维度的数量,即 event_shape 元组的长度。

对于标量分布为 0,对于向量分布为 1,对于矩阵分布为 2,依此类推。

属性 event_shape: 元组#

分布所考虑的每个单独事件的形状。

例如,标量分布的 event_shape = (),向量分布的 event_shape = (d, ),其中 d 是向量的长度,矩阵分布的 event_shape = (d1, d2),依此类推。

调用分布的 sample() 会得到一个形状为 batch_shape + event_shape 的张量。

此属性通常只在 mx.ndarray 模式下可用,此时可以访问分布参数的形状。

is_reparameterizable = True#
log_prob(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

属性 mean: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布均值的张量。

quantile(level: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算给定级别的分位数。

参数

level – 用于计算分位数的级别值。level 应该是一个介于 0 和 1 之间级别值的一维张量。

返回值

对应于传入级别的分位数。返回形状为

(num_levels, …DISTRIBUTION_SHAPE…),

其中 DISTRIBUTION_SHAPE 是底层分布的形状。

返回类型

分位数

sample(num_samples: 可选的[int] = None, dtype=<class 'numpy.float32'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

从分布中抽取样本。

如果提供了 num_samples,则输出的第一个维度将是 num_samples。

参数
  • num_samples – 要抽取的样本数量。

  • dtype – 样本的数据类型。

返回值

一个包含样本的张量。如果 num_samples = None,其形状为 (*batch_shape, *eval_shape),否则为 (num_samples, *batch_shape, *eval_shape)

返回类型

张量

sample_rep(num_samples: 可选的[int] = None, dtype=<class 'numpy.float32'>) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
属性 stddev: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]#

包含分布标准差的张量。

gluonts.mx.distribution.UniformOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: 字典[str, int] = {'low': 1, 'width': 1}#
distr_cls#

别名 gluonts.mx.distribution.uniform.Uniform

类方法 domain_map(F, low, width)[source]#

域取决于分布的类型,而正确的形状是通过以使返回的张量定义具有正确 event_shape 的分布的方式重塑尾部轴来获得的。

property event_shape: Tuple#

属性 event_shape: 元组#

该对象构建的分布所考虑的每个单独事件的形状。

gluonts.mx.distribution.ZeroAndOneInflatedBeta(alpha: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], zero_probability: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], one_probability: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.mixture.MixtureDistribution

零膨胀和一膨胀 Beta 分布,如 Raydonal Ospina, Silvia L.P. Ferrari 在 "Inflated Beta Distributions" 中所述。

参数
  • alpha – 包含 alpha 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • beta – 包含 beta 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • zero_probability – 包含零概率的张量,形状为 (*batch_shape, *event_shape)

  • one_probability – 包含概率为 1 的值的张量,形状为 (*batch_shape, *event_shape)

  • F

arg_names: 元组#
is_reparameterizable = False#
log_prob(x: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#

计算分布在 x 处的对数密度。

参数

x – 形状为 (*batch_shape, *event_shape) 的张量。

返回值

形状为 batch_shape 的张量,其中包含分布对于 x 中每个事件的对数密度。

返回类型

张量

gluonts.mx.distribution.ZeroAndOneInflatedBetaOutput[source]#

基类: gluonts.mx.distribution.distribution_output.DistributionOutput

args_dim: 字典[str, int] = {'alpha': 1, 'beta': 1, 'one_probability': 1, 'zero_probability': 1}#
distr_cls#

别名 gluonts.mx.distribution.inflated_beta.ZeroAndOneInflatedBeta

类方法 domain_map(F, alpha, beta, zero_probability, one_probability)[source]#

将原始张量映射到构造 ZeroAndOneInflatedBeta 分布的有效参数。

参数
  • F

  • alpha – 形状为 (*batch_shape, 1) 的张量

  • beta – 形状为 (*batch_shape, 1) 的张量

  • zero_probability – 张量,形状为 (*batch_shape, 1)

返回值

四个压缩的张量,形状为 (*batch_shape):前两个张量的条目映射到正卦限,zero_probability 映射到 (0, 1),one_probability 映射到 (0, 1-zero_probability)

返回类型

元组[张量, 张量, 张量, 张量]

属性 event_shape: 元组#

该对象构建的分布所考虑的每个单独事件的形状。

属性 value_in_support: 浮点数#

一个浮点数,计算相应分布的对数损失时将具有有效的数值;默认为 0.0。

填充数据序列时将使用此值。

gluonts.mx.distribution.ZeroInflatedBeta(alpha: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], beta: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], zero_probability: 联合类型[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol])[source]#

基类: gluonts.mx.distribution.inflated_beta.ZeroAndOneInflatedBeta

零膨胀 Beta 分布,如 Raydonal Ospina, Silvia L.P. Ferrari 在 "Inflated Beta Distributions" 中所述。

参数
  • alpha – 包含 alpha 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • beta – 包含 beta 形状参数的张量,形状为 (*batch_shape, *event_shape)

  • zero_probability – 包含零概率的张量,形状为 (*batch_shape, *event_shape)

  • F

arg_names: 元组#
is_reparameterizable = False#
gluonts.mx.distribution.ZeroInflatedBetaOutput[source]#

基类: gluonts.mx.distribution.inflated_beta.ZeroAndOneInflatedBetaOutput

args_dim: 字典[str, int] = {'alpha': 1, 'beta': 1, 'zero_probability': 1}#
distr_cls#

别名 gluonts.mx.distribution.inflated_beta.ZeroInflatedBeta

类方法 domain_map(F, alpha, beta, zero_probability)[source]#

将原始张量映射到构建 ZeroInflatedBeta 分布的有效参数。

参数
  • F

  • alpha – 形状为 (*batch_shape, 1) 的张量

  • beta – 形状为 (*batch_shape, 1) 的张量

  • zero_probability – 张量,形状为 (*batch_shape, 1)

返回值

三个被挤压的张量,形状为 (*batch_shape):前两个条目映射到正卦限,最后一个映射到 (0,1)。

返回类型

Tuple[Tensor, Tensor, Tensor]

gluonts.mx.distribution.ZeroInflatedNegativeBinomialOutput() gluonts.mx.distribution.mixture.MixtureDistributionOutput[源代码]#
gluonts.mx.distribution.ZeroInflatedPoissonOutput() gluonts.mx.distribution.mixture.MixtureDistributionOutput[源代码]#