#개념

앙상블 학습(Ensemble Learning)은 여러 개의 개별 모델(기저 학습기, base learner)을 학습시킨 뒤 그 예측을 결합하여 단일 모델보다 더 정확하고 안정적인 예측을 얻는 머신러닝(Machine Learning) 기법이다. 개별 모델은 각자 서로 다른 오류를 범하지만, 이들의 오류가 서로 완전히 상관되어 있지 않다면 예측을 평균하거나 투표로 결합하는 과정에서 오류가 상쇄된다. 이러한 원리는 통계학의 대수의 법칙과 콩도르세 배심원 정리에서 직관을 얻을 수 있으며, 실제로 표 형태(tabular) 데이터에 대한 예측 경진대회에서 상위권 해법의 대부분은 앙상블 기법에 기반한다. 앙상블은 결합 방식에 따라 크게 배깅(Bagging), 부스팅(Boosting), 스태킹(Stacking)의 세 가지로 나뉜다.
배깅(Bootstrap Aggregating)은 원본 학습 데이터에서 복원 추출(bootstrap)로 여러 개의 표본을 만들고, 각 표본에 대해 독립적으로 모델을 학습시킨 뒤 회귀에서는 평균, 분류에서는 다수결 투표로 결과를 결합하는 방식이다. 각 모델이 서로 독립적으로 학습되므로 병렬화가 쉽고, 학습 데이터의 작은 변화에도 결과가 크게 달라지는 불안정한 모델(결정 트리 등)의 분산(variance)을 효과적으로 줄인다. 배깅의 대표적인 확장이 랜덤 포레스트(Random Forest)로, 부트스트랩 표본뿐 아니라 각 노드를 분할할 때 전체 특징 중 무작위로 선택한 일부 특징만 후보로 사용함으로써 트리 간의 상관관계를 추가로 낮춘다. 랜덤 포레스트는 복원 추출에서 선택되지 않은 표본(out-of-bag, OOB)을 이용해 별도의 검증 데이터 없이도 일반화 오차를 추정할 수 있고, 특징 중요도를 산출할 수 있으며, 하이퍼파라미터(Hyperparameter)에 비교적 둔감하여 실무에서 안정적인 기준 모델로 널리 쓰인다.
부스팅(Boosting)은 약한 학습기(weak learner)를 순차적으로 학습시키되, 이전 모델이 잘못 예측한 표본에 더 집중하도록 다음 모델을 학습시켜 점진적으로 오류를 줄여 나가는 방식이다. 초기 알고리즘인 AdaBoost는 오분류된 표본의 가중치를 높이는 방식으로 동작하며, 이후 등장한 그래디언트 부스팅(Gradient Boosting)은 이를 일반화하여 손실 함수(Loss Function)의 음의 기울기(잔차)를 새로운 모델이 근사하도록 학습시킨다. 즉 함수 공간에서의 경사 하강법(Gradient Descent)으로 해석할 수 있으며, 매 단계에서 학습률(shrinkage)을 곱해 조금씩 더해 나간다. 부스팅은 편향을 줄이는 데 탁월하지만 순차적으로 학습되므로 배깅보다 병렬화가 어렵고, 반복 횟수가 지나치면 과대적합(Overfitting)될 수 있어 조기 종료(early stopping), 학습률, 트리 깊이, 서브샘플링 같은 정칙화(Regularization) 장치가 중요하다. 현대적인 그래디언트 부스팅 구현으로는 XGBoost, LightGBM, CatBoost가 대표적이다.
  • XGBoost : 손실 함수의 2차 테일러 근사와 트리 복잡도에 대한 정칙화 항을 목적 함수에 명시적으로 포함하고, 희소 데이터를 인식하는 분할 탐색과 가중 분위수 스케치, 캐시 친화적 자료 구조를 도입하여 대규모 데이터에서 빠르고 정확한 부스팅을 가능하게 했다.
  • LightGBM : 히스토그램 기반 분할 탐색, 기울기가 큰 표본을 우선 유지하는 GOSS(Gradient-based One-Side Sampling), 상호 배타적인 희소 특징을 묶는 EFB(Exclusive Feature Bundling), 잎 단위(leaf-wise) 트리 성장을 결합하여 메모리 사용량과 학습 시간을 크게 줄였다.
  • CatBoost : 범주형 특징을 순서 기반 목표 통계량(ordered target statistics)으로 인코딩하고, 잔차 계산 시 자기 자신의 레이블이 새어 들어가는 예측 편향(prediction shift)을 막기 위한 순서 부스팅(ordered boosting)과 대칭 트리(oblivious tree)를 도입하여 별도의 전처리 없이도 범주형 데이터에서 강건한 성능을 보인다.
스태킹(Stacked Generalization)은 서로 다른 종류의 모델(예: 로지스틱 회귀, 랜덤 포레스트, 그래디언트 부스팅, 신경망)의 예측값을 새로운 입력 특징으로 삼아 상위의 메타 모델(meta-learner)이 최종 예측을 학습하는 방식이다. 메타 모델의 학습 데이터를 만들 때 기저 모델이 학습에 사용한 표본에 대한 예측을 그대로 쓰면 과대적합된 예측이 전달되므로, 반드시 교차 검증(Cross Validation) 기반의 out-of-fold 예측을 사용해야 한다. 스태킹의 단순화된 형태로 예측을 단순 평균하거나 가중 평균하는 블렌딩(blending), 분류 확률을 평균하는 소프트 보팅(soft voting)과 레이블 다수결을 취하는 하드 보팅(hard voting)이 있다.
앙상블이 왜 효과적인지는 편향-분산 분해(bias-variance decomposition) 관점에서 설명할 수 있다. 모델의 기대 오차는 편향의 제곱, 분산, 그리고 줄일 수 없는 잡음의 합으로 표현된다. 서로 독립이고 분산이 $\sigma^2$인 $M$개의 예측을 평균하면 분산은 $\sigma^2 / M$으로 줄어들지만, 예측 간 상관계수가 $\rho$이면 평균의 분산은 $\rho\sigma^2 + \frac{1-\rho}{M}\sigma^2$가 되어 모델 수를 아무리 늘려도 $\rho\sigma^2$ 아래로 내려가지 않는다. 따라서 배깅과 랜덤 포레스트는 깊은 트리처럼 편향은 낮고 분산이 높은 모델을 평균하여 분산을 줄이는 전략이고, 부스팅은 얕은 트리처럼 분산은 낮고 편향이 높은 모델을 순차적으로 더해 편향을 줄이는 전략이며, 스태킹은 서로 다른 귀납적 편향을 가진 모델들을 결합하여 두 가지를 동시에 개선하려는 전략이다.
위 식에서 드러나듯 앙상블의 성능은 개별 모델의 정확도 못지않게 모델 간 다양성(diversity)에 좌우된다. 똑같은 모델을 여러 개 복제하는 것은 아무런 이득이 없으며, 개별 모델은 무작위 수준보다 나은 정확도를 유지하면서도 서로 다른 표본에서 실수해야 한다. 다양성을 확보하는 방법으로는 학습 데이터를 다르게 하는 것(부트스트랩, 서브샘플링), 입력 특징을 다르게 하는 것(무작위 부분 공간), 알고리즘이나 하이퍼파라미터를 다르게 하는 것, 초기화 시드를 다르게 하는 것(딥러닝의 딥 앙상블) 등이 있다. 반면 앙상블은 학습과 추론 비용이 모델 수에 비례하여 증가하고, 단일 결정 트리나 선형 모델에 비해 해석이 어려워지며, 실시간 서비스에서는 지연 시간(Latency) 제약과 충돌할 수 있다. 이 때문에 큰 앙상블의 지식을 작은 단일 모델로 옮기는 지식 증류(knowledge distillation)나, 필요한 만큼의 모델만 남기는 앙상블 가지치기(ensemble pruning)가 함께 사용된다. 결국 앙상블 학습은 정확도, 비용, 해석 가능성 사이의 균형을 고려하여 어떤 모델을 어떻게 결합할지 설계하는 문제이며, 표 형태 데이터에서는 여전히 딥러닝을 포함한 대부분의 단일 모델을 능가하는 가장 신뢰할 수 있는 접근법으로 평가받는다.

#관련 용어

배깅
부트스트랩 표본으로 여러 모델을 독립적으로 학습시킨 뒤 평균이나 투표로 결합하여 분산을 줄이는 앙상블 방식
부스팅
이전 모델의 오류를 보완하도록 약한 학습기를 순차적으로 추가하여 편향을 줄이는 앙상블 방식
스태킹
여러 기저 모델의 예측값을 입력으로 받아 메타 모델이 최종 예측을 학습하는 앙상블 방식
랜덤 포레스트
부트스트랩 표본과 무작위 특징 선택으로 상관관계를 낮춘 다수의 결정 트리를 결합한 배깅 기반 모델
과대적합
모델이 학습 데이터에 지나치게 맞춰져 새로운 데이터에 대한 일반화 성능이 떨어지는 현상
교차 검증
데이터를 여러 폴드로 나누어 학습과 검증을 반복함으로써 모델의 일반화 성능을 추정하는 기법

#직무 연관도

DA
Data Analyst
보통
랜덤 포레스트와 부스팅 모델의 특징 중요도를 활용한 요인 분석과 예측 결과 해석에 활용된다
DS
Data Scientist
밀접
표 형태 데이터 모델링의 표준 접근법이며, 편향-분산 분석과 모델 다양성 설계는 예측 성능 개선의 핵심 역량이다
DE
Data Engineer
높음
부스팅 라이브러리의 분산 학습, 모델 크기와 추론 지연 시간 관리, 서빙 파이프라인 구성에 직접 관여한다

#사용 사례

금융전자상거래의료제조온라인 광고통신
개요
앙상블 학습은 신용 평가, 이탈 예측, 수요 예측, 클릭률 예측, 질병 위험 예측, 설비 이상 탐지 등 표 형태 데이터에 기반한 예측 문제 전반에서 사실상의 표준 기법으로 활용된다. 특히 그래디언트 부스팅 계열은 데이터 과학 경진대회와 산업 현장 모두에서 가장 널리 사용되는 모델 중 하나다.
사례
신용카드 부정 거래 탐지 시스템에서는 거래 금액, 시간대, 가맹점 유형, 최근 거래 패턴 등의 특징을 입력으로 그래디언트 부스팅 모델(XGBoost, LightGBM)과 랜덤 포레스트, 로지스틱 회귀를 각각 학습시킨 뒤 스태킹으로 결합한다. 단일 모델보다 낮은 오탐률로 부정 거래를 식별할 수 있으며, 데이터 분포가 바뀌더라도 성능 저하가 완만하게 나타나는 안정성을 얻는다.

#참고 자료

#추천 포스트

© 2024 diki All rights reserved.