双向LSTM (BiLSTM) (双向RNN)

双向LSTM (BiLSTM) (双向RNN)为什么用双向LSTM?单向的RNN,是根据前面的信息推出后面的,但有时候只看前面的词是不够的,例如,我今天不舒服,我打算____一天。只根据‘不舒服‘,可能推出我打算‘去医院‘,‘睡觉‘,‘请假‘等等,但如果加上后面的‘一天‘,能选择的范围就变小了,‘去医院‘这种就不能选了,而‘请假‘‘休息‘之类的被选择概率就会更大。什么是双向LSTM?双向卷积神经网络的隐藏层要保存两个值,A参与正向计算,A’参与反向计算。最终的输出值y取决于A和A’:即正向..

大家好,又见面了,我是你们的朋友全栈君。

为什么用双向 RNN?

单向的 RNN,是根据前面的信息推出后面的,但有时候只看前面的词是不够的,
例如,

我今天不舒服,我打算____一天。

只根据‘不舒服‘,可能推出我打算‘去医院‘,‘睡觉‘,‘请假‘等等,但如果加上后面的‘一天‘,能选择的范围就变小了,‘去医院‘这种就不能选了,而‘请假‘‘休息‘之类的被选择概率就会更大。

什么是双向 LSTM?

双向卷积神经网络的隐藏层要保存两个值, A 参与正向计算, A’ 参与反向计算。
最终的输出值 y 取决于 A 和 A’:

双向LSTM (BiLSTM) (双向RNN)

即正向计算时,隐藏层的 s_t 与 s_t-1 有关;反向计算时,隐藏层的 s_t 与 s_t+1 有关:

双向LSTM (BiLSTM) (双向RNN)

在某些任务中,双向的 lstm 要比单向的 lstm 的表现要好:

双向LSTM (BiLSTM) (双向RNN)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150452.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号