gluonts.mx.distribution.piecewise_linear 模块#
- class gluonts.mx.distribution.piecewise_linear.FixedKnotsArgProj(knot_spacings: mxnet.ndarray.ndarray.NDArray, **kwargs)[source]#
- class gluonts.mx.distribution.piecewise_linear.FixedKnotsPiecewiseLinearOutput(quantile_levels: Union[List[float], numpy.ndarray])[source]#
- 基类: - gluonts.mx.distribution.piecewise_linear.PiecewiseLinearOutput- PiecewiseLinearOutput 的一个简单扩展,它“固定”了分位数函数表示中的节点位置。也就是说,不是用分段数进行初始化,而是在初始化时直接提供分位数。 - 参数
- **quantile_levels** – - 分位数函数定义域(即区间 [0,1])内的点, piecewise linear 近似法的节点将固定在此处,按升序提供。 - 有关分段线性分位数函数的更多信息,请参阅 - gluonts.distribution.PiecewiseLinear。
 - classmethod domain_map(F, gamma, slopes, knot_spacings)[source]#
- 将参数转换为正确的形状和域。 - 域取决于分布的类型,而正确的形状是通过重塑末尾轴获得的,使得返回的张量定义了具有正确事件形状的分布。 
 - get_args_proj(prefix: Optional[str] = None) gluonts.mx.distribution.distribution_output.ArgProj[source]#
 
- class gluonts.mx.distribution.piecewise_linear.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** – 包含 0 处截距的张量 
- **slopes** – 包含每个线性分段斜率的张量。所有系数必须为正。形状: - (*gamma.shape, num_pieces)
- **knot_spacings** – 包含样条节点之间间距的张量。所有系数必须为正,并且在最后一个轴上总和为一。形状: - (*gamma.shape, num_pieces)
- **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][source]#
- 计算分位数水平 \(\alpha\),使得 \(q(\alpha) = x\)。 - 参数
- **x** – 形状为 gamma.shape 的张量 
- 返回
- 形状为 gamma.shape 的张量 
- 返回类型
- 张量 
 
 - crps(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol]) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
- 以解析形式计算 CRPS。 - 参数
- **x** – 要评估的观测值。形状等于 gamma.shape。 
- 返回
- 包含 CRPS 的张量。 
- 返回类型
- 张量 
 
 - 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(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 中每个事件的损失值。 
- 返回类型
- 张量 
 
 - 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_internal(x: Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol], axis: Optional[int] = None) Union[mxnet.ndarray.ndarray.NDArray, mxnet.symbol.symbol.Symbol][source]#
- 评估在包含于 x 中的分位数水平上的分位数函数。 - 参数
- **x** – 如果 axis=None,则形状为 - *gamma.shape的张量,否则在指定位置包含一个附加轴。
- **axis** – 包含要计算的不同分位数水平的轴的索引。 
 
- 返回
- 分位数张量,形状与 x 相同。 
- 返回类型
- 张量 
 
 - 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)。 
- 返回类型
- 张量 
 
 
- class gluonts.mx.distribution.piecewise_linear.PiecewiseLinearOutput(num_pieces: int)[source]#
- 基类: - gluonts.mx.distribution.distribution_output.DistributionOutput- 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.piecewise_linear.PiecewiseLinear[source]#
- 给定构造函数参数集合以及可选的尺度张量,构造关联的分布。 - 参数
- **distr_args** – 底层分布类型的构造函数参数。 
- **loc** – 可选张量,与结果分布的 batch_shape+event_shape 形状相同。 
- **scale** – 可选张量,与结果分布的 batch_shape+event_shape 形状相同。 
 
 
 - classmethod domain_map(F, gamma, slopes, knot_spacings)[source]#
- 将参数转换为正确的形状和域。 - 域取决于分布的类型,而正确的形状是通过重塑末尾轴获得的,使得返回的张量定义了具有正确事件形状的分布。 
 - property event_shape: Tuple#
- 此对象构造的分布所考虑的每个个体事件的形状。 
 
- class gluonts.mx.distribution.piecewise_linear.TransformedPiecewiseLinear(base_distribution: gluonts.mx.distribution.piecewise_linear.PiecewiseLinear, transforms: List[gluonts.mx.distribution.bijection.Bijection])[source]#
- 基类: - gluonts.mx.distribution.transformed_distribution.TransformedDistribution,- gluonts.mx.distribution.piecewise_linear.PiecewiseLinear- arg_names: Tuple#