-
XGBoost in pythondata-science-summary/summary 2020. 9. 20. 18:05반응형
<엔지니어는 구현을 못하면 모르는것이다>
Boosting 방식의 일종
Gradient boosting 보다는 빠름, GBM 에 과적합 방지가 가능한 regulation 포함된 모델 + 다양한 loss function을 지원하는 모델이다.from xgboost import XGBClassifier from sklearn.datasets import make_classification from sklearn.model_selection import train_test_split X, y = make_classification(random_state=0) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=0) # max_depth : 트리의 최대 깊이를 정의, gamma= 노드가 split 되기 위한 loss function 값이 감소하는 최소값을 정의 # early_stopping_rounds : n 번 반복동안 성능좋아지지 않으면 멈춤 => 불필요한 시간 낭비 줄임 # 조기 종료시 어떤 데이터를 볼것인지 정해줌 evals = [(X_test, y_test)] clf = XGBClassifier(max_depth=10, gamma=0.001, early_stopping_rounds=20, eval_set = evals) clf.fit(X_train, y_train) print(clf.predict(X_test)) # 정확도 print(clf.score(X_test, y_test)) # feature의 중요도 파악 clf.feature_importances_
반응형'data-science-summary > summary' 카테고리의 다른 글
likelihood 와 maximum likelihood method 란? 간단정리 (0) 2020.09.20 후진 제거법 (Backward Elimination) in python (0) 2020.09.20 LightGBM in python (0) 2020.09.20 GradientBoost in python (0) 2020.09.20 AdaBoost in python (0) 2020.09.20