Python 用训练模型理解图的问题

Python 用训练模型理解图的问题,python,matplotlib,machine-learning,keras,cnn,Python,Matplotlib,Machine Learning,Keras,Cnn,我在学习机器学习。我在3层CNN上训练了2节课。我得到的结果是: Epoch 50/50 46/46 [==============================] - 209s 5s/step - loss: 0.3725 - accuracy: 0.8489 - val_loss: 0.3060 - val_accuracy: 0.8000 先生,我试图通过历史来描绘,得到了这两张图表。有人能解释一下这些图表解释了什么吗?如果有问题,我应该怎么做才能将其最小化。多谢各位 import

我在学习机器学习。我在3层CNN上训练了2节课。我得到的结果是:

Epoch 50/50

46/46 [==============================] - 209s 5s/step - loss: 0.3725 - accuracy: 0.8489 - val_loss: 0.3060 - val_accuracy: 0.8000 
先生,我试图通过历史来描绘,得到了这两张图表。有人能解释一下这些图表解释了什么吗?如果有问题,我应该怎么做才能将其最小化。多谢各位

import matplotlib.pyplot as plt


print(history.history.keys())
# summarize history for accuracy
plt.plot(history.history['accuracy'])
plt.plot(history.history['val_accuracy'])
plt.title('model accuracy')
plt.ylabel('accuracy')
plt.xlabel('epoch')
plt.legend(['train', 'test'], loc='upper left')
plt.show()
# summarize history for loss
plt.plot(history.history['loss'])
plt.plot(history.history['val_loss'])
plt.title('model loss')
plt.ylabel('loss')
plt.xlabel('epoch')
plt.legend(['train', 'test'], loc='upper left')
plt.show()

它向您展示了模型的演变图

在培训期间,保留一部分培训数据以供验证。这意味着在训练每个历元时,将使用保留的验证数据评估模型的状态。因此,两个图都显示了值​​在acc和损失中获得


从先验上看,训练似乎还不够,因为当达到50个纪元时,曲线似乎都没有变平。一个选择是增加纪元的数量。另一个是使模型更快地达到“最佳解决方案”,为此,您可以使用更强大的优化器,如ADAM或RMSprop。

先生,感谢您的指导。先生,我已经在用亚当了。主席先生,我想知道为何该模型已达80%的准确率,但却未经良好训练。先生,你能解释一下模型损耗是什么吗?@MirzaMunib你是说通过测试集获得的acc,对吗?您可以尝试将历代数从50增加到100,看看是否有所改进。如果你指出你正在处理的数据类型,我可以试着更好地帮助你。先生,我有一个macrscopic木材样本的数据集。它由每种1000张图片组成。你正在训练的模型的具体架构是什么?数据的特点是什么?先生,你能给我发电子邮件或其他社交网站链接吗?这样我们就可以在那里交谈了。我可以给你发照片