概念
LSTM:长短期记忆细胞神经网络
长短期记忆网络是一种时间递归神经网络,适合处理和预测时间序列中间隔和延迟相对较长的重要事件。
使用遗忘门的LSTM适用于连续性的预测。
LSTM避免了RNN(循环神经网络)网络的梯度消失和梯度爆炸问题。
LSTM 使用记忆单元代替神经元。
组成
一个LSTM单元由一个记忆细胞 C t C_t Ct 和三个门结构组成(输入门 i t i_t it 、遗忘门 f t f_t ft、输出门 o t o_t ot).
在 t 时刻, x t x_t xt代表输入数据, h t h_t ht代表隐藏层。 X X X代表向量外积, + + +代表叠加运算。公式如下:
f t = σ ( U f x t + W f h t − 1 + b f ) i t = σ ( U i x t + W i h t − 1 + b i ) u t = tanh ( U u x t + W u h t − 1 + b u ) c t = f t ∗ c t − 1 + i t ∗ u t o t = σ ( U o x t + W o h t − 1 + b o ) h t = o t ∗ tanh ( c t ) \begin{aligned} &f_t = \sigma(U_fx_t + W_fh_{t-1}+ b_f)\\ &i_t = \sigma (U_ix_t+W_ih_{t-1}+b_i)\\ &u_t = \tanh(U_ux_t+W_uh_{t-1}+b_u)\\ &c_t = f_t*c_{t-1} + i_t * u_t \\ &o_t = \sigma(U_ox_t + W_oh_{t-1}+b_o)\\ &h_t = o_t * \tanh(c_t) \end{aligned} ft=σ(Ufxt+Wfht−1+bf)it=σ(Uixt+Wiht−1+bi)ut=tanh(Uuxt+Wuht−1+bu)ct=ft∗ct−1+it∗utot=σ(Uoxt+Woht−1+bo)ht=ot∗tanh(ct)
U/W是矩阵权重,b代表偏移量, σ \sigma σ是sigmoid函数,符号*代表向量外积。
记忆单元图示
遗忘门:
C
t
−
1
C_{t-1}
Ct−1首先需要先遗忘一些信息,所以先将
H
t
−
1
H_{t-1}
Ht−1与
X
t
X_t
Xt和
b
f
b_f
bf做加权和,然后使用
s
i
g
m
o
i
d
\color{#FF0000}{sigmoid}
sigmoid函数处理,得到
f
t
f_t
ft,代表着上一个细胞需要遗忘的信息权重 ,之后与上一个记忆细胞做外积,忘记一些信息。
输入门: 决定了要接收多少新信息到记忆细胞。
原有信息和新增信息分别由遗忘门和输入门控制,得到了当前记忆细胞( C t C_t Ct),最后通过输出门过滤记忆细胞,更新后的记忆细胞获得当前隐藏层状态(最后一个公式),最后进行反向传播。
需要考虑的问题
神经网络的问题
- 过拟合
- 局部极小值
- 黑盒技术
其他问题
- 市场特征的非线性、政治经济条件以及经营者的期望相互作用,导致时间序列的线性模型并不适用。
一些问题的解决方法
- 适用遗传算法改进调参模型,可以提升LSTM预测效果。
参考文献
温故知新,未央书斋