-
sklearn 으로 학습한 모델을 파일로 저장하기머신러닝(+딥러닝) 2023. 8. 8. 15:15
sklearn 등을 통해 만든 모델을 파일로 저장해, 서비스에서 활용할 수 있어야 한다.
https://medium.com/analytics-vidhya/save-and-load-your-scikit-learn-models-in-a-minute-21c91a961e9b 에서 세가지 방법을 소개하고 있다.
- python pickle 사용
- sklearn.utils 의 joblib 사용
- 모델의 coef_ 와 intercept_ 를 json 으로 저장
pickle 이나 joblib 을 사용하면, python 에 의존성(파이썬 버전 등)이 발생하는 단점이 있다.
json 으로 저장하면, 다른 언어(예: java) 로 서비스를 구현할 수 있지만 모델에 대한 이해가 필요하다는 단점이 있다.
sklearn.utils 의 joblib 을 사용한 예제
from sklearn.utils import _joblib # from sklearn.externals import joblib lr: LogisticRegression = LogisticRegression(C=20, max_iter=1000) lr.fit(...) joblib_file = "joblib_model.pkl" _joblib.dump(lr, joblib_file) model: LogisticRegression = _joblib.load(joblib_file) model.predict(...)
'머신러닝(+딥러닝)' 카테고리의 다른 글
랜덤 포레스트 & 랜덤 서치 (0) 2023.08.10 확률적 경사 하강법 (+ 로지스틱 회귀) (0) 2023.08.08 릿지 회귀 (0) 2023.08.08