본문 바로가기
데이터 분석/머신러닝

XGBoost

by 너굴맨_ 2022. 10. 7.

XGBoost

소개

Gradient Boost을 최적화한 알고리즘.

출처 : https://www.kaggle.com/code/azminetoushikwasi/xgboost-wrangling-with-hyperparameters-guide

주요 장점
  • 빠른 수행 시간 ( C/C++ 언어로 작성)
  • 뛰어난 예측 성능
  • 과적합 규제
  • Tree Pruning
  • 자체 교차 검증 기능
  • 자체 결손 값 처리
  • 병렬 처리 지원

XGBoost Algorithm

주요 과제

트리의 분리 기준각 노드의 가중치를 어떻게 설정할 것인가?

 

위 과제에 대한 해결방안을 손실 함수를 구하는 과정을 통해 얻을 수 있다.

※ 손실 함수 : 오류를 측정하는 함수

 

XGBoost는 Gradient Boost처럼 잔차를 점차 줄여나가는 방식으로 진행되는데

위 그래프에서 Loss function(손실 함수)의 기울기가 최소가 되는 지점을 알면W(weight) 값(노드의 가중치)을 알 수 있다.

손실 함수를 알게 되면 트리 분할하면서 얻는 Gain 값을 계산한 후 Gain 값이 큰 분리 기준을 선택하는 방식으로 잔차를 줄여나간다.

 

진행 과정

Reference

[1] https://www.youtube.com/watch?v=VkaZXGknN3g 

[2] https://www.youtube.com/watch?v=OtD8wVaFm6E&list=WL&index=3

[3] https://zephyrus1111.tistory.com/232

 

21. XGBoost에 대해서 알아보자

이번 포스팅에서는 부스팅 계열에 떠오르는 샛별 XGBoost에 대해서 알아보려고 한다. 여기에서는 XGBoost의 개념, 알고리즘 동작 원리를 예제와 함께 알아보고자 한다. - 목차 - 1. XGBoost란 무엇인가?

zephyrus1111.tistory.com

[4] https://www.kaggle.com/code/azminetoushikwasi/xgboost-wrangling-with-hyperparameters-guide

 

XGBoost | Wrangling with Hyperparameters | Guide

Explore and run machine learning code with Kaggle Notebooks | Using data from multiple data sources

www.kaggle.com

 

'데이터 분석 > 머신러닝' 카테고리의 다른 글

부스팅 알고리즘 (Boosting Algorithm)  (2) 2022.10.05
랜덤 포레스트 (Random Forest)  (0) 2022.10.02
앙상블(Ensemble)  (0) 2022.10.02
결정 트리(Decision Tree)  (0) 2022.09.25
유튜브 댓글 분석하기  (0) 2022.06.15

댓글