因为时间序列是通过历史来预测未来,那么,这个时序值的历史数据,也就是当前时间点之前的信息就非常有用,通过他可以发现时间序列的趋势因素、季节性周期性因素以及一些不规则的变动,具体来说这部分特征可以分为三种:滞后值、滑动窗口统计和拓展窗口统计。
也称lag feature,比如对于t时刻的数据,我们认为他是跟昨天的数据、上周同一天的数据、上个月同一天的数据、去年同期的数据是高度相关的,那么,我们就可以将t-1、t-7、t-30、t-365的数据用来做特征。
但是在使用滞后值作为特征时需要注意一点,就是当在进行多步预测的时候,如果预测的horizon超过了滞后的期数,那么这时候就得使用递归的方式,将先前预测的值作为特征,举个例子,使用滞后一期的值作为特征,当前时间点为2021-07-10,我要预测2021-07-11和2021-07-12的股票价格,那么2021-07-11的值是可以预测的,因为我有2021-07-10的数据,但是2021-07-12的数据就不行了,因为我没有2021-07-11的数据,所以这时候一种做法就是将先前2021-07-11的预测值直接作为特征的输入,对于这种预测就得一行一行来,预测一行,拿预测值作为输入,再预测一行,再得到预测值,再预测一行,以此类推...
除了使用原始Lag值作为特征,还可以使用先前时间观察值的统计信息作为特征,这种类型的特征叫做滑动窗口统计,Rolling Window Statistics。比如对于t时刻,我们可以取前七天的统计值作为特征,也就是将t-1~t-8这个时间段数据的平均数、中位数、标准差、最大值、最小值等作为特征,这里指定的window就是7,也可以根据需要指定14,30等,可以发现,上面说的滞后值特征其实就是一种特殊的滑动窗口,他的window=1,然后滑动窗口统计也是可以指定滞后的期数来衍生出更多的特征的,比如七天前那个时刻的前七天数据的统计量。
同理,在构造这种特征的时候,也需要注意一下在多步预测时可能出现的问题。
另一种特征叫做扩展窗口统计(Expanding Window Statistics),其实也算是一种特殊的滑动窗口统计,不过他用来统计的数据是整个序列全部的数据,统计值可以是平均数、中位数、标准差、最大值、最小值等,这种特征一般是用在多序列建模,比如不同的股票价格,可能会有着不同的内在属性,在预测的时候用这个特征作为区分也是一种方式。