Tensorflow NN:自定义损耗和精度工作,MSE返回NaN

Tensorflow NN:自定义损耗和精度工作,MSE返回NaN,tensorflow,keras,deep-learning,Tensorflow,Keras,Deep Learning,我遇到了一个有点混乱的情况。我正在训练一个Tensorflow/Keras神经网络,它有一个自定义的损失函数和两个度量,MSE和精度。当对训练数据进行评估时,损失和精度返回数值,但MSE为NaN。我想知道这是否有可能的解释。谢谢。再次检查您的输入。输入可能有一些“非数字”值。请参阅: 或者快速测试: for value in values: print(f"{repr(value):<8} : {is_nan(value)}") 对于值中的值: 打印(f{re

我遇到了一个有点混乱的情况。我正在训练一个Tensorflow/Keras神经网络,它有一个自定义的损失函数和两个度量,MSE和精度。当对训练数据进行评估时,损失和精度返回数值,但MSE为NaN。我想知道这是否有可能的解释。谢谢。

再次检查您的输入。输入可能有一些“非数字”值。请参阅:

或者快速测试:

for value in values:
    print(f"{repr(value):<8} : {is_nan(value)}")
对于值中的值:

打印(f{repr(值):有趣-我会尝试这样做。谢谢!@Dammio这是怎么可能的?MSE表示错误^2的总和除以样本数。样本数始终大于0。我对我的答案做了一些修改,可能有一些答案不存在。我的建议:1-更改优化器2-检查输入中的NaN 3-规范化输入4-在t中目标检查标签是否正确(范围等)