我想使用自定义损失函数训练模型,为此,我需要在以下方法内将张量转换为numpy数组:
def median_loss_estimation(y_true, y_predicted):
a = y_predicted.numpy()
但是我有这个错误:
AttributeError: 'Tensor' object has no attribute 'numpy'
为什么? 如何将张量转换为numpy数组?
答案 0 :(得分:2)
答案是:将run_eagerly=True
放在model.compile
中!
答案 1 :(得分:1)
您做对了,目前在该方面只有Tensorflow 2.1被破坏了。如果在未启用快速模式的情况下运行代码,通常会发生这种情况。但是,默认情况下,Tensorflow 2在渴望模式下运行...至少应该如此。已跟踪问题here。
对此至少有两种解决方案:
model.run_eagerly = True
。