当损失函数是自定义函数时,将MSE绘制在时期上

时间:2018-05-28 09:56:45

标签: keras loss loss-function mse

我使用自定义丢失功能,并希望在时代内绘制MSE(我使用Keras库)。这是我用来拟合我的神经网络并保存历史的代码。

model.compile(loss =new_loss2, metrics=['mse'], optimizer=opt)
hist = model3.fit(X_train, y_train, batch_size=32, shuffle=False, epochs=epochs, validation_split=0.15, callbacks = callbackz)

当我尝试使用绘图功能

绘制MSE时
plt.plot(hist.history['mse'])

我收到此错误

Traceback (most recent call last):
  File "D:\Keras1 (1).py", line 150, in <module>
    plt.plot(hist.history['mse'])
KeyError: 'mse'

如何以正确的方式绘制?

1 个答案:

答案 0 :(得分:1)

不知何故,指标由history字典中的扩展名称引用。 hist.history['mean_squared_error']应该有用。

注意:如果名称差异困扰您,则在编译模型时也可以使用扩展名称,即model.compile(loss=new_loss2, metrics=['mean_squared_error'], ...)