好了,我还在努力学习巨蟒呢。现在我将使用EfficientNet模型来检测棕榈油的成熟度。我使用的是5852训练图片,分为4个班(1463张/班),132张测试图(33张/班)。经过200次的测试,结果远远不是很好。有什么解决方案可以让我改进结果吗?这是我的模型精度和模型损失的结果。
这是我的代码
https://colab.research.google.com/drive/18AtIP7aOycHPDR84PuQ7iS8aYUdclZIe?usp=sharing
你的帮助对我意义重大。
发布于 2021-11-07 15:57:26
您在生成器中进行了重新缩放,这可能是问题的根源。
Efficientnet的Tensorflow实现已经包含了重缩放层,所以你不能在你的ImageDataGenerator中重缩放图像。您可以通过.summary()方法进行检查。
官方文件说:
注意:每个Keras应用程序都需要一种特定的输入预处理。对于EfficientNet,输入预处理是模型的一部分(作为重缩放层),因此tf.keras.applications.efficientnet.preprocess_input实际上是一个传递函数。EfficientNet模型期望它们的输入是值在0-255范围内的像素的浮点型张量
例如,Resnets没有这个层,在将图像提供给模型之前,您应该重新调整图像的比例。要记住来自tf.keras.applications的每个网络的这些东西是很棘手的,所以我建议在使用新模型之前只检查它们。
https://stackoverflow.com/questions/69685414
复制相似问题