데이터 분석에서 자주 사용되는 앙상블 모델 및 분석에 대해 알아보겠습니다.
주어진 데이터를 이용해 여러개의 서로 예측모형을 생성한 후 예측 모형의 예측결과를 종합하여 하나의 최종 예측결과를 도출해내는 방법이다. 목표변수의 형태에 따라 분류분석, 회귀분석에 사용할 수 있지만 분류분석에 많이 쓰인다. 분류일 때는 가장 많이 선택된 클래스를 반환하고 회귀는 평균을 구해서 반환한다. 앙상블 기법은 가능하면 예측기가 서로 독립적으로 사용할 때 최고의 성능을 발휘한다. 예를 들어 의사결정나무, SVM분류기, 로지스틱 회귀 등 각 분류기에서 나온 클래스 중 가장많이 예측된 클래스를 반환해준다.
4개의 분류기중 3개가 1번 클래스를 예측하고 있다. 다수결로 결정하고 결과를 반환한다. 다수결 투표기는 개별 분류기 중 가장 뛰어난 것보다도 정확도가 높은 경우가 많다. 간접 투표기는 개별 분류기의 예측을 평균내어 가장 높은 확률의 클래스를 나타낼 수 있다.
배깅을 사용하다보면 같은 데이터가 여러번 나올 수 도 있고, 한번도 안 나올수도 있다. 한번도 안 나온 데이터로 테스트 데이터로 사용할 수 있다. 데이터를 샘플링할 수 있지만 특성 또한 샘플링할 수 있다.
랜덤포레스트는 배깅방법을 의사결정트리에 활용한 앙상블 방법이다. 나무가 모이면 숲이 되듯이 의사결정나무가 여러개 모이면 랜덤포레스트가 된다. 의사결정나무의 단점은 오버피팅이 발생할 확률이 높다는 것이다. 가지치기를 통해 오버피팅의 확률을 낮출 순 있지만 완벽히는 못막는다. 여러 의사결정나무를 앙상블하여 랜덤포레스트를 만들면 오버피팅 되는 단점을 해결할 수 있다.
예를 들어 데이터 셋에 독립변수(특징, feature)가 30개라 있다. 30개의 특징을 하나의 의사결정나무 가지고 만들면 가지가 많아질 것이고, 오버피팅의 결과를 야기할 것입니다. 하지만 30개의 Feature 중 랜덤으로 5개의 Feature만 선택해서 하나의 결정 트리를 만들고, 또 30개 중 랜덤으로 5개의 Feature를 선택해서 또 다른 결정 트리를 만들고 이렇게 계속 반복하여 여러 개의 결정 트리를 만들 수 있다. 결정 트리 하나마다 예측 값을 반환하고 여러 결정 트리들이 내린 예측 값들 중 가장 많이 나온 값을 최종 예측값으로 정한다. 다수결의 원칙에 따르는 것이다.
부스팅은 가중치를 활용하여 약 분류기를 강 분류기로 만드는 방법이다. 부스팅은 틀린 문제를 노트에 적고 이것들에 집중을 하는 목적의 오답노트와 비슷한 개념으로 생각하면 되는데 즉, 틀린 케이스에 가중치를 줌으로써 이를 해결하는 것에 초점을 맞추는 모델이다. 처음 모델이 예측을 하면 그 예측 결과에 따라 데이터에 가중치가 부여되고, 부여된 가중치가 다음 모델에 영향을 준다. 잘못 분류된 데이터에 집중하여 새로운 분류 규칙을 만드는 단계를 반복한다.
분류 분석(Classification) (0) | 2021.09.17 |
---|
댓글 영역