繁体   English   中英

Tensorflow 中的可微操作列表

[英]List of Differentiable Ops in Tensorflow

是否有可微分的 Tensorflow 操作主列表(即,会自动微分)?

其他两种表达方式:

  • 未设置ops.NoGradient的操作列表。
  • 不会触发LookupError的操作列表。

例如,我假设所有控制流操作都是不可微的(例如, tf.where )。 除了通过tf.gradients手动运行它们以查看它们是否抛出LookupError之外,我如何找到它。

“常识”不是一个有效的答案。

谢谢。

编辑:

tf.where是可微的,所以我的直觉是错误的。 也许这里的正确问题是 Tensorflow 中的哪些操作是不可微的。

谢谢。

我使用 python 代码设计了完整的可微分和不可微分操作列表。

您将在此处找到精简列表。 还有生成它的代码。

https://github.com/Mainak431/List-of-Differentiable--OPs-and-Non-differentiable-OPs--in-Tensorflow

不,没有列表(您可以是第一个创建它的人)。 另外据我所知,每个函数的文档也没有告诉它( tf.size是不可微的,但没有告诉它)。

除了您建议的方式之外,您还可以从源代码中提取此数据。 例如,所有实现了渐变的操作,在方法声明前都有@ops.RegisterGradient 对于没有梯度的操作,你将有ops.NotDifferentiable(

不相关,但可能有帮助

对于 TensorFlow 2,似乎tf.raw_ops模块文档中提供了这样的列表。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM