keras 如何获得双向GRU的序列、隐藏状态和单元状态?

7gyucuyw  于 2022-11-13  发布在  其他
关注(0)|答案(1)|浏览(454)
encoder_gru = Bidirectional(GRU(nb_gru_cells,return_sequences=True, return_state=True))
encoder_outputs, encoder_state_fwd_h, encoder_state_fwd_c, encoder_state_bwd_h, encoder_state_bwd_c = encoder_gru1(encoder_inputs)

ValueError:没有足够的值来解包(应为5个,实际为3个)
为什么它只有3个?它内部连接向前和向后状态吗?那么它是输出,fwd_h,bwd_h还是输出,隐藏状态,单元状态?

ybzsozfc

ybzsozfc1#

LSTM在输出端有三个值(输出、隐藏和单元),而GRU在输出端有两个值(输出和隐藏)。GRU中没有单元状态,因此应从代码中删除前向和后向单元状态。

encoder_gru = Bidirectional(GRU(nb_gru_cells,return_sequences=True, return_state=True))
encoder_outputs, encoder_state_fwd_h, encoder_state_bkw_h = encoder_gru(encoder_inputs)

相关问题