Ensemble Learning
이미 사용하고 있거나 개발한 알고리즘의 간단한 확장
Supervised learning task에서 성능을 올릴 수 있는 방법
Emsemble(함께, 동시에, 한꺼번에 협력하여 - 프랑스어 /소규모의 합주단 - 영어)
=> 머신러닝에서 알고리즘의 종류에 상관 없이 서로 다르거나,
같이 매커니즘으로 동작하는 다양한 머신러닝 모델을 묶어 함께 사용하는 방식
구조
1. 각 모델에 Data Set을 S1 ~SN까지 나눠서 학습을 진행
학습하는 Ensemble은 서로 다른 모델로 구성될 수 있지만 같은 학습모델로 구성될 수도 있음
그래서 같은 학습데이터로 학습하는 것을 지양해야함
2. 각각 학습을 진행한 다수의 모델의 다수결 Voting으로 예측결과를 제공
장점
예측 모델을 안정적으로 결정 가능 - 여러 모델 사용해 noise
쉽게 구현가능 - 여러개의 모델을 학습하고, 직접적으로 연합하여 적용하기 때문에 간편하게 사용할 수 있음.
각 모델들이 독립적으로 동작하므로 모델 파라미터 튜닝이 많이 필요하지 않음
단점
모델 자체로 compact한 표현이 되기 어려움
Ensemble 기본 요소 기술 : Bagging / Boosting
1. Bagging : 학습과정에서 training sample을 랜덤하게 나누어 선택해 학습
Original 학습 데이터를 N개로 구분해 > 별개의 다른데이터 Sub Sample 사용 > 각 Classifier를 학습
모델을 병렬적으로 학습가능. 학습Set이 다른 모델에 영향을 주지 않기 때문임
bagging - 보다 lower variance의 안정적인 성능을 제공하는데 유용한 방법
Overfitting의 문제( Training sample의 숫자가 적음/Model이 복잡) 해결
: Sample을 랜덤하게 선택하는 과정에서 Data Augmentation 효과
간단한 Model을 집합적으로 사용해서 안정적인 성능 제공
- Bagging을 구성하는것은 Boostrapping/ aggregation
Boostrapping: 다수의 sample data set을 생성해서 학습하는 방식
Si : n개의 데이터 셋 - 데이터셋은 Original data set과 같을 수도, 다를 수도 있음
같은 모델 사용 : 모델 파라미터가 서로 달라야함 => 샘플을 랜덤하게 선택
서로 다른 모델 사용 : 같은 샘플을 이용해도 됨
'Data Science > ML & DL' 카테고리의 다른 글
[gemma3모델 사용하기] 멀티모달 vs 텍스트 only (0) | 2025.04.25 |
---|---|
Lv2. 결측치 보간법과 랜덤포레스트로 따릉이 데이터 예측하기 (1) | 2023.12.26 |
Lv1. 의사결정회귀나무로 따릉이 데이터 예측하기 (2) | 2023.12.26 |
Segemntation | 개요 (1) | 2023.11.09 |
Object Detection | yolov8 예제 2(customdataset_train.) (0) | 2023.11.09 |