深度学习基础(六):LSTM模型及原理介绍

本文介绍了循环神经网络(RNN)的概念及其在处理序列数据中的优势,特别是长短期记忆网络(LSTM)如何解决长期依赖问题。LSTM通过特殊的门控机制有效地学习和维护长期依赖,使其在许多序列任务中表现出色。文章还探讨了LSTM的基本结构、工作原理和一些常见的变体。
摘要由CSDN通过智能技术生成



看到一篇讲LSTM非常清晰的文章,原文来自Understanding LSTM Networks , 译文来自理解LSTM网络,以下做了简单的介绍



Recurrent Neural Networks

人类并不是每时每刻都从一片空白的大脑开始他们的思考。在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义。我们不会将所有的东西都全部丢弃,然后用空白的大脑进行思考。我们的思想拥有持久性。
传统的神经网络并不能做到这点,看起来也像是一种巨大的弊端。例如,假设你希望对电影中的每个时间点的时间类型进行分类。传统的神经网络应该很难来处理这个问题——使用电影中先前的事件推断后续的事件。
RNN 解决了这个问题。RNN 是包含循环的网络,允许信息的持久化。

这里写图片描述
RNN 包含循环

在上面的示例图中,神经网络的模块,A,正在读取某个输入 x_i,并输出一个值 h_i。循环可以使得信息可以从当前步传递到下一步。这些循环使得 RNN 看起来非常神秘。然而,如果你仔细想想,这样也不比一个正常的神经网络难于理解。RNN 可以被看做是同一神经网络的多次赋值,每个神经网络模块会把消息传递给下一个。所以,如果我们将这个循环展开:

这里写图片描述
展开的 RNN

链式的特征揭示了 RNN 本质上是与序列和列表相关的。他们是对于这类数据的最自然的神经网络架构

并且 RNN 也已经被人们应用了!在过去几年中,应用 RNN 在语音识别,语言建模,翻译,图片描述等问题上已经取得一定成功,并且这个列表还在增长。我建议大家参考 Andrej Karpathy 的博客文章——

LSTM(Long Short-Term Memory)是一种特殊的循环神经网络(RNN),它可以在长序列的情况下有效地捕捉长期依赖关系。相对于标准的RNN,LSTM具有三个门控制,即输入门、遗忘门和输出门,分别负责控制输入的信息、保留或遗忘之前的状态以及输出的信息。这些门控制允许LSTM在长序列中保留重要的信息而忽略无关的信息,从而提高了其在各种任务上的性能表现。 LSTM作为一种有着悠久历史的模型,在自然语言处理、语音识别、建模时序数据等各种任务中都被广泛应用。下面我们来更详细地介绍一下LSTM模型的基本原理。 1. 基本单元: LSTM模型由一组基本单元组成,每个基本单元包含一个输入门、遗忘门、输出门和一个单元状态。它们的功能如下: - 输入门:负责控制输入的信息,决定将哪些信息加入到单元状态中; - 遗忘门:负责动态地更新单元状态,决定哪些信息需要被丢弃; - 输出门:负责控制从单元状态中输出的信息; - 单元状态:负责记忆之前的状态。 2. 具体计算方式: 在每个时刻$t$,LSTM单元接收到输入向量$x_t$以及前一时刻的输出$h_{t-1}$。首先,LSTM会根据当前输入和前一时刻的输出计算得到三个不同的向量:输入门向量$i_t$、遗忘门向量$f_t$和输出门向量$o_t$。同时,LSTM还会根据当前输入和前一时刻的输出更新单元状态$c_t$。 具体计算方式如下: (1) 输入门向量:$i_t=\sigma(W_{xi}x_t+W_{hi}h_{t-1}+b_i)$ 其中$\sigma$表示sigmoid函数,$W_{xi}$和$W_{hi}$分别为输入和隐藏状态的权重矩阵,$b_i$为偏置向量。 (2) 遗忘门向量:$f_t=\sigma(W_{xf}x_t+W_{hf}h_{t-1}+b_f)$ 其中$W_{xf}$和$W_{hf}$分别为输入和隐藏状态的权重矩阵,$b_f$为偏置向量。 (3) 输出门向量:$o_t=\sigma(W_{xo}x_t+W_{ho}h_{t-1}+b_o)$ 其中$W_{xo}$和$W_{ho}$分别为输入和隐藏状态的权重矩阵,$b_o$为偏置向量。 (4) 新单元状态:$\tilde{c_t}=tanh(W_{xc}x_t+W_{hc}h_{t-1}+b_c)$ 其中$tanh$为双曲正切函数,$W_{xc}$和$W_{hc}$分别为输入和隐藏状态的权重矩阵,$b_c$为偏置向量。 (5) 更新单元状态:$c_t=f_tc_{t-1}+i_t\tilde{c_t}$ 其中,$c_{t-1}$为前一时刻的单元状态。 (6) 输出向量:$h_t=o_ttanh(c_t)$ 3. 增加批次归一化: 在传统LSTM模型中,单个样本的归一化对模型的收敛有一定的作用。如今,研究者们发现,批次归一化可以显著地改善模型收敛的速度和稳定性,同时也能够提高模型的泛化能力和精度。批次归一化是在批量中,对每个特征在当前批次的样本进行均值和方差的标准化,然后通过一个可学习的缩放和平移变换调整数据分布。 以上就是关于LSTM模型的基本介绍,希望能够对读者有所帮助。在实际应用中,LSTM模型会和其他模型结合起来进行深度学习的任务,如文本分类、语音合成、机器翻译等,它目前已经成为了深度学习领域的基础模型之一。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值