본문 바로가기
R/R 머신러닝

앙상블

by 자유데이터 2019. 3. 12.
반응형

목차

앙상블 기법
            1.앙상블 기법이란
            2.배깅
            3.부스팅
            4.스태킹
            5.랜덤 포레스트
            6.성과분석




1.앙상블 기법이란

앙상블이라는 용어는 본래 프랑스어로 '통일, 조화' 등을 나타내는 용어이다. 앙상블 기법은 주어진 자료로부터 여러 개의 예측모형들을 만든 후 예측모형들을 조합하여 하나의 최종 예측모형을 마드는 방법을 말한다. 다중 모델 조합(combining multiple models), 분류기 조합(classifier combination)이라고도 한다.

1)앙상블 기법 종류

배깅(bagging:bootstrap aggregation)
부스팅(boosting)
랜덤 포레스트(random forest)
스태킹(stacking)


2)학습방법의 불안정성
: 학습자료의 작은 변화에 의해 예측모형이 크게 변하는 경우, 그 학습방법은 불안정하다.

-가장 안정적인 방법 : 1-nearest neighbor, 선형회귀모형
-가장 불안정한 방법 : 의사결정나무



2.배깅(bagging)

주어진 자료에서 여러 개의 붓스트랩(bootstrap) 자료를 생성하고 각 붓스트랩 자료에 예측모형을 만든 후 결합하여 최종 예측모형을 만드는 방법이다.

-붓스트랩(bootstrap) : 주어진 자료에서 동일한 크기의 표본을 랜덤 복원추출로 뽑은 자료
-보팅(voting) : 여러 개의 모형으로부터 산출된 결과를 다수결에 의해서 최종 결과로 선정하는 과정


1)배깅 특징

최적의 의사결정나무를 구축할 때 가장 어려운 부분이 가지치기이지만, 배깅에서는 가지치기를 하지 않고 최대로 성장한 의사결정나무들을 활용한다. 배깅은 각 샘플에서 나타난 결과를 일종의 중간값으로 맞추어 주기 때문에, 과적합을 피할 수 있다.


2)배깅 알고리즘

대상 데이터로부터 복원 랜덤 샘플링을 한다. 이렇게 추출된 데이터는 표본 집단이 된다. 이 표본 집단들에게 동일한 모델(의사결정나무)을 학습시킨다. 그리고 학습된 모델의 예측변수들을 투표 방식(voting)으로 집계하여 그 결과로 모델을 생성하는 방식이다.



3.부스팅(boosting)

예측력이 약한 모형(weak learner)들을 결합하여 강한 예측모형을 만드는 방법이다.

-Adaboost : 이진분류 문제에서 랜덤 분류기보다 조금 더 좋은 분류기 n개에 각각 가중치를 설정하고 n개의 분류기를 결합하여 최종 분류기를 만드는 방법.

1)배깅과 부스팅 차이

배깅이 일반적인 모델을 만드는데 집중되어있다면, 부스팅은 맞추기 어려운 문제를 맞추는데 초점이 맞춰져 있다. 예를들어 특정 문제가 어려워 계속 틀릴 때, 그 문제에 가중치를 주어 그 문제를 잘 맞추는 모델을 최종 모델로 선정한다.

부스팅도 배깅과 동일하게 복원 랜덤 샘플링을 하지만, 가중치를 부여한다는 차이점이 있다. 배깅은 병렬로 학습하는 반면에 부스팅은 순차적으로 학습한다.

배깅에 비해 많은 경우 예측오차가 향상되어 Adaboost 성능이 배깅보다 뛰어난 경우가 많다.



2)부스팅 또 다른 특징
: 훈련오차를 빨리 그리고 쉽게 줄일 수 있다.
: 정확도가 높지만 outlier에 취약하다.



4.스태킹(stacking)

Meta Modeling이라고 불리기도 하는 이 방법은 위의 2가지 방식과는 조금 다르다. 스태킹은 서로 다른 모델들을 조합해서 최고의 성능을 내는 모델을 생성한다. 여기서 사용되는 모델은 SVM, RandomForest, KNN 등 다양한 알고리즘이다. 이러한 조합을 통해 서로의 장점은 취하고 약점을 보완할 수 있다.




반응형

'R > R 머신러닝' 카테고리의 다른 글

군집분석  (0) 2019.03.13
인공신경망  (0) 2019.03.13
랜덤포레스트  (0) 2019.03.12
의사결정나무  (3) 2019.03.12
데이터 마이닝  (0) 2019.03.11

댓글