본문 바로가기
딥러닝

Keras로 모델 저장, 불러오기

by 초특급하품 2019. 11. 16.

열심히 학습시킨 모델이 있다면 매번 다시 할 필요 없이 파일로 모델 정보를 저장할 수 있다. 모델 정보란 layer와 파라미터(가중치), 학습에 필요한 optimzer 등이 있다. keras에서는 대용량 데이터에 용이한 hdf5 포맷으로 이를 지원한다.

 

모델의 네트워크 구성

저장하기

model_json = model.to_json()
with open('model.json', 'w') as json_file :
    json_file.write(model_json)

불러오기

from keras.models import model_from_json

with open('model.json', 'r') as file :
    model_json = file.read()
    model = model_from_json(model_json)

 

모델의 네트워크 가중치 저장

저장하기

model.save_weights('weight.h5')

불러오기

model.load_weights('weight.h5')

 

위 두가지를 사용해서 모델을 복구할 수 있지만 현재 상태만 알 수 있을 뿐 optimzer를 포함한 compile 단계는 다시 거쳐야 한다. 이 전부를 포함해서 저장/복구하는 방법도 있다.

 

전부 (모델 구조, 가중치, 옵티마이저 등등)

저장하기

model.save('model.h5')

불러오기

from keras.models import load_model

model = load_model('model.h5')

'딥러닝' 카테고리의 다른 글

딥러닝에 사용하는 확률분포 함수  (0) 2020.03.30
Keras로 CartPole 강화학습  (0) 2019.12.08
Keras로 간단한 CNN 구현하기  (0) 2019.11.13
알파고의 몬테카를로 방법  (0) 2019.11.10
알파고의 강화학습  (0) 2019.11.03

댓글