当前位置:   article > 正文

MATLAB神经网络---lstmLayer(LSTM 长短期记忆神经网络)

MATLAB神经网络---lstmLayer(LSTM 长短期记忆神经网络)

前言

描述LSTM就要先描述一下循环神经网络

循环神经网络

循环神经网络通过使用带自反馈的神经元,使得网络的输出不仅和当前的输入有关,还和上一时刻的输出相关,于是在处理任意长度的时序数据时,就具有短期记忆能力。

如下是一个按时间展开的循环神经网络图:

梯度消失和梯度爆炸是困扰RNN模型训练的关键原因之一,产生梯度消失和梯度爆炸是由于RNN的权值矩阵循环相乘导致的,相同函数的多次组合会导致极端的非线性行为。梯度消失和梯度爆炸主要存在RNN中,因为RNN中每个时间片使用相同的权值矩阵。

LSTM

  • LSTM的全称是Long Short Term Memory,顾名思义,它具有记忆长短期信息的能力的神经网络。
  • LSTM 神经网络是一种循环神经网络 (RNN),可以学习序列数据的时间步之间的长期依存关系。
  • LSTM 神经网络的核心组件是序列输入层和 LSTM 层。
  • 序列输入层将序列或时间序列数据输入神经网络中。
  • LSTM 学习序列数据的时间步之间的长期相关性

公式推导

LSTM之所以能够解决RNN的长期依赖问题,是因为LSTM引入了门(gate)机制用于控制特征的流通和损失。LSTM是由一系列LSTM单元(LSTM Unit)组成,其链式结构如图。

我们假设h为LSTM单元的隐藏层输出,c为LSTM内存单元的值,x为输入数据。LSTM单元的更新与前向传播一样,可以分为以下几个步骤。

1、计算遗忘门的值

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/716952
推荐阅读
相关标签