AI/Machine Learning

[ML] XGBoost 모델 저장/불러오기

운호(Noah) 2021. 2. 22. 13:33
  • XGBoost는 내장함수 또는 pickle, joblib 모듈을 사용해 모델을 저장/불러오기 할 수 있습니다.

내장 함수

import xgboost as xgb

# 모델 정의 및 학습
xgb_model = xgb.XGBRegressor(**param).fit(trainData.features, trainData.labels)

# 파일명
filename = 'xgb_model.model'

# 모델 저장
xgb_model.save_model(filename)

# 모델 불러오기
new_xgb_model = xgb.XGBRegressor() # 모델 초기화
new_xgb_model.load_model(filename) # 모델 불러오기

pickle

import pickle

# 모델 정의 및 학습
xgb_model = xgb.XGBClassifier(**param).fit(trainData.features, trainData.labels)

# 파일명
filename = 'xgb_model.model'

# 모델 저장
pickle.dump(xgb_model, open(filename, 'wb'))

# 모델 불러오기
xgb_model = pickle.load(open(filename, 'rb'))

joblib

import joblib

# 모델 정의 및 학습
xgb_model = xgb.XGBClassifier(**param).fit(trainData.features, trainData.labels)

# 파일명
filename = 'xgb_model.model'

# 모델 저장
joblib.dump(xgb_model, open(filename, 'wb'))

# 모델 불러오기
xgb_model = joblib.load(open(filename, 'rb'))