我想做的是在不同的机器上模拟反向传播过程,从一台机器上,我从layer3 d(layer3_output)/d(layer2_output)
得到梯度作为一个 numpy 数组,我怎样才能得到 d(layer3_output)/d(layer1_output)
有效地给出我收到并传递到上一层的梯度?
最佳答案
当您创建网络并附加一些损失时,您在优化器上调用最小化,优化器(在后台)调用“apply_gradients”。此函数将梯度计算操作添加到您的图中。现在您所要做的就是请求负责偏导数的操作,并通过 feed_dict 选项传递预先计算的偏导数。使用张量板可视化您的图形并研究您感兴趣的梯度名称。默认情况下,它们将位于“梯度”名称范围中,并且每个操作的命名将类似于您的操作,因此 gradient/output_op:0
行中的某些内容等等
关于python - 我可以在 tensorflow 中应用计算梯度吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40534098/