NLP学习笔记六-lstm模型

news/2025/3/14 1:53:51/

NLP学习笔记六-lstm模型

上一篇我们讲的是simple RNN模型,那么其实lstm模型更像是simple RNN模型的改进或者变种。

对于lstm模型,我们先看下面一张图:

在这里插入图片描述

其实lstm模型的思想是建立在simple RNN模型上的,但是要更加贴近于显示,lstm模型认为,对于这种序列型的数据虽然simple RNN模型可以进行这种“信息记忆”,即simple RNN模型可以通过每次将上一个单元的输出利用起来,即当前单元的输出会考虑之前的输出。但是,他认为之前的有些信息是不需要的,所以加入了遗忘门,同时也认为当前输入x与上一个状态 h t h_t ht经过参数矩阵提取之后有些信息也是不需要的,所以又加入了输入门。

这里大家看一下上面的公式 f t f_t ft就是遗忘向量,它乘以上一个状态的输出就是对上一个状态的输出进行遗忘,有些信息就不要了,有些信息保存下来,所以 f t f_t ft在得到之前得到了一个sigmoid函数的处理,使得 f t f_t ft的值都在0-1之间,0-1即使 c t − 1 c_{t-1} ct1的遗忘程度。
那么 i t i_t it就是输入向量, c t / c^{/}_t ct/就是当前单元的输出, c t / c^{/}_t ct/就是对应simple RNN的 h t h_t ht。所以lstm模型它呢其实更加的注重之前信息的重要性相比较simple RNN模型。因为它无论遗忘向量 f t f_t ft还是输入向量 i t i_t it,还是 c t / c^{/}_t ct/都是由前一个单元的输出和当前单元输入拼接组成的向量乘以参数矩阵得到的,在最后呢, c t c_t ct又是前一个单元输出和当前单元的输出加权组合而成,其实在这个过程当中,我们可以发现 c t − 1 c_{t-1} ct1相比x输入被利用到的程度更高。也就是,我们更加注重之前信息的一个处理。

下面是遗忘向量的得到过程:

在这里插入图片描述
下面是输入向量的得到过程:

在这里插入图片描述

其实输入向量和遗忘向量得到的方法是一样的哈。

下面是当前单元new value的情况:
其实 c t / c^{/}_t ct/不是就RNN模型中的 h t h_t ht吗?
哈哈哈,如果你理解了c^{/}_t 和 R N N 模型中的 和RNN模型中的 RNN模型中的h_t$的关系其实会帮助你理解lstm模型。

在这里插入图片描述

最后我们还需要一个输出门,也就是对于当前转 c t c_t ct再进行一次限制转换,其实博主觉得,lstm模型看起来过于冗余,它一次又一次的对数据进行遗忘或者进行限制。先是对上一个状态的 c t − 1 c_{t-1} ct1进行一次遗忘门处理,然后又再次对 c t / c^{/}_t ct/进行了一次输入门处理,其实说是输入门处理,实际上也是遗忘门处理,这里大家看懂的话会理解的,最后又对 c t / c^{/}_t ct/ c t − 1 c_{t-1} ct1的加权结果有进行一次输出门处理,其实这个输出们处理也是遗忘门处理。
当然这要多亏了BP反向传播算法,否则这些想法都只是猜想。
下面是输出门的实现过程:

在这里插入图片描述

