小白都理解的人工智能系列(5)—— 长短期循环神经网络LSTM RNN NO4

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/taczeng/article/details/79181000

问题1:什么是LSTM RNN?


LSTM(Long Short-Term Memory)——意思是长短期记忆,LSTM RNN即长短期记忆循环神经网络。


问题2:传统RNN有什么弊端?

传统的循环神经网络(RNN)是有弊端的——无法进行长久记忆!

我们知道,循环神经网络是需要有记忆功能的。之前说到的都是短期记忆,为什么RNN无法进行长久记忆呢?看下图:

加入这句话中间省略了5000字,如果要理解X的输入,我们应该输出的是红烧排骨这道菜,但是红烧排骨这个关键信息是在这么长句子的最开头......


传统的RNN通过处理这么长的信息,很容易出现以下两个问题:

举个栗子,Alpha蚂蚁每次只能处理3个字,每次往前处理信息都要乘以1个大于或小于1的参数(统一的大于或小于),按照这个思路,就会出现以下两个问题——

比如最后三个字是“出锅了”,要追溯到“红烧排骨”,假如出锅了”是19.9,结果就是19.9*0.8*0.7*0.67......*0.2当乘以很多次之后,结果到了“红烧排骨”参数就接近于0了,这种称为梯度消失现象!再比如,19.9*1.01*1.12*......*1.32当乘以很多次之后,结果到了“红烧排骨”参数就接近于无穷大了,这种称为梯度爆炸现象

存在梯度消失现象(或者梯度弥散);


梯度爆炸现象;


LSTM RNN为了解决这些弊端而生。


问题3:LSTM RNN如何解决传统RNN的弊端的?

长短期记忆的循环神经网络,有两条线,一条主线,一条分线,一个忘记控制,一个输入,一个输出;主要通过忘记进行相关不重要信息的更新,把重要的信息替换到主线不重要的信息上去,这样就能时刻更新主线的关键信息,最后,输出端读取的是主线的信息!

举个栗子:随着Alpha蚂蚁 不断读取文本信息,前面的信息都作为分线剧情给到主线,比如一道菜给到主线,美味给到主线......但是这些并非主要信息,直到出现红烧排骨,这个时候,忘记继续进行更新,将主线更新为红烧排骨即可,最后实现关键信息的长期记忆!






猜你喜欢

转载自blog.csdn.net/taczeng/article/details/79181000