我已经在tensorflow v2.0和v1.12.0(带有tf.enable_eager_execution()
)中进行了尝试。因此,很明显,如果我在numpy()
函数中使用下面显示的代码片段调用main()
,它会完美地工作。但是,如果我在估算器模型函数中使用它,即model_fn(features, labels, mode, params)
,则它会抱怨'Tensor' object has no attribute 'numpy'
。
ndarray = np.ones([3, 3])
tensor = tf.multiply(ndarray, 42)
print(tensor)
print(tensor.numpy())
还有其他人遇到过类似的问题吗?似乎对tf.estimator不重要吗?
答案 0 :(得分:3)
它不起作用。 Estimator API与图的构建有关,并且不完全支持渴望执行。根据官方文档。
在急切执行时,Estimate的调用方法将起作用 已启用。但是,model_fn和input_fn并不急于执行
https://www.tensorflow.org/api_docs/python/tf/estimator/Estimator
TF 2.0甚至不支持自定义估算器,仅支持预制估算器。