Зворотні виклики Keras

Вступ до Deep Learning з Keras

Miguel Esteban

Data Scientist & Founder

Що таке зворотний виклик?

Вступ до Deep Learning з Keras

Зворотні виклики в Keras

Вступ до Deep Learning з Keras

Зворотний виклик, якого бракувало

# Навчання моделі та збереження історії
history = model.fit(X_train, y_train,
                    epochs=100,
                    metrics=['accuracy'])

print(history.history['loss'])
[0.6753975939750672, ..., 0.3155936544282096]
print(history.history['accuracy'])
[0.7030952412741525, ..., 0.8604761900220599]
Вступ до Deep Learning з Keras

Зворотний виклик, якого бракувало

# Навчання моделі та збереження історії
history = model.fit(X_train, y_train,
                    epochs=100,
                    validation_data=(X_test, y_test),
                    metrics=['accuracy'])        

print(history.history['val_loss'])
[0.7753975939750672, ..., 0.4155936544282096]
print(history.history['val_accuracy'])
[0.6030952412741525, ..., 0.7604761900220599]
Вступ до Deep Learning з Keras

Графіки History

# Побудуйте графік точності train vs test по епохах
plt.figure()

# Використайте метрики з history 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']) plt.show()

Вступ до Deep Learning з Keras

Графіки History

Вступ до Deep Learning з Keras

Раннє зупинення

# Імпортуйте early stopping із keras.callbacks
from tensorflow.keras.callbacks import EarlyStopping

# Створіть callback early stopping early_stopping = EarlyStopping(monitor='val_loss', patience=5)
# Навчайте модель із цим callback model.fit(X_train, y_train, epochs=100, validation_data=(X_test, y_test), callbacks = [early_stopping])
Вступ до Deep Learning з Keras

Контрольна точка моделі

# Імпортуйте model checkpoint із keras.callbacks
from keras.callbacks import ModelCheckpoint

# Створіть callback збереження моделі model_save = ModelCheckpoint('best_model.hdf5', save_best_only=True)
# Навчайте модель із цим callback model.fit(X_train, y_train, epochs=100, validation_data=(X_test, y_test), callbacks = [model_save])
Вступ до Deep Learning з Keras

Давайте потренуємось!

Вступ до Deep Learning з Keras

Preparing Video For Download...