0

亲爱的 StackOverflow 社区,我在 keras 中有以下损失函数:

return K.mean((y_true+K.epsilon()) * K.square(y_pred - y_true), axis=-1)

当我尝试用它训练我的网络(y 归一化为 0 - 1)时,损失似乎达到了一个负值,这是我无法理解的。我用 numpy 计算了同样的东西,一切都按预期工作正常。

如果有人知道这种奇怪的负面解决方案的原因,我会非常高兴,所以感谢您的帮助。

4

1 回答 1

1

如果y_true真的归一化为 0-1,那我看到的唯一可能原因是K.epsilon(). 由于此页面建议用户可以更改 epsilon,这可能会导致问题。

尝试硬编码 epsilon 值或将其丢弃。

于 2018-01-07T14:23:54.523 回答