티스토리 뷰
이번 포스팅은 GBM Regressor가 어떤 방식으로 동작하고, split 하는지 간단하게 손으로 구하는 포스팅이다.
GBM의 기본적인 이론을 숙지한 후 보는 것을 추천드린다.
https://sims-solve.tistory.com/96
일단, GBM의 학습 과정을 간단하게 기술해 보았다. 밑 [그림 1]을 보고 천천히 이해해 보기 바란다.
딱 2개의 tree의 과정을 설명해 놓았다. 여러분들은 이미 GBM은 '잔차를 학습'하는 것이라 알고 있기에 위의 내용이 쉽게 이해될 것이다. 즉, Tree를 거쳐가며 prediction의 값을 최대한 y(target)값에 가깝게 예측할 수 있도록 잔차를 DT로 학습하여 prediction을 update 해나가는 식이다.
predict(예측)은 어떻게 진행 될까?
사실, train할때 맨 처음 dummy regressor를 이용하여 target의 평균을 return 하는 모델을 하나 만들어 놓고 시작한다.( dummy regressor는 {“mean”, “median”, “quantile”, “constant”} 총 4개로 학습 가능함)
이러한 이유때문에, predict를 할때, 기존 train의 평균 값을 prediction으로 가져온다. 그 후 학습해놓은 DT에 X변수 값들을 넣어 prediction를 update해가는 방식이다.
모든 DT를 마치고 난 prediction값이 결국 예측하고자 하는 y-hat이 되는 것이다.
여기까지 GBM Regressor의 학습 방법, 예측 방법에 대해 알아보았다.
이전 이론과 차이점은 learning rate(lr)의 존재 여부 정도인것 같다. lr이 존재함으로써, 여러 DT를 걸쳐 조금씩 학습 할 수 있도록 해준다.
이 다음에는 DT의 split이 어떤 방식으로 되는지 한번 손으로 직접 구해보려고 한다.
물론, DT의 split은 이미 DT 포스팅에 존재하지만, GBM에서는 DT의 criterion이 squared error가 아닌 Friedman mse기 때문에 한번 직접 계산해보려고 한다.
혹, DT Regressor의 Split 하는 방식을 모른다면 밑에 포스팅을 보고 오면 훨씬 더 도움이 될 것이다.
https://sims-solve.tistory.com/90
'머신러닝' 카테고리의 다른 글
[ML] MCD ( Minimum Covariance Determinent ) - 1. 마할라노비스 거리 (Mahalanobis distances) (0) | 2023.03.26 |
---|---|
[ML] GBM(Gradient Boosting Machine) - (2) Regressor 손으로 구하기 (0) | 2023.03.23 |
[ML] GBM(Gradient Boosting Machine) - 정리 (0) | 2023.03.21 |
[ML] AdaBoosting 정리 (0) | 2023.03.05 |
[ML] Decision Tree vs Random Forest vs Extra Tree 표 비교 (0) | 2023.02.28 |
- Total
- Today
- Yesterday
- c3k2
- Tree
- V11
- DeepLearning
- CNN
- 알고리즘
- 정리
- 뜯어보기
- 깃
- 오류
- 자바
- java
- 이미지
- GNN
- yolov11
- 초보자
- docker
- YOLO
- 딥러닝
- 백준
- python
- YOLOv8
- 도커
- 오블완
- 욜로
- 어탠션
- 디텍션
- 티스토리챌린지
- GIT
- github
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |