深度学习--长短期记忆网络

1.引入

        RNN 可以将以前的信息与当前的信息进行连接。例如,在视频中,可以用前面的帧来  帮助理解当前帧的内容;在文本中,可以用前面半句话的内容来预测后面的内容。但是, RNN 存在一个记忆消失的问题。例如,“苹果很好吃所以我想吃XX”(这里使用RNN 网络  来预测XX 位置应该填入什么词汇符合逻辑)。这个XX就是提到的“苹果”,RNN 处理这 样的短句子还没问题;“我很喜欢吃苹果,今早上学碰到卖水果的王大妈,热情的大妈给了 我一个XX”。这时候,XX可能是“水果”而不是“苹果”,因为“苹果”与XX 的距离太远了。 通俗来讲,RNN 的记性不太好,只有7秒的记忆,太远的内容记不清。这样的问题称为短时记忆(Short-Term   Memory)

        RNN 理论上可以解决这样的问题,但是需要大量的调参,需要耗费大量时间,所以出现 了长短期记忆网络(Long  Short-Term  Memory  networks,LSTM)这个特殊的 RNN 结构LSTM 中这个网络状态在每一个时刻都会进行3个操作,专业一点的名词称为3个门: 忘记门、输入门和输出门。

(1)忘记门。上一个时刻的状态(记忆)保留到这个时刻,首先要删除一部分内容, 可能是因为遗忘,也可能是因为那部分记忆无用,总之一个人不能什么都记得住。

(2)输入门。忘记了之后,这一个时刻的输入应该会给这个细胞状态增添一些新的记忆。

(3)输出门。过去的信息该忘记的忘记了,现在的信息该记住的记住了,把剩下的状态(记忆)作为这个时刻的输出,也作为下一个时刻的初始状态。

LSTM  整个流程:在每一个时刻,通过某些计算,忘记一些东西,记住一些新的东西,输 出结果

LSTM   每一个模块需要前一个时刻的输出信息y₁-1   和前一个时刻的细胞状态 C₁-1, 这样来构成循环。

        在谈论 RNN 的时候,默认是使用LSTM 的,而只有说到Simple  RNN的时候,才是指 那种最原始最简单的RNN 结构。在所有使用LSTM 的论文中,基本上都是与上述的LSTM 有微小的改变,所以到目前为止,基本有上百种不同的LSTM  结构,不过 Google之前做过研究发现,这些不同的LSTM,并没有什么不同。

2.GRU

        GRU LSTM 一样 是为了解决短期问题和梯度消失问题提出来的。GRU可以看作LSTM 的 简化版本,计算更少,效果不减。GRU之所以参数少,因为GRU只有两 个门:更新门和重置门。不管LSTM 还是GRU  有多么复杂,其实也就是一行代码就可以构建完成的

3.注意力机制

        什么是注意力机制?注意力机制其实就是基于人的注意力机制诞生的,比方说,在观察一个  人类的照片的时候,会更加注意人的脸部;在观察一个句子的时候,更多注意力会放在谓语动词上。Encoder 编码器就是把原始数据编码成一个更能体现其本质特征的编码(编码的具体 形式可能是一串向量),Decoder解码器就是把这个本质特征解码成一个新的数据。

         Attention 结构:这个 Attention 就是一种附加在输入信息上的一个权重,在Decoder 输出的时候, Attention 机制会给每一个输入都加一个权重,例如:(我,0.6)(喜,0.1)(欢,0.1)(你, 0.2)。所以在Decoder 进行每一次翻译的时候,都会分配给不同的输入一个注意力权重。

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值