107 | 基于门机制的RNN架构:LSTM与GRU
洪亮劼
该思维导图由 AI 生成,仅供参考
这周,我们继续来讨论基于深度学习的文本分析模型。这些模型的一大特点就是更加丰富地利用了文字的序列信息,从而能够对文本进行大规模的建模。在上一次的分享里,我们聊了对序列建模的深度学习利器“递归神经网络”,或简称 RNN。我们分析了文本信息中的序列数据,了解了如何对文本信息中最复杂的一部分进行建模,同时还讲了在传统机器学习中非常有代表性的“隐马尔科夫模型”(HMM)的基本原理以及 RNN 和 HMM 的异同。
今天我们进一步展开 RNN 这个基本框架,看一看在当下都有哪些流行的 RNN 模型实现。
简单的 RNN 模型
为了能让你对今天要进一步介绍的 RNN 模型有更加深入的了解,我们先来回顾一下 RNN 的基本框架。
一个 RNN 通常有一个输入序列 X 和一个输出序列 Y,这两个序列都随着时间的变化而变化。也就是说,每一个时间点,我们都对应着一个 X 和一个 Y。RNN 假定 X 和 Y 都不独立发生变化,它们的变化和关系都是通过一组隐含状态来控制的。具体来说,时间 T 时刻的隐含状态有两个输入,一个输入是时间 T 时刻之前的所有隐含状态,一个输入是当前时刻,也就是时间 T 时刻的输入变量 X。时间 T 时刻的隐含状态根据这两个输入,会产生一个输出,这个输出就是 T 时刻的 Y 值。
那么,在这样的一个框架下,一个最简单的 RNN 模型是什么样子的呢?我们需要确定两个元素。第一个元素就是在时刻 T,究竟如何处理过去的隐含状态和现在的输入,从而得到当前时刻的隐含状态,这是一个需要建模的元素。第二,如何从当前的隐含状态到输出变量 Y,这是另外一个需要建模的元素。
最简单的 RNN 模型对这两个建模元素是这样选择的。通常情况下,在时间 T-1 时刻的隐含状态是一个向量,我们假设叫 St-1,那么这个时候,我们有两种选择。
第一种选择是用一个线性模型来表达对当前时刻的隐含状态 St 的建模,也就是把 St-1 和 Xt 当作特性串联起来,然后用一个矩阵 W 当作是线性变换的参数。有时候,我们还会加上一个“偏差项”(Bias Term),比如用 b 来表示。那么在这样的情况下,当前的隐含状态可以认为是“所有过去隐含状态以及输入”的一阶线性变换结果。可以说,这基本上就是最简单直观的建模选择了。
第二种选择是如何从 St 变换成为 Y。这一步可以更加简化,那就是认为 St 直接就是输出的变量 Y。这也就是选择了隐含状态和输出变量的一种一一对应的情况。
在这个最简单的 RNN 模型基础上,我们可以把第一个转换从线性转换变为任何的深度模型的非线性转换,这就构成了更加标准的 RNN 模型。
LSTM 与 GRU 模型
我们刚刚介绍的 RNN 模型看上去简单直观,但在实际应用中,这类模型有一个致命的缺陷,那就是实践者们发现,在现实数据面前根本没法有效地学习这类模型。什么意思呢?
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
基于门机制的RNN架构:LSTM与GRU 深度学习的文本分析模型中,递归神经网络(RNN)以其丰富的序列信息利用而备受关注。RNN的基本框架包括输入序列X和输出序列Y,通过隐含状态控制它们的变化关系。然而,传统RNN模型存在梯度异常问题,导致无法有效学习。为解决此问题,引入了门机制,其中LSTM和GRU成为两个流行的模型。 LSTM将隐含状态分为存储单元和工作单元,通过一系列门控制存储信息并保留梯度,以解决梯度异常问题。而GRU则利用两套门机制决定隐含单元的变化,简化了LSTM的结构,但在效果上依然表现不俗。 总的来说,RNN需要门机制既是为了建模需要,又是为了解决梯度异常问题,以使优化算法能够有效工作。这些模型的引入和发展,为深度学习在文本序列建模领域带来了新的可能性和解决方案。 通过本文,读者可以快速了解RNN的基本概念、门机制的引入以及LSTM与GRU模型的核心思想,为进一步深入研究和讨论提供了基础。
仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《AI 技术内参》,新⼈⾸单¥98
《AI 技术内参》,新⼈⾸单¥98
立即购买
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
全部留言(2)
- 最新
- 精选
- 黄德平个人认为是解决梯度异常的需要催生了门机制,然后发现门机制可以进行长时序信息的选择性提取2018-12-132
- 离忧rnn需要门机制,应该是为了防止剃度消失等情况,所以为了防止这样情况,应该建模的时候,就需要。2018-07-01
收起评论