फोन करने के बाद फिट समारोह में मैं देख सकते हैं कि मॉडल है converging में प्रशिक्षण के बाद लेकिन मैं जाने के लिए कॉल का मूल्यांकन विधि का यह कार्य करता है के रूप में, तो मॉडल ने नहीं किया फिटिंग सब पर. सबसे अच्छा उदाहरण नीचे है, जहां मैं का उपयोग प्रशिक्षण जनरेटर के लिए ट्रेन और सत्यापन और अलग अलग परिणाम प्राप्त.
import tensorflow as tf
from tensorflow.keras.callbacks import ModelCheckpoint
from ImageGenerator import ImageGenerator
if __name__== "__main__":
batch_size=64
train_gen = ImageGenerator('synthetic3/train/open/*.png', 'synthetic3/train/closed/*.png', batch_size=batch_size)
model = tf.keras.applications.mobilenet_v2.MobileNetV2(weights=None, classes=2, input_shape=(256, 256, 3))
model.compile(optimizer='adam',
loss=tf.keras.losses.CategoricalCrossentropy(),
metrics=['accuracy'])
history = model.fit(
train_gen,
validation_data=train_gen,
epochs=5,
verbose=1
)
model.evaluate(train_gen)
परिणाम
Epoch 1/5
19/19 [==============================] - 11s 600ms/step - loss: 0.7707 - accuracy: 0.5016 - val_loss: 0.6932 - val_accuracy: 0.5016
Epoch 2/5
19/19 [==============================] - 10s 533ms/step - loss: 0.6991 - accuracy: 0.5855 - val_loss: 0.6935 - val_accuracy: 0.4975
Epoch 3/5
19/19 [==============================] - 10s 509ms/step - loss: 0.6213 - accuracy: 0.6637 - val_loss: 0.6932 - val_accuracy: 0.4992
Epoch 4/5
19/19 [==============================] - 10s 514ms/step - loss: 0.4407 - accuracy: 0.8158 - val_loss: 0.6934 - val_accuracy: 0.5008
Epoch 5/5
19/19 [==============================] - 10s 504ms/step - loss: 0.3200 - accuracy: 0.8643 - val_loss: 0.6949 - val_accuracy: 0.5000
19/19 [==============================] - 3s 159ms/step - loss: 0.6953 - accuracy: 0.4967
इस समस्याग्रस्त है, क्योंकि यहां तक कि बचाने के लिए जब यह वजन बचाता है के रूप में, तो मॉडल ने नहीं किया है ।