在gluon-ts中创建训练或测试数据时,我们可以通过指定DeepAREstimator
在feat_dynamic_real
中指定其他实值回归变量。是否支持多个实值回归器?
one_dim_target
中有一个gluonts.dataset.common.ListDataset
标志,用于创建训练/测试数据对象。似乎可能需要支持多个其他回归器,但是我找不到关于预期用法的好例子。
这里是用于使用一个额外的回归变量创建训练数据的设置:
training_data = ListDataset(
[{"start": df.index[0], "target": df.values, "feat_dynamic_real": df['randomColumn'].values}],
freq = "5min", one_dim_target=False
)
和估算器:
from gluonts.model.deepar import DeepAREstimator
from gluonts.trainer import Trainer
estimator = DeepAREstimator(freq="5min", prediction_length=12, trainer=Trainer(epochs=10))
predictor = estimator.train(training_data=training_data)
我正在寻找多个回归器所需的语法/配置。
答案 0 :(得分:0)
是的,对此有支持。首先,Gluon TS将回归器称为特征,将我们试图预测的信号称为目标。因此,您提到的one_dim_target
标志与输出的尺寸有关,而不与输入有关。
下面是我用于将多维特征(输入)与每个目标信号(我使用一维目标)相关联的代码
train_ds = ListDataset([{FieldName.TARGET: target,
FieldName.START: start,
FieldName.FEAT_DYNAMIC_REAL: fdr}
for (target, start, fdr) in zip(
target,
custom_ds_metadata['start'],
feat_dynamic_real)]
在上面的压缩功能中,
target
:是包含目标信号的一维numpy数组,即target
的形状为(1,#个时间步长)custom_ds_metadata['start']
:是一个熊猫日期变量,指示数据的开始feat_dynamic_real
:是包含两个特征信号的二维numpy数组,即feat_dynamic_real
具有形状(特征数,时间步长数)