Python/DeepLearning
딥러닝 - 모델 Save, Load
하니__
2024. 4. 18. 14:30
1. 모델을 폴더로 저장하는 방법
model.save( 'my_model' )
1 - 2. 불러오기
my_model = tf.keras.models.load_model('my_model')
my_model.predict(X_test)
이상없이 작동된다
2. 파일로 저장하는 법
model.save('my_model.h5')
2 - 2. 불러오기
my_model2 = tf.keras.models.load_model('my_model.h5')
my_model2.predict(X_test)
이상 없이 작동 된다
3 . 가중치를 파일로 저장하는 법
len(model.get_weights())
4
model.save_weights('my_model_weights.h5')
3 - 2. 불러오기
my_model3 = tf.keras.models.load_model('my_model_weights.h5')
my_model3 = model.load_weights('my_model_weights.h5')
my_model3.predict(X_test)
위의 불러오기와는 다르게
이 메소드는 모델의 구조를 가져오지 않아
파일에 저장된 가중치와 편향 값만을 로드하기 때문에
깡통 상태인 my_model3는
우선적으로 모델 아키텍쳐 정의가 필요하다 그리고 추가적으로 가중치를 불러오는
load_weights 메소드를 사용하여 my_model_weights.h5에서 가중치를 로드
를 해야만 작동이 가능하다
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
my_model3 = Sequential([
Dense(128, input_shape=(28, 28), activation='relu'),
Dense(64, activation='relu'),
Dense(10, activation='softmax')
])
my_model3.load_weights('my_model_weights.h5')
my_model3.predict(X_test)