https://zhuanlan.zhihu.com/p/67832773

这本来是我回答的一个问题:有什么好的模型可以做高精度的时间序列预测呢? - BINGO Hong的回答 - 知乎 https://www.zhihu.com/question/21229371/answer/533770345
但觉得在那个答案下一直更新好麻烦,干脆就移到自己主页文章好了。
以后会在这里更新,原答案不更新了。
-
时间序列基本规则法-周期因子法
-
线性回归-利用时间特征做线性回归
- 提取时间的周期性特点做为特征,此时训练集每条样本为"时间特征->目标值",时间序列的依赖关系被剔除,不需要严格依赖滑窗截取训练样本。常见是将时间用0-1哑变量表达,有以下若干种特征:
- 将星期转化为了0-1变量,从周一至周天,独热编码共7个变量
- 将节假日转化为0-1变量,视具体节假日数目,可简单分为两类,"有假日"-"无假日",独热编码共2个变量;或赋予不同编码值,如区分国庆、春节、劳动节等使用1、2、3表示
- 将月初转化为0-1变量,简单分两类表示为"是月初"-"非月初",共2个特征
- 类似的月中、月初可以转化为0-1变量
- 控制时间粒度,区分是weekday or weekend
- 观察序列,当序列存在周期性时,线性回归也可做为baseline
3.传统时序建模方法,ARMA/ARIMA等线性模型。参考:
-
特征工程着手,时间滑窗改变数据的组织方式,使用xgboost/LSTM模型/时间卷积网络等。参考:
-
转化为监督学习数据集,使用xgboot/LSTM模型/时间卷积网络/seq2seq(attention_based_model)。参考:
- 算法上可以引入注意力机制的seq2seq模型,见过纯粹的seq2seq解法,结合注意力机制的还没见过开源代码(可能是搜索不够仔细)。
- 注意力机制资料: