gluonts.transform.convert 模块#
- class gluonts.transform.convert.AsNumpyArray(field: str, expected_ndim: int, dtype: typing.Type = <class 'numpy.float32'>)[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
将字段的值转换为 numpy 数组。
- 参数
expected_ndim – 预期维度数。如果维度数不匹配,则抛出异常。
dtype – 要使用的 numpy 数据类型。
- class gluonts.transform.convert.CDFtoGaussianTransform(target_dim: int, target_field: str, observed_values_field: str, cdf_suffix='_cdf', max_context_length: typing.Optional[int] = None, dtype: typing.Type = <class 'numpy.float32'>)[源代码]#
基类:
gluonts.transform._base.MapTransformation
边缘变换,通过经验 CDF 将目标转换为标准高斯分布,详情请见:https://arxiv.org/abs/1910.03002。
与多元高斯分布结合使用以形成 Copula。请注意,此变换目前仅适用于多元目标。
- static winsorized_cutoff(m: float) float [源代码]#
对经验 CDF 估计器应用截断以减少方差,详情请见:https://arxiv.org/abs/0903.0649。
- 参数
m – 输入的经验 CDF 值。
- 返回值
截断的经验 CDF 值。
- 返回类型
res
- class gluonts.transform.convert.ConcatFeatures(output_field: str, input_fields: List[str], drop_inputs: bool = True)[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
使用
np.concatenate
连接字段。值为
None
的字段将被忽略。- 参数
output_field – 用于输出的字段名称
input_fields – 要堆叠在一起的字段
drop_inputs – 如果设置为 True,则输入字段将被删除。
- class gluonts.transform.convert.ExpandDimArray(field: str, axis: Optional[int] = None)[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
扩展指定轴上的维度,如果轴不存在,则不执行任何操作。(这本质上调用了 np.expand_dims)
- 参数
field – 要使用的字典中的字段
axis – 要扩展的轴 (详情请参阅 np.expand_dims)
- class gluonts.transform.convert.ListFeatures(output_field: str, input_fields: List[str], drop_inputs: bool = True)[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
创建一个包含特征列表的新字段。
- 参数
output_field – 输出字段名称
input_fields – 要组合成列表的字段
drop_inputs – 如果为 True,则输入字段将从结果中移除。
- class gluonts.transform.convert.QuantizeMeanScaled(bin_edges: List[float], past_target_field: str = 'past_target', past_observed_values_field: str = 'past_observed_values', future_target_field: str = 'future_target', scale_field: str = 'scale')[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
重新缩放目标变量并进行量化。需要存在 past_target_field 和 future_target_field。
使用 past_target 的平均绝对值来重新缩放 past_target 和 future_target。然后使用 bin_edges 对重新缩放后的目标进行量化。
计算出的比例存储在 scale_field 中。
- 参数
bin_edges – 用于量化的分箱边界。
past_target_field – 包含 past_target 的字段名称,默认为“past_target”
optional – 包含 past_target 的字段名称,默认为“past_target”
past_observed_values_field – 包含 past_observed_values 的字段名称,默认为“past_observed_values”
optional – 包含 past_observed_values 的字段名称,默认为“past_observed_values”
future_target_field – 包含 future_target 的字段名称,默认为“future_target”
optional – 包含 future_target 的字段名称,默认为“future_target”
scale_field – 存储比例的字段名称,默认为“scale”
optional – 存储比例的字段名称,默认为“scale”
- class gluonts.transform.convert.SampleTargetDim(field_name: str, target_field: str, observed_values_field: str, num_samples: int, shuffle: bool = True)[源代码]#
基类:
gluonts.transform._base.FlatMapTransformation
在训练时从目标中采样随机维度。
- class gluonts.transform.convert.SwapAxes(input_fields: List[str], axes: Tuple[int, int])[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
对字段应用 np.swapaxes。
- 参数
input_fields – 要应用的字段
axes – 要使用的轴
- class gluonts.transform.convert.TargetDimIndicator(field_name: str, target_field: str)[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
目标维度的标签编码。
- class gluonts.transform.convert.ToIntervalSizeFormat(target_field: str, drop_empty: bool = False, discard_first: bool = False)[源代码]#
基类:
gluonts.transform._base.FlatMapTransformation
将稀疏单变量时间序列转换为 interval-size 格式,即一个二维时间序列,其中第一维对应于自上次正值以来的时间(1-indexed),第二维对应于需求的规模。这种格式常用于间歇性需求文献中,在此类“密集”时间序列上进行预测,例如 Croston 方法。
例如,时间序列 [0, 0, 1, 0, 3, 2, 0, 4] 被转换为二维时间序列 [[3, 2, 1, 2], [1, 3, 2, 4]] ,形状为 (2, M),其中 M 表示时间序列中非零项的数量。
- 参数
target_field – 要转换的目标字段,包含一个单变量稀疏时间序列
drop_empty – 如果为 True,则全零时间序列将被删除。
discard_first – 如果为 True,则转换后的密集序列中的第一个元素将被删除,目标将替换为 (2, M-1) 张量。这可用于第一个“需求间隔”时间未明确定义的情况,例如,当时间序列的真实起始索引未知时。
- class gluonts.transform.convert.VstackFeatures(output_field: str, input_fields: List[str], drop_inputs: bool = True, h_stack: bool = False)[源代码]#
基类:
gluonts.transform._base.SimpleTransformation
当 h_stack = False 时,使用
np.vstack
将字段堆叠在一起。否则使用np.hstack
将字段堆叠在一起。值为
None
的字段将被忽略。- 参数
output_field – 用于输出的字段名称
input_fields – 要堆叠在一起的字段
drop_inputs – 如果设置为 True,则输入字段将被删除。
h_stack – 横向堆叠而不是纵向堆叠