一、多步模型与多输出模型
多步模型指的是模型的输出是一系列值,表示对未来许多时间步长的预测,而多输出模型则对多个目标产生预测。
二、多步模型使用
1、基线创建
多步模型的基线可以使用两种方法,分布为使用最后一个数据点或者将历史数据点移位一个周期(24小时)的结果作为基线。
class MultiStepLastBaseline(Model):
def __init__(self, label_index=None):
super().__init__()
self.label_index = label_index
def call(self, inputs):
if self.label_index is None:
return tf.tile(inputs[:, -1:, :], [1, 24, 1])
return tf.tile(inputs[:, -1:, self.label_index:], [1, 24, 1]) #接受输入并在 24 个时间步骤中重复输入序列的最后一个值
class RepeatBaseline(Model):
def __init__(self, label_index=None):
super().__init__()
self.label_index = label_index
def call(self, inputs):
return inputs[:, :, self.label_index:] #返回输入序列
multi_window = DataWindow(input_width=24, label_width=24, shift=24, label_columns=['tra