Визуализация модели
Keras предоставляет утилитные функции для построения модели Keras (с помощью graphviz).
При этом будет построен график модели и сохранен в файле:
from keras.utils import plot_model
plot_model(model, to_file=’model.png’)
plot_model принимает 4 опциональных аргументы:
- show_shapes (по умолчанию False) контролирует, отображаются ли выходные формы на графике.
- show_layer_names (по умолчанию — True) контролирует, отображаются ли имена слоев на графике.
- expand_nested (по умолчанию False) контролирует, нужно ли разворачивать вложенные модели на кластеры на графике.
- dpi (по умолчанию 96) управляет изображением dpi.
Вы также можете напрямую получить объект pydot.Graph и отрисовать его самостоятельно, например, чтобы показать его в ipython ноутбуке :
from IPython.display import SVGfrom keras.utils import model_to_dot
SVG(model_to_dot(model).create(prog=’dot’, format=’svg’))
Визуализация истории обучения
Метод fit() на модели Keras возвращает объект истории. Атрибут History.history представляет собой словарь, в котором записываются обучающие значения потерь и значения метрик в последующие эпохи, а также значения потерь при проверке и значения метрик проверки (если применимо). Вот простой пример использования matplotlib для генерации графиков потерь и точности для обучения и валидации:
import matplotlib.pyplot as plt
history = model.fit(x, y, validation_split=0.25, epochs=50, batch_size=16, verbose=1)
# Обучение и проверка точности значений
plt.plot(history.history[‘acc’])
plt.plot(history.history[‘val_acc’])
plt.title(‘Model accuracy’)
plt.ylabel(‘Accuracy’)
plt.xlabel(‘Epoch’)
plt.legend([‘Train’, ‘Test’], loc=’upper left’)
plt.show()
# Обучение и проверка величины потерь
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()