LSTM(长短期记忆网络)是一种常用的循环神经网络模型,用于处理序列数据。与传统RNN相比,LSTM可以更好地解决长序列训练中的梯度消失和梯度爆炸问题。LSTM层通常有4个子层:输入门(input gate)、遗忘门(forget gate)、输出门(output gate)和细胞状态(cell state)。LSTM通过引入三个门控单元来控制信息的流动,分别是输入门、遗忘门、输出门,从而实现长期记忆和短期记忆的平衡。输入门和遗忘门可以控制输入和遗忘信息的流动,输出门则可以控制输出信息的流动。LSTM引入细胞状态来存储长期记忆信息。LSTM层的参数数量取决于输入和输出的维度以及LSTM单元的数量。

1、 输入门:用于更新细胞状态。先将前一层隐藏状态的信息和当前输入的信息传递到sigmoid函数中去。将值调整到0~1之间来决定更新哪些信息。0表示不重要,1表示重要。其次要将前一层隐藏状态的信息和当前输入的信息传到tanh函数,创造新的候选值向量。最后将sigmoid的输出值与tanh的输出值相乘,sigmoid的输出值将决定tanh的输出值中哪些信息是重要且需要保留下来的。

2、 遗忘门:决定应丢弃或保留哪些信息。来自前一个隐藏状态的信息和当前输入的信息同时传递到sigmoid函数中,输出值介于0~1,越接近0意味着越应该丢弃,越接近1意味着越应该保留。

3、 输出门:用来确定下一个隐藏状态的值,隐藏状态包含了先前输入的信息。首先将前一个隐藏状态和当前输入信息传递到sigmoid函数,然后将新得到的细胞状态传递给tanh函数。左后将tanh的输出与sigmoid相乘,以确定隐藏状态应携带的信息。再将隐藏状态作为当前细胞的输出,把新的细胞状态和新的隐藏状态传递到下一个时间步长中。

4、 细胞状态:前一层的细胞状态与遗忘向量逐点相乘。如果它乘以接近0的值,则在新的细胞状态中,这些信息需要丢掉。然后再将该值与输入门的输出值逐点相加,将神经网络发现的新信息更新到细胞状态。

总之,LSTM通过引入门控机制来控制信息的流动,从而实现长期记忆和短期记忆的平衡,并使用细胞状态来存储长期记忆信息。LSTM的优点在于可以更好地处理长序列数据,并且可以避免梯度消失和梯度爆炸问题。

LSTM: 循环神经网络中的长期记忆解决方案

原文地址: https://www.cveoy.top/t/topic/nTaG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录