머신러닝 앙상블(Ensemble) 학습

Edi·2022년 8월 4일
0

인공지능

목록 보기
2/3
  1. 앙상블 학습이란?
    앙상블 학습(Ensemble Learning)은 여러 개의 분류기를 생성하고, 그 예측을 결합함으로써 보다 정확한 예측을 도출하는 기법을 말합니다.

강력한 하나의 모델을 사용하는대신 보다 약한 모델 여러개를 조합하여 더 정확한 예측에 도움을 주는 방식입니다.

현실세계로 예를 들면, 어려운 문제를 해결하는데 한 명의 전문가보다 여러명의 집단지성을 이용하여 문제를 해결하는 방식을 앙상블 기법이라 할 수 있습니다.

전 세계의 머신러닝 개발자들의 기량을 겨루는 오픈 플랫폼 캐글(Kaggle)에서 XGBoost, LightGBM과 같은 앙상블 알고리즘이 머신러닝의 선도 알고리즘으로 인기를 모으고 있다는 점에서 앙상블 학습의 강력함을 확인할 수 있습니다.

  1. 앙상블 학습 유형

앙상블 학습은 일반적으로 보팅(Voting), 배깅(Bagging), 부스팅(Boosting) 세 가지의 유형으로 나눌 수 있습니다.

보팅(Voting)
여러 개의 분류기가 투표를 통해 최종 예측 결과를 결정하는 방식
서로 다른 알고리즘을 여러 개 결합하여 사용
보팅 방식
하드 보팅(Hard Voting)
다수의 분류기가 예측한 결과값을 최종 결과로 선정
소프트 보팅(Soft Voting)
모든 분류기가 예측한 레이블 값의 결정 확률 평균을 구한 뒤 가장 확률이 높은 레이블 값을 최종 결과로 선정
Voting
[ Voting 방식 ]
배깅(Bootstrap AGGregatING, Bagging)
데이터 샘플링(Bootstrap) 을 통해 모델을 학습시키고 결과를 집계(Aggregating) 하는 방법
모두 같은 유형의 알고리즘 기반의 분류기를 사용
데이터 분할 시 중복을 허용
Categorical Data : 다수결 투표 방식으로 결과 집계
Continuous Data : 평균값 집계
과적합(Overfitting) 방지에 효과적
대표적인 배깅 방식 : 랜덤 포레스트 알고리즘
Bagging
[ Bagging 방식 ]

부스팅(Boosting)
여러개의 분류기가 순차적으로 학습을 수행
이전 분류기가 예측이 틀린 데이터에 대해서 올바르게 예측할 수 있도록 다음 분류기에게 가중치(weight)를 부여하면서 학습과 예측을 진행
계속하여 분류기에게 가중치를 부스팅하며 학습을 진행하기에 부스팅 방식이라고 불림
예측 성능이 뛰어나 앙상블 학습을 주도
대표적인 부스팅 모듈 종류 – XGBoost, LightGBM, AdaBoost, GBM(Gradient BoostingMachine), CatBoost
보통 부스팅 방식은 배깅에 비해 성능이 좋지만, 속도가 느리고 과적합이 발생할 가능성이 존재하므로 상황에 따라 적절하게 사용해야 함.
머신러닝 모델을 생성하는 것은 라이브러리를 가져다 쓰면 되기 때문에 자세한 내용을 몰라도 사용하는데 문제는 없습니다.

하지만, 성능 향상을 위해 상황에 맞는 모델 선택 및 하이퍼 파라미터 튜닝을 하기 위해 정확한 수식 이해까지는 아니더라도, 모델의 동작방식과 모델의 하이퍼 파라미터 의미 정도는 알고 있어야 합니다.

0개의 댓글