본문 바로가기
Learning-driven Methodology/ML (Machine Learning)

[XGBoost] Python Package Introduction (3)

by goatlab 2022. 5. 9.
728x90
반응형
SMALL

Prediction

 

훈련되거나 로드된 모델은 데이터 세트에 대한 예측을 수행할 수 있다.

 

# 7 entities, each contains 10 features
data = np.random.rand(7, 10)
dtest = xgb.DMatrix(data)
ypred = bst.predict(dtest)

 

훈련 중에 조기 중지가 활성화된 경우 다음을 사용하여 최상의 반복에서 예측을 얻을 수 있다 bst.best_iteration.

 

ypred = bst.predict(dtest, iteration_range=(0, bst.best_iteration + 1))

 

Plotting

 

플로팅 모듈을 사용하여 중요도 및 출력 트리를 그릴 수 있다.

 

중요도를 표시하려면 xgboost.plot_importance()를 사용하면 된다. 이 기능은 matplotlib을 설치해야 한다.

 

xgb.plot_importance(bst)

 

xgboost.plot_tree()를 통해 출력 트리를 플로팅하려면 대상 트리의 서수를 지정하여 matplotlib를 사용한다. 이 기능에는 graphviz 및 matplotlib가 필요하다.

 

xgb.plot_tree(bst, num_trees=2)

 

IPython을 사용 하면 대상 트리를 인스턴스로 변환하는 기능을 사용할 수 있다. 인스턴스는에서 자동으로 렌더링된다.

 

xgb.to_graphviz(bst, num_trees=2)

 

Scikit-Learn interface

 

XGBoost는 회귀, 분류 및 순위 지정을 포함하여 미리 정의된 일부 모델에 대해 사용하기 쉬운 scikit-learn 인터페이스를 제공한다.

 

# Use "gpu_hist" for training the model.
reg = xgb.XGBRegressor(tree_method="gpu_hist")
# Fit the model using predictor X and response y.
reg.fit(X, y)
# Save model into JSON format.
reg.save_model("regressor.json")

 

사용자는 필요할 때 기본 부스터 모델에 계속 액세스할 수 있다.

 

booster: xgb.Booster = reg.get_booster()

 

https://xgboost.readthedocs.io/en/stable/python/python_intro.html

 

Python Package Introduction — xgboost 1.6.0 documentation

© Copyright 2021, xgboost developers. Revision f75c007f.

xgboost.readthedocs.io

 

728x90
반응형
LIST