【发布时间】:2016-10-11 18:15:17
【问题描述】:
在 Tensorflow 中,我想在下一个训练步骤中使用上一个训练步骤中我的网络的一些变量。更具体地说,我想在训练期间计算一个二级成本函数,该函数利用上一个训练步骤中的一些网络张量。
这个问题可以用 RNN 代码片段来回答,但我还不知道怎么做。我正在调查How can I feed last output y(t-1) as input for generating y(t) in tensorflow RNN? 和Tensorflow: How to pass output from previous time-step as input to next timestep 以及TensorFlow: Remember LSTM state for next batch (stateful LSTM)。
假设 h 是神经网络的最后一层,前面有几个层,例如:
h = tf.nn.relu(tf.matmul(h_previous,W_previous))
如何在训练期间处理样本后保留张量 h(例如,将其保存到 h_old),以便我可以在下一个训练步骤中使用它进行如下计算:
d = tf.sub(h,h_old)
在这个例子中,h 用当前训练样本更新,h_old 是在前一个训练样本上计算的张量。这个问题的一些想法会很棒!
【问题讨论】:
标签: python tensorflow recurrent-neural-network