gpt4 book ai didi

python - Tensorflow:修改隐藏状态的计算

转载 作者:行者123 更新时间:2023-12-01 03:22:41 25 4
gpt4 key购买 nike

我想稍微修改 LSTM 每个时间步计算的隐藏状态(并因此重新输入)。例如,将一个常量向量添加到由常规 LSTM 过程生成的隐藏状态这样简单。我不打算修改常规的门机制——我更多地将其视为对通常由 LSTM 创建的最终隐藏状态的计算。我觉得创建自己的 LSTM 单元有点过头了。或者,OutputProjectionWrapper 似乎可以实现这个目标,尽管我不打算创建新的输出,只是修改隐藏状态。

最佳答案

如果您使用 for 循环处理序列,则可以在时间步之间修改 LSTM 的状态,因为 TensorFlow 中的 RNN 单元采用两个参数:新输入和隐藏状态:

lstm = rnn_cell.BasicLSTMCell(lstm_size)

initial_state = state = tf.zeros([batch_size, lstm.state_size])

with tf.variable_scope("RNN"):
for time_step in range(num_steps):
if time_step > 0: tf.get_variable_scope().reuse_variables()

# modify the state
modified_state = state + 1

output, state = lstm(words[:, i], modified_state)


final_state = state

关于python - Tensorflow:修改隐藏状态的计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41774190/

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