머신러닝 모델링 기본방법 - bootstrapping, bagging, boosting

1. bootstrapping

 

현재 데이터를 복원추출로 random sampling하여 얻은 여러 데이터로 학습하는 기법

 

각각의 sample 각각에서 모델을 만들어 예측의 consistence를 보고자 하는 것임

 

혹은 데이터가 부족할 때 데이터를 늘리고자 쓰는 기법

 

다시 보니까 그림이 좀 그렇네...

 

위 그림은 bootstrapping을 이용한 bagging을 나타낸다고 볼 수 있겠다

 

2. bagging

 

bootstrapping으로 만든 데이터 set으로 여러 모델을 만들고 각 모델의 성능을 적절하게 aggregation 한다

 

aggregation하는 방법은 voting이나 averaging 등이 있다.

 

보통 모든 학습데이터를 써서 결과를 내는게 성능이 좋아보이지만

 

의외로 80% sampling bootstrapping 하여 얻은 bagging이 성능이 더 좋다고 한다

 

 

3. boosting

 

매우 간단한 모형을 일단 만들어(weak learner)

 

80%가 정답이고 20%가 틀렸다면 2번째 모형으로 20% no에 잘 맞는 모형을 만든다.

 

3번째도 2번째가 틀린 부분에 대해 이를 계속 반복하여 sequential하게 만든 모형을 합친다(strong learner)

 

오답에 가중치를 더 둔 모형을 sequence하게 만들어나가 이들을 합친다

 

single 모형과 ensemble 모형의 차이를 보여주는 그림

TAGS.

Comments