본문 바로가기

DATA SCIENCE/ADSP

[ADsP] 3-5. 정형 데이터 마이닝 (3) 앙상블 분석

1. 앙상블

  • 예측모형들 조합하여 하나의 최종 예측모형으로 만드는 방법 (combining multiple models)
  • 학습방법의 불안정성
    - 학습자료 작은 변화에 예측모형이 크게 변하는 경우 불안정한 학습방법임
    - 가장 안정적 : 1-nearest neighbor (가장 가까운 자료만 안 변하면 예측모형 변하지 않음), 선형회귀
    - 가장 불안정 : 의사결정나무
  • 배깅 (Bagging : Bootstrap Aggregating)
    - 여러 bootstrap 자료 생성하여 예측 모형 만든 후 결합하여 최종 예측
    - bootstrap : 동일한 크기의 표본을 랜덤 복원추출로 뽑은 자료
    - voting : 다수결에 의해 최종 결과 산정
    - 가지치기 하지 않고 최대 성장한 의사결정나무 활용
    - 훈련자료를 모집단으로 생각하여 분산을 줄이고 예측력 향상시킬 수 있음
  • 부스팅 (Boosting)
    - 예측력 약한 모형 결합하여 강한 예측모형 생성
    - Adaboost : 랜덤 분류기보다 조금 더 좋은 분류기 n개에 각각 가중치 설정하고 결합
    - 훈련 오차 빠르고 쉽게 줄일 수 있음
    - Bagging에 비해 예측 오차 향상되는 경우 많음
  • 랜덤 포레스트 (Random Forest)
    - Bagging과 Boosting보다 더 많은 무작위성 주어 약한 학습기 생성 후 선형결합하여 최종 학습기 생성
    - random input 따른 의사결정나무 분류
    - 랜덤한 forest에 많은 tree들 생성
    - category variable 종류 ≤ 32개
    > randomForest(Y~X, data=data, ntree=100, proximity=TRUE)
  • 스태킹 (Stacking : Stacked Generalization)
    - 다른 모델들 조합

2. 성과분석

  • TPR (True Positive Rate) = Sentitivity(민감도)
    : True인 케이스에 대해 True로 예측한 비율
  • FPR (False Positive Rate) = 1- Specificity(특이도)
    : False인 케이스에 대해 True로 잘못 예측한 비율
  • AUROC (Area Under ROC) = (AR+1)/2
    : 정확도 측정 기준
    - 90~100% : excellent (A) / 80~90% : good (B) / 70~80% : fair (C) / 60~70% : poor (D) / 50~60% : fail (F)
    > library(ROCR)
    > perf <- performance(pred, "tpr", "fpr")   # 성능 평가로 "lift", "rpp"(rate of positive predictions) 등도 가능
    > plot(perf, main="ROC curve", colorize=T)
  • Lift (향상도) = 반응률 / 기본 향상도
    - 이익도표(Lift Chart) : 각 데이터별 예측확률에 대해 내림차순으로 정렬

 

출처 : ADsP 데이터 분석 준전문가 (윤종식 저)

반응형