TensorFlow 2.0:在每个函数之上都需要一个@ tf.function装饰器吗?

时间:2019-03-13 18:32:43

标签: python tensorflow tensorflow2.0

在TensorFlow 2.0(现在仍为Alpha版)中,我知道您可以使用装饰器@tf.function来将纯Python代码转换为图形。 每当我需要时,是否必须在每个函数的顶部放置@tf.function@tf.function是否仅考虑以下功能块?

2 个答案:

答案 0 :(得分:2)

装饰器@ tf.function立即应用于紧随其后的功能块时,其调用的所有函数也将在图形模式下执行。请参见Effective TF2 guide的内容:

  

在TensorFlow 2.0中,用户应将其代码重构为较小的函数,并根据需要调用这些函数。通常,没有必要用tf.function装饰每个较小的功能;仅使用tf.function装饰高级计算-例如,训练的一个步骤或模型的向前传递。

答案 1 :(得分:1)

png将Python函数转换为其图形表示形式。

要遵循的模式是定义训练步骤函数(这是计算量最大的函数),并用svg装饰它。

通常,代码如下:

images/**/*.{png,svg}