기계학습 모델을 저장하거나 전처리 모델을 저장해야할 때 자주 사용하는 저장 방법에 대해 정리하려합니다.
저는 2가지 방법을 같이 사용하고 있는데요
#1) joblib 이용
먼저 joblib 라이브러리를 이용하는 방법입니다.
# model save
import joblib
joblib.dump(model, 'model_210519.pkl')
해당 파일을 읽어 올 땐 다음과 같아요
model = joblib.load("model_210519.pkl")
#2) pickle 이용
두번째는 pickle 라이브러리를 이용하는 방법이예요
import pickle
with open('model_210519.pickle','wb') as fw:
pickle.dump(model, fw)
해당 파일을 읽어 올 땐
import pickle
with open('model_210519.pickle', 'rb') as f:
model = pickle.load(f)
주의할 점은 joblib을 이용하면 pickle라이브러리로 load가 안되고 반대도 마찬가지입니다!
그래서 한 번 사용하실 때 동일한 라이브러리를 이용해서 save와 load를 해야합니다.
여기서 개인적인 궁금증❓
.pkl가 pickle의 차이는 무엇일까요..피클 프로토콜의 차이라는데 어렵네요 ㅎㅎ
'즐거운, 즐겁게 > Pandas' 카테고리의 다른 글
DataFrame 특정 컬럼명 수정, 전체 컬럼명 수정하는 방법 (0) | 2021.05.23 |
---|---|
2개의 파이썬 리스트에 공통 원소 빼는 방법 (0) | 2021.05.23 |
주피터노트북, 주피터랩에서 DataFrame 컬럼 및 로우 범위 늘리기 (0) | 2021.05.19 |
Pandas를 이용한 Pivot Table 만들기 (0) | 2021.05.19 |
DataFrame의 컬럼의 그룹별 데이터 shift하는 방법 (0) | 2021.05.19 |