Adaboost
#
Find similar titles
-
최초 작성자
yikwon@insilicogen.com
- 최근 업데이트
Structured data
- Category
- Statistics
앙상블(Ensemble) #
앙상블이라는 영어 단어는 조화를 의미합니다. 영어 단어 의미처럼 여러 개의 모델을 조화롭게 학습시켜 그 모델들의 예측 결과를 토대로 더 정확한 예측값을 도출하는 모델을 생성하는 방법입니다. 즉, 여러 개의 약 분류기(Weak Classifier)를 생성하고, 그 예측을 결합함으로써 보다 정확한 강한 분류기(Strong Classifier)를 도출하는 기법입니다. 기계학습 앙상블 방법에는 크게 세 가지 유형 보팅(Voting), 배깅(Bagging), 부스팅(Boosting)으로 나눌 수 있습니다.
부스팅(Boosting) #
부스팅은 여러 개의 약한 학습기를 순차적으로 학습 및 예측하면서 잘못 예측한 데이터에 가중치 부여를 통해 오류를 개선해 나가면서 학습하는 기계학습 방식입니다. 부스팅의 대표적인 종류는 AdaBoost와 GradientBoost 등이 있습니다. 아래 그림처럼 D1에서 분류기를 학습 및 예측하여 동그라미 표시되어 있듯이 틀린 데이터에 가중치를 부여하여 학습을 이어가면서 똑같은 과정을 진행합니다. 그러면 아래 그림처럼 D1, D2, D3 classifier 과정을 합쳐 최종 Classifier를 구할 수 있으며 최종 Classifier는 +와 -를 정확하게 구분할 수 있습니다.
AdaBoost #
Adaboost 알고리즘은 분류 기반 기계학습 모형으로, 예측 성능이 조금 낮은 약한 학습기(weak classifier)를 다량 구축 및 조합하여 가중치 수정을 통해 좀 더 나은 성능을 발휘하는 하나의 강한 분류기(strong classifier)를 합성하는 방법의 알고리즘입니다. Adaboost 모형은 약한 분류기의 실수를 통해 가중치를 반복적으로 수정하고 결합하여 정확도를 높일 수 있으며 학습 데이터에 과적합(overfitting) 현상이 적게 발생하여 예측 성능을 저하하지 않는 장점이 있습니다.
이러한 AdaBoost 과정을 수식으로 나타내는 아래와 같습니다. 앞서 설명했듯이 약한 분류기의 가중치와 약한 분류기 값의 곱을 다 더해서 최종 강한 분류기를 생성한다고 이해하시면 됩니다.
- H(x) = 최종 강한 분류기 (Strong Classifier)
- h = 약한 분류기 (Weak Classifier)
- alpha = 약한 분류기의 가중치 (Weight)
- T = 반복 횟수 (iteration)