大家好,又见面了,我是你们的朋友全栈君。
为什么用双向 RNN?
单向的 RNN,是根据前面的信息推出后面的,但有时候只看前面的词是不够的,
例如,我今天不舒服,我打算____一天。
只根据‘不舒服‘,可能推出我打算‘去医院‘,‘睡觉‘,‘请假‘等等,但如果加上后面的‘一天‘,能选择的范围就变小了,‘去医院‘这种就不能选了,而‘请假‘‘休息‘之类的被选择概率就会更大。
什么是双向 LSTM?
双向卷积神经网络的隐藏层要保存两个值, A 参与正向计算, A’ 参与反向计算。
最终的输出值 y 取决于 A 和 A’:即正向计算时,隐藏层的 s_t 与 s_t-1 有关;反向计算时,隐藏层的 s_t 与 s_t+1 有关:
在某些任务中,双向的 lstm 要比单向的 lstm 的表现要好:
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/150452.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...