我在哪里可以找到 Tensorflow(python API)中的反向传播(通过时间)代码?还是使用了其他算法?

例如,当我创建一个 LSTM 网络时。

最佳答案

TensorFlow 中的所有反向传播都是通过自动区分网络前向传播中的操作,并添加显式操作来计算网络中每个点的梯度来实现的。一般实现可以在 tf.gradients() 中找到,但使用的特定版本取决于你的 LSTM 是如何实现的:

  • 如果将 LSTM 实现为有限时间步长的展开循环,通常的方法是通过时间截断反向传播,它使用 tf.gradients() 中的算法在相反方向构建展开的反向传播循环。
  • 如果 LSTM 被实现为 tf.while_loop() ,它会使用额外的支持来区分 control_flow_grad.py 中的循环。
  • 关于python - Tensorflow 中的反向传播(通过时间)代码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36745266/

    10-11 09:29