现在我们再来看看lstm,模型,我们可以发现,其实lstm模型,加入了很多限制,也就是它其实并没有去增强信息,而是不断地在遗忘信息,输入门、遗忘门、输出门起到的其实都是遗忘作用,另外lstm模型输入门、遗忘门、输出门的遗忘效果都是由上一个单元的输出和当前单元的输入共同决定的。然后,利用上一个单元的 c t − 1 c_{t-1} ct1和当前单元的 c t / c^{/}_t ct/加权组成当前单元主要的信息向量。也就是说是否进行遗忘,在lstm模型中,更加取决于,上一个状态的输出 h t h_t ht和当前状态的输入x。然后再次基础上考虑上一个单元的 c t − 1 c_{t-1} ct1和当前单元的 c t / c^{/}_t ct/经过输入门,遗忘门处理之后的加权结果。
我认为其实lstm模型是有问题的:
看下面一张图, c t c_t ct的遗忘由上一个状态的输出 h t h_t ht和当前状态的输入x决定,而 c t − 1 c_{t-1} ct1也由上一个状态的输出 h t h_t ht和当前状态的输入x决定,但是我们知道 c t − 1 c_{t-1} ct1是由上一个状态的输出 h t h_t ht和当前状态的输入x得到的,自己得到自己,再对自己进行遗忘,这有没有问题。然后 f t f_t ft确是由上一个状态的输出 h t h_t ht和当前状态的输入x得到的,但 c t c_t ct只是由之前状态决定的,也就是由由上一个状态的输出 h t h_t ht和当前状态的输入x决定之前信息的遗忘,其实对于信息的遗忘,我认为lstm模型或许还有待完善的地方,或许,我们的遗忘策略可以更加完善。当前信息遗忘可以由之前信息和当前输入共同决定,之前信息的遗忘也由之前信息和当前输入共同决定,而不是自己决定自己的遗忘。

在这里插入图片描述


http://www.ppmy.cn/news/290295.html

相关文章

软件黑盒测试心得与经验

黑盒测试常见错误类型及说明 1、用户界面错误 功能性 易用性(用户学习使用程序的时间和记住怎样使用程序的时间) 执行速度(多数是启动速度,查询速度,刷新速度及响应速度等) 用户使用时产生错误的比率&#…

在电脑壁纸上HTML时钟壁纸,在电脑的桌面上怎么添加可爱的小钟表?

我们每一天都需要看时间,看日历。每天很多小伙伴都在电脑旁工作,如果能在自己的电脑桌面上添加上时钟、日历这些小工具,那么,我们就可以随时知道时间日期了。那么在电脑的桌面上怎么添加可爱的小钟表?下面小编就为大家详细介绍一…

炮炮兵可爱桌面壁纸 高清

炮炮兵可爱桌面壁纸 高清:由33la主题中国选取热门卡通,炮炮兵是2007年11月出现在网络上的一系列幽默可爱的表情。幽默可爱的炮炮兵深受网民朋友的喜欢,通过qq/msn等等途径的传播已经红遍了网络各个角落。该表情能充分体现出小炮炮兵的可爱之处…

桌面壁纸被计算机管理员禁用,更改桌面背景时显示已经被系统管理员禁用,这种情况要怎么处理...

xp,win7更改桌面背景方法差不多。 右击鼠标--个性化,选择一个主题,或者自己制作,用几个喜欢的图片。或者“联机获得更多主题”,下载,然后双击安装。 如果发现被管理员禁用: 右击“我的电脑”&am…

html5高仿mac桌面,WinDynamicDesktop(高仿macOS动态壁纸)

WinDynamicDesktop是一款动态壁纸软件,高仿mac os动态壁纸,让你在win系统中也有mac的体验,并且可以为win10添加可随地点、时间变换光线的壁纸,非常的智能化,需要的朋友赶紧来下载试试吧! 软件介绍 WinDynam…

桌面壁纸被计算机管理员禁用,电脑壁纸被管理员设置禁用了,怎么处理啊?

xp,win7更改桌面背景方法差不多。 右击鼠标--个性化,选择一个主题,或者自己制作,用几个喜欢的图片。或者“联机获得更多主题”,下载,然后双击安装。 如果发现被管理员禁用: 右击“我的电脑”&am…

计算机桌面壁纸怎么来回换,我的电脑为什么在总是自动换桌面壁纸???

设置背景:[在桌面上点击鼠标右键]-[在弹出的快捷菜单中选择\属性\]-[出现\显示属性\设置界面]-[选择\背景\选项卡]-[在\选择图片\文字下的下拉列表框中选择\居中\]-[最后点击\确定\]-[OK] 图标有蓝色阴影的解决方法:桌面-右键属性-Web-把在活动桌面上显示…

南京邮电大学壁纸计算机院,立夏 | 一大波夏日壁纸放送

“斗指东南,维为立夏,万物至此皆长大,故名立夏也。” ——《历书》 万物繁茂,雨水丰沛,炎暑将临。 立夏,夏天的第一个节气,标志着春天的结束,夏天的开始。 小柚子们准备好过夏天了吗…