请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

为何双向循环神经网络的return_sequences=False时,参数量依旧不变?

图片描述

请教老师,我的理解是如果return_sequences=False,即图中篮圈中的3个y被删去,仅留最右侧一个。那么红圈标出的权重就没有更新的意义了。
这样的话,为何return_sequences=False和True,参数量不变呢?(即tf为何在return_sequences=False时,model.summary()依旧会保留红圈的权重呢?)

  • Update:
  1. return_sequence = True时参数量与return_sequence = False时一样.
    图片描述

  2. return_sequence = False
    图片描述

正在回答 回答被采纳积分+3

1回答

正十七 2019-10-15 19:33:17

同学你好,红圈的部分代表的是双向LSTM中的逆向LSTM, return_sequences所控制的是你蓝线圈出来的东西。所以return_sequences = True或False, 不会影响红线圈出来的东西。

另外,我理解,双向LSTM应该会比单向LSTM多出LSTM部分的参数量(word embedding和输出的矩阵是共享的),你的return_sequences=True|False时参数量一样是如何判断的呢?

0 回复 有任何疑惑可以回复我~
  • 提问者 OliverSong #1
    老师我在提问中更新了一个Update,截图中return_sequences=True|False时参数量是一样的。请教老师为何呢?
    回复 有任何疑惑可以回复我~ 2019-10-15 22:00:50
  • 正十七 回复 提问者 OliverSong #2
    因为虽然输出是序列,但是参数都是共享的,所有类型的rnn,他们在每一步的参数都是一样的。
    回复 有任何疑惑可以回复我~ 2019-10-17 23:07:44
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信