Скорость обучения является параметром оптимизатора модели и не включена в вывод model.summary()
.Если вы хотите найти значение скорости обучения, вы можете использовать атрибут optimizer
модели и использовать K.eval()
, чтобы оценить тензор скорости обучения и получить его фактическое значение:
print(K.eval(model.optimizer.lr))
Обновление: оптимизатор модели не сохраняется при использовании метода to_json
и, следовательно, вышеприведенное решение не работает.Если вы хотите сохранить всю модель, включая вес слоев и оптимизатор (вместе с ее состоянием), вы можете использовать метод save
:
model.save('my_model.h5')
Затем вы можете загрузить его, используя load_model
:
from keras.models import load_model
model = load_model('my_model.h5')
В качестве альтернативы, если вы использовали метод save_weights
(для сохранения весов слоев) вместе с методом to_json
(для сохранения только архитектуры модели)затем вы можете загрузить веса после загрузки модели, используя model_from_json
:
# load the architecture of model from json file ...
# load the weights
model.load_weights('model_weights.h5')
Однако оптимизатор в этом втором подходе не был сохранен, и поэтому вам необходимо перекомпилировать модель (обратите внимание, чтоэто означает, что состояние оптимизатора потеряно, и поэтому вы, возможно, не сможете легко продолжить обучение модели без предварительной настройки оптимизатора, однако это хорошо, если вы хотите использовать модель только для прогноз или переобучить модель с нуля ).
Я также настоятельно рекомендую прочитать соответствующий раздел в FAQ по Keras: Как сохранитьмодель Keras?