Close

Сохранение модели нейронной сети

Продолжу серию статей по нейронным сетям и библиотеке keras. Сегодня я расскажу о том, как сохранять нейросетевую модель в файл и загружать ее из файла.
Keras предоставляет простой интерфейс для этого функционала. Модель сохраняется в json-файл с помощью метода to_json(), а загружается с помощью from json().

Сохраняем в файл:

Содержимое JSON файла для классификатора из этой статьи выглядит так:

{«loss»: «categorical_crossentropy», «optimizer»: {«beta_1»: 0.8999999761581421, «epsilon»: 1e-08, «beta_2»: 0.9990000128746033, «lr»: 0.0010000000474974513, «name»: «Adam»}, «class_name»: «Sequential», «keras_version»: «1.0.6», «config»: [{«class_name»: «Dense», «config»: {«W_constraint»: null, «b_constraint»: null, «name»: «dense_1», «output_dim»: 4, «activity_regularizer»: null, «trainable»: true, «init»: «normal», «bias»: true, «input_dtype»: «float32», «input_dim»: 4, «b_regularizer»: null, «W_regularizer»: null, «activation»: «relu», «batch_input_shape»: [null, 4]}}, {«class_name»: «Dropout», «config»: {«p»: 0.2, «trainable»: true, «name»: «dropout_1»}}, {«class_name»: «Dense», «config»: {«W_constraint»: null, «b_constraint»: null, «name»: «dense_2», «activity_regularizer»: null, «trainable»: true, «init»: «normal», «bias»: true, «input_dim»: null, «b_regularizer»: null, «W_regularizer»: null, «activation»: «sigmoid», «output_dim»: 3}}], «sample_weight_mode»: null}

Теперь мы можем загрузить модель из файла.

Далее мы можем проводить с переменной loaded_model все стандартные процедуры, обучать, прогнозировать, но сначала нужно вызвать ее метод compile.

В следующей статье я расскажу как сохранять рассчитанные веса модели в процессе обучения.

Поделиться: