KeyError: ‘val_acc‘、 ‘val_accuracy‘、‘acc

由于Keras的版本问题 , 输入的代码''或者''会有所规范 。
一开始我想要输出训练模型的损失函数和准确度:(展示部分代码)
def print_history(history):# 绘制训练 & 验证的准确率值plt.plot(history.history['accuracy'])plt.plot(history.history['val_acc'])plt.plot(history.history['loss'])plt.plot(history.history['val_loss'])plt.title('Model accuracy&loss')plt.xlabel('Epoch')plt.legend(['Train_acc', 'Val_acc', 'Train_loss', 'Val_loss'])plt.show()
history = model.fit(x_train, y_train,epochs=20,batch_size=128)
print_history(history)
而系统却报错:

KeyError: ‘val_acc‘、 ‘val_accuracy‘、‘acc

文章插图
于是我把''改为'' , 但是同样报错:
也就是说无论是把''改为''还是把''改为'' , 都没有解决问题 。
解决方法就是:
看看有什么关键字 。以前Keras所对应含有的关键字不一定现在也有 。
KeyError: ‘val_acc‘、 ‘val_accuracy‘、‘acc

文章插图
输入代码:
print(..keys())
输出结果:
【KeyError: ‘val_acc‘、 ‘val_accuracy‘、‘acc】可见 , 关键字只含有loss和 。只要在上述的函数中做对应的更改 , 就可以输出损失函数和准确率了 。