Использование собственного оптимизатора в Keras после загрузки модели - PullRequest
0 голосов
/ 19 сентября 2018

Я хотел бы использовать AdamW optimizer в keras для NN обучения, в соответствии с: https://github.com/GLambard/AdamW_Keras

Я импортирую его, и код, кажется, работает так, как рекламируется.К сожалению, когда я загружаю сохраненную контрольную точку, я получаю сообщение об ошибке:

file "ResUNET.py", line 209, in <module>
'peteLoss': mc.peteLoss, 'iou_one_Metric': mc.iou_one_Metric, 'adamw': adamw})
File "/home/pete/anaconda3/lib/python3.6/site-packages/keras/engine/saving.py", line 276, in load_model
custom_objects=custom_objects)
File "/home/pete/anaconda3/lib/python3.6/site-packages/keras/optimizers.py", line 760, in deserialize
printable_module_name='optimizer')
File "/home/pete/anaconda3/lib/python3.6/site-packages/keras/utils/generic_utils.py", line 138, in deserialize_keras_object
': ' + class_name)
ValueError: Unknown optimizer: AdamW

Я передаю пользовательский объект в соответствии с:

model = load_model(save_model_name,custom_objects={
   'my_iou_metric': mc.my_iou_metric, 
   'my_iou_metric_2': mc.my_iou_metric_2,
   'lovasz_loss': mc.lovasz_loss, 
   'peteLoss': mc.peteLoss, 
   'iou_one_Metric': mc.iou_one_Metric,
   'adamw': adamw})

Это работает для потерь и т. Д., Но не дляоптимизатор.

...