python - keras model.fit 函数打印的准确率与验证集或训练集有关吗?
问题描述
我正在使用 tf.Keras 训练一个 CNN 模型,我将训练集分为训练集和验证集,我想可视化验证集的准确性。
这是代码,所以请告诉我打印的准确性是否与训练集或验证集有关?
model.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy'])
model.fit( x= X_train.reshape(X_train.shape[0],280,252,1),
y= train_Y_one_hot,
epochs=20,
batch_size=64,
validation_data=(X_val.reshape(X_val.shape[0],280,252,1),val_Y_one_hot),
verbose=1)
输出:训练 103658 个样本,验证 25915 个样本 Epoch 1/20 28288/103658 [=======>.......] - ETA:40:01 - 损失:0.5309 - 准确度:0.9063
解决方案
如果您想将准确性可视化为一个图,您可以获得每个时期的验证精度和损失列表,如下所示(我只运行了 5 个时期,所以我得到每个val_accuracy
和5 个值val_loss
)
model.fit(x_train, y_train, epochs=5,validation_data=(x_test,y_test))
model.evaluate(x_test, y_test)
# access validation accuracy for each epoch
acc = model.history.history['val_accuracy']
print(acc) # [0.9573, 0.9696, 0.9754, 0.9762, 0.9784]
# access validation loss for each epoch
loss_val = model.history.history['val_loss']
print(loss_val) # [0.13892182569280268, 0.10223265058882534, 0.08262962606661022, 0.08026109958332964, 0.07378015918848105]
推荐阅读
- java - GUI 设计器未在 IntelliJ 上运行
- python - 在 Python 中检查数据验证
- selenium - Selenium 使用 css 访问文本
- javascript - window.location.href 没有重定向 html 页面
- python - 如何将df与熊猫中的重复键合并在一起
- python - 如何获取 API TWS 时间和销售数据
- c++ - 如何取消引用多维向量指针?
- python - 尝试使用数组在python中绘制三角函数
- c# - ASP.NET Core 3.1:如何路由到子文件夹中的控制器
- python - 在python中使用forloop求解耦合微分方程