因此,我在文档(https://www.tensorflow.org/api_docs/python/tf/gradients)中读到了有关https://www.tensorflow.org/api_docs/python/tf/gradients()的内容,我有点困惑。
我看到有人说tf.gradients()的结果是
Ysw.r.t.和的
符号偏导数X字。
这也是我首先想到的。但是,文档描述了这个函数的一个可选参数如下:
stop_gradients是张量或张量列表,对于所有的xs都是常量。这些张量不会被反向传播,就好像它们已经使用stop_gradient显式断开了连接一样。除其他外,这允许计算偏导数,而不是总导数。
那么,如果我使用'stop_gradient‘来计算偏导数是否可能,否则在具有len(xs)的向量中返回的默认值是总导数吗?也许这只是我的误解,如果有人能详细说明这一点,我会非常感激的。
非常感谢!
发布于 2019-12-04 11:57:06
根据功能文档
...它返回一个长度张量(Xs)的列表,其中每个张量都是y在ys中的和(dy/dx)。
这正是你在第一部分中所说的-每个输出张量都是ys的总导数w.r.t的和。对应的x。
文献建议使用stop_gradients参数来计算偏导数,即为这个参数提供的张量在微分中被认为是常数。
https://stackoverflow.com/questions/59174710
复制相似问题