케라스에서 구현한 모델을 학습시키고, 그 결과를 어떻게 저장할지는 https://keras.io/getting-started/faq/#how-can-i-save-a-keras-model 링크를 따라가서 읽어보면 자세히 나와있다.
그런데 이전 글인 케라스(keras) 에서 leaky_relu 쓰기 에서와 같이 활성함수(activation function)을 리키 릴루를 쓰면, 학습된 모델은 저장이 잘 되지만, 불러오기에서 에러가 발생한다.
에러 메시지를 잘 살펴보면 ValueError: Unknown activation function:leaky_relu 라고 뜨며 리키 릴루가 뭔지 모른다고 한다.
모델 구조만 저장할 때 json 형식으로 저장할 수 있는데, json으로 저장한 모델 구조를 불러올 때도 역시 같은 에러가 뜨니, 모델 구조는 코드 자체로 저장하는 것이 안전하다.
오랜 시간 동안 비싼 자원 들여 학습한 모델은 가중치를 저장하는 것이 안전하다.
-> 핵심 1: 케라스로 만든 모델 구조는 코드로 보관할 것
-> 핵심 2: 케라스로 학습한 모델은 가중치(weight)를 파일로 저장할 것
모델을 코드로 저장했다고 가정하면, 가중치를 저장하는 방법은 아래 처럼 한다.
model.save_weights(filename)
불러올 때는
model.load_weights(filename)
'노트정리 > 머신러닝 machine leanring' 카테고리의 다른 글
허깅페이스 (huggingface) 모델 다운로드 받기 (1) | 2024.10.19 |
---|---|
리눅스 콘다 환경에서 GPU 를 사용하는 LightGBM 설치 (0) | 2021.10.28 |
케라스(keras) 에서 leaky_relu 쓰기 (0) | 2018.04.01 |