반응형
개발환경
- google colab
1. Problem
tensorflow keras를 사용하면서 optimizer를 custom에서 사용하고 학습한 모델을 'h5' 형태로 저장한 후
다시 load할 때 해당 에러가 발생했다.
2. Reason
tensorflow keras는 'h5' 형태로 모델을 저장할때
기존 라이브러리에 있는 optimizer나 activation function만 저장되기 때문
그렇기 때문에 custom해서 사용한 optimizer는 저장되지 않음
3. Solution
모델을 load 할 때 custom_objects key값에 optimizer name 그리고 value에 custom optimizer를 넣음
model = tf.keras.models.load_model('./CNN-checkpoint.h5', custom_objects = {"AdaBeliefOptimizer":AdaBeliefOptimizer})
optimizer뿐만 아니라 activation function도 마찬가지로 똑같은 방법으로 해결가능하다.
반응형
댓글