gpt4 book ai didi

tensorflow - 如何在 Keras 中使 LSTM 的初始状态可训练?

转载 作者:行者123 更新时间:2023-12-02 02:55:35 25 4
gpt4 key购买 nike

我在 Keras 工作,我有一个 LSTM,我指定了一个 intial_state=h0 .现在,我想要那个 h0成为可训练的变量。我怎样才能做到这一点?

A similar question was asked for TensorFlow ,但我确信在 Keras 中执行此操作的正确方法并不意味着 import keras.backend as K和黑客 Keras 类(class)。

目前,我丑陋的解决方案包括使用等于 0 的虚拟输入并学习初始状态作为 Dense 层的输出(= 层偏置,因为我给出了一个虚拟输入 = 0),输入由虚拟输入给出:

dummy_inp = Input((1,), name='dummy_inp')
dummy_inp_zero = Lambda(lambda t: t*0)(dummy_inp) # to ensure that the input=0
layer_h0 = Dense(dim_lstm_state, bias_initializer='zeros')
lstm_network = LSTM(n_units, bias_initializer='zeros', return_sequence=True)

h0 = layer_h0(dummy_inp_zero)

这有效,但它真的很难看。有没有什么优雅的方法来做到这一点?

预先感谢您的友好帮助!

最佳答案

可以在这里查看更多详细信息https://blog.keras.io/a-ten-minute-introduction-to-sequence-to-sequence-learning-in-keras.html

encoder_states = [state_h, state_c]

decoder_lstm = LSTM(latent_dim, return_sequences=True, return_state=True)
decoder_outputs, _, _ = decoder_lstm(decoder_inputs,
initial_state=encoder_states)

关于tensorflow - 如何在 Keras 中使 LSTM 的初始状态可训练?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49627383/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com