1 常见时序预测分类

Broadly, these techniques can be grouped into three major groups: statistical methods, traditional machine learning-based methods, and deep learning-based methods.

时序预测通常可以有三种方法:即统计学方法、传统机器学习、深度学习。

  • 统计学方法是根据现有数据拟合函数。

  • 传统机器学习即例如高斯过程、回归树等方法。

  • 深度学习可以自动的建立映射关系,包括CNN,RNN,LSTM。

2 多步预测策略

多步预测可分为四种方法,递归预测、直接预测、递归直接预测、多输入多输出预测。

  • 递归预测: ${y_{t + H} } = {F_{ {\rm{Rec} } } }({y_{t + H - 1} },{y_{t + H - 2} },...,{y_{t + H - N} })$ 。用前N步的数据预测下一步,类似RNN学习笔记中的处理,然而输出的误差逐级积累。
  • 直接预测: ${y_{t + h} } = {F_{ {\rm{Dir} } } }({x_t},{x_{t - 1} },...,{x_{t - N - 1} })$ 。用数据直接预测某一步的数据,这种方法没有考虑输出数据之间的时序关系。
  • 递归直接预测: $\left\{ {\begin{array}{*{20}{c} } { {y_{t + 1} } = {F_{ {\rm{DirRec - 1} } } }({x_t},{x_{t - 1} },...,{x_{t - N + 1} })}\\ { {y_{t + 2} } = {F_{ {\rm{DirRec - 2} } } }({y_{t + 1} },{x_t},{x_{t - 1} },...,{x_{t - N + 1} })}\\ \vdots \\ { {y_{t + h} } = {F_{ {\rm{DirRec - h} } } }({y_{t + h - 1} },...,{y_{t + 1} },{x_t},{x_{t - 1} },...,{x_{t - N + 1} })}\end{array} } \right\}$ 。它仍存在误差积累问题。
  • 多输入多输出预测:避免误差积累。

3 LSTM 长短期记忆网络

Benefiting from the self-feedback mechanism, the recurrent neural network (RNN) model has advantages in exploring the temporal relationships in time series. However, it is more prone to gradient disappearance in practical applications. LSTM is designed to solve this problem on the basis of RNN, and thus with the ability to build long term dependencies.

${\Psi _t} = {\rm{Sigmoid(} }{W_{x\Psi } }{x_t}{\rm{ + } }{W_{\Psi h} }{h_{t - 1} } + {b_\Psi }{\rm{)(} }\Psi {\rm{ = } }f,i,o{\rm{)} }$

\

${g_t} = \tanh ({W_{gx} }{x_t} + {W_{gh} }{h_{t - 1} } + {b_g})$

\

${s_t} = {g_t} \odot {i_t} + {s_{t - 1} } \odot {f_t}$

\

${h_t} = \tanh ({s_t}) \odot {o_t}$

4 TCN 时域卷积网络 (未清楚理解)

  • 因果卷积
  • 膨胀卷积
  • 残差连接

5 拟合

利用分解拟合的方法,用多个block去学习时间序列的特征。

传统的方法可以将序列分成周期性、趋势性、余量三个部分分别拟合,而如果将block设置为超参数,更能适合不同的模型。它的优点是可以对复杂特征的时间序列进行特征提取。

另外,通过多个LSTM组成神经元链,每一级LSTM同时接受本级输入与上一级残差,让网络更精确地拟合数据。(类似梯度增强的方法)