개발/파이썬 머신러닝 완벽가이드 정리

앙상블학습, 배깅, 보팅

개복치 개발자 2020. 1. 25. 17:20

앙상블이라는 단어를 무슨 요리 프로그램에서 들어본 것 같습니다. 재료들이 앙상블을 이룬다? 뭐 이런말을 할 때 썻던 것 같은데, 이게 머신러닝에서 어떻게 쓰이냐 하면

 

머신러닝에서 어떤 데이터의 값을 예측한다고 했을 때, 모델을 하나 만들어서 학습시킨 후, 평가를 실행합니다.

 

하지만 앙상블 학습법에서는 모델을 여러개 학습시켜, 그 모델들을 결합시켜 좋은 결과를 내는 학습 방법입니다.

 

이 앙상블 헉습법에는 두 가지가 있는데, 배깅부스팅입니다.

 

하나씩 한번 보겠습니다.

 

배깅(Bagging)

 

배깅이란 샘플을 여러번 뽑아서, 각 모델을 학습십켜 집계하여 모델을 만드는 방식입니다.

 

이 것을 그림으로 나타내면 아래와 같습니다.

 

 

그럼 부스팅이란 무엇일까요

 

얘는 성능이 약한 학습기를 여러가 연결하여, 강한 학습기를 만드는 앙상블 학습입니다.

 

학습을 한번 실행한 후, 다음 학습을 실행하여 반복하는 형태인데, 이 부스팅 중에 인기있는 알고리즘 중에 하나가 그래디언트 부스팅입니다.

 

그래디언트 부스팅은, 각 학습단계마다 잔여 오차(residual error)에 대해 새로운 모델을 학습시키는 방법입니다.

 

 

 

참조

[1] - https://bkshin.tistory.com/entry/%EB%A8%B8%EC%8B%A0%EB%9F%AC%EB%8B%9D-11-%EC%95%99%EC%83%81%EB%B8%94-%ED%95%99%EC%8A%B5-Ensemble-Learning-%EB%B0%B0%EA%B9%85Bagging%EA%B3%BC-%EB%B6%80%EC%8A%A4%ED%8C%85Boosting

[2] - https://swalloow.github.io/bagging-boosting

[3] - https://excelsior-cjh.tistory.com/166

 

'개발 > 파이썬 머신러닝 완벽가이드 정리' 카테고리의 다른 글

과소적합과 과적합(Overfitting, underfitting)  (0) 2020.02.10
XGBoost, LightGBM  (0) 2020.01.27
결정트리  (0) 2020.01.24
ROC, AUC  (0) 2020.01.24
classification성능평가와 accuracy  (0) 2020.01.22