앙상블 학습 기법
여러 개의 약간 다른 모델을 묶어 하나의 예측을 만드는 기법
서로의 약점을 보완해 일반화 성능(테스트 성능)을 높이는 게 목적
핵심 종류
배깅 = 여러 명이 독립적으로 푼 답을 평균
부스팅 = 한 명이 틀린 걸 다음 사람이 수정
스태킹 = 여러 전문가의 답을 모아서, ‘판단 전문가’(메타모델)가 이들을 조합해 최종 답을 내는 것
배깅(Bagging)
여러 모델을 독립적으로 학습시키고, 그 결과를 평균/투표로 합치자
여러 명이 각각 따로 시험 문제 풀고, 다수결로 답 고르는 느낌
하는법
원본 데이터를 중복 허용(bootstrap) 으로 여러 번 샘플링
→ 예: 100개 데이터로 여러 ‘훈련세트’를 뽑음
각각에 같은 모델(예: 결정트리) 을 학습시킴
예측할 땐
회귀 → 평균
분류 → 다수결로 결정
특징
과적합(Overfitting)을 줄여줌
분산(Variance)을 낮춤
각 모델은 서로 독립적으로 학습
대표 모델
랜덤 포레스트(Random Forest) = 배깅 + 트리
• 서로 다른 부트스트랩 샘플로 같은 모델을 여러 개 학습→ 예측을 평균/다수결
• 분산(요동)을 낮춤, 과대적합 완화에 유리
• 예 : RandomForest(여러 결정트리 + 특성 무작위 선택)
부스팅(Boosting)
이전 모델이 틀린 데이터를 다음 모델이 집중해서 학습하자!
하는법
처음엔 단순한 모델을 하나 학습
틀린 데이터에 가중치(weight) 를 더 줌
다음 모델은 그 어려운 샘플 중심으로 다시 학습
이런 식으로 약한 모델(weak learner)을 순차적으로 이어 붙임
특징
모델들이 순차적으로 의존 (앞 모델 결과 반영)
편향(Bias)을 낮춤
과적합 위험 있음 (너무 세밀히 맞출 수 있음)
대표모델
AdaBoost, Gradient Boosting, XGBoost, LightGBM, CatBoost
• 이전 모델의 실수를 다음 모델이 보완하도록 순차적으로 학습 → 약한 학습기를
강하게
• 편향을 줄이는 데 강함, 튜닝 잘하면 최고 성능
• 예 : Gradient Boosting, XGBoost, LightGBM, CatBoost
스태킹(Stacking)
서로 다른 여러 모델의 예측 결과를 또 하나의 모델이 학습하게 하자
하는법
여러 모델(예: 로지스틱 회귀, 랜덤포레스트, XGBoost 등)을 각각 학습
각 모델이 예측한 값을 모아서
메타모델(meta model) 이 “어떤 모델의 말을 믿을지” 학습
특징
모델 간 다양성이 높을수록 효과 좋음
다른 알고리즘들을 조합해서 더 강력한 모델을 만듦
대표 예시
1단계: SVM, Decision Tree, XGBoost
2단계: Logistic Regression (메타모델)
• 서로 다른 종류의 모델 예측을 메타 모델이 다시 학습해 최종 예측
• 다양한 모델의 강점을 결합, 세심한 검증이 필요
'데이터 분석 > 머신러닝, 딥러닝' 카테고리의 다른 글
| RandomForest까지의 종합적 예제 (0) | 2025.11.06 |
|---|---|
| 랜덤 포레스트(Random Forest) (0) | 2025.11.05 |
| 결정 트리(Decision Tree) (0) | 2025.11.05 |
| LogisticRegression (0) | 2025.11.04 |
| K-Nearest Neighbors(KNN) 최근접 이웃 알고리즘 (0) | 2025.11.03 |