Dataset flower được compile và fit bằng compile() và fit(). fit() nhận train_ds, validation_data=val_ds, và epochs.
Mã ví dụ
print("Đang biên dịch mô hình")
model.compile(
optimizer='adam',
loss=tf.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
print("Đang fit mô hình vào dữ liệu")
model.fit(
train_ds,
validation_data=val_ds,
epochs=3
)
Nguồn mã: TensorFlow Images Tutorial
Đầu ra huấn luyện
Đang biên dịch mô hình Đang fit mô hình vào dữ liệu Epoch 1/3 92/92 [==============================] - 107s 1s/step - loss: 1.3570 - accuracy: 0.4183 - val_loss: 1.0730 - val_accuracy: 0.5913 Epoch 2/3 92/92 [==============================] - 101s 1s/step - loss: 1.0185 - accuracy: 0.5927 - val_loss: 1.0041 - val_accuracy: 0.6199 Epoch 3/3 92/92 [==============================] - 95s 1s/step - loss: 0.8691 - accuracy: 0.6529 - val_loss: 0.9985 - val_accuracy: 0.6281 <tensorflow.python.keras.callbacks.History at 0x7f2cdcbbba90>
Giải thích
- Sau khi tạo layer và train dữ liệu, compile mô hình.
- Sau compile, fit mô hình vào dataset đầu vào.
- Validation accuracy thấp hơn training accuracy → mô hình overfitting.