1. Class Imbalanced Problem

  • 클래스 불균형은 다수 클래스가 소수 클래수의 수보다 월등히 ㅁ낳은 학습 상황을 의미하며
  • 클래스 불균형 데이터를 이용해 분류 모델을 학습하면, 분류 성능이 저하되는 문제가 발생함
  • IR(Class Imbalanced Ratio)= # of majority class/ # of minority class

2. 성능지표

  • 분석의 도메인(목적)에 따라서, 지표를 다르게 해석해야 함.
  • 중점적으로 봐야하는 성능지표가 있음

많이 사용하는 지표

  • G-means: 실제 데이터의 특성상 정확도보다는 제1종 오류와 제2종 오류 중 성능이 나쁜 쪽에 더 가중치를 주는 지표
  • F1 measure(정밀도, 재현율): 불량에 관여하는 지표인 정밀도와 재현율만 고려하는 지표
    정밀도(precision)=TP/(FP+TP) : 분류 모형이 불량을 진단하기 위해 얼마나 잘 작동했는 지 보여주는 지표
    재현율(Recall)=TP/(FN+TP) : 불량 데이터 중 실제로 불량이라고 진단한 제품의 비율(진단 확률)
  • AUC

실제 데이터의 대표적인 특성

1) 불량(이상)데이터를 탐지하는 것이 중요함
2) 이러한 불량 데이터는 매우 소수의 데이터임

3. 해결방법

  • Resampling method
    • Over sampling
    • Under sampling
    • Hybrid resampling
  • Cost-sensitive learning: Class의 오분류에 대한 cost의 가중치를 조절하여 학습하는 방법

그 외 기법들

1) Over Sampling

  • Random Over Sampling
  • SMOTE(Synthetic Minority Over-sampling technique): 소수의 데이터의 sample에 KNN을 적용 후, 샘플과 이웃간의 사이에 random 하게 데이터 생성
  • BLSMOTE(Borderline SMOTE): Borderline에 있는 data는 class imbalance prob에 큰 영향을 미친다고 판단하여-> 해당 dataset에만 SMOTE 적용
  • DBSMOTE(DBSCAN SMOTE): DBSCAN cluster 생성 후, cluster 내에서 SMOTE 적용

    단점

  • 데이터마다 성능 편차가 심하며, minority 데이터에 대하여 over-generalization되는 경향이 있음

2) Under Sampling

  • Random Under Sampling
  • Tomek Links: Majority data와 Minority data의 거리가 근접해 있을 때, majority data를 제거
  • EasyEnsemble: Majority data와 Minority data를 동일 수 만큼 random sampling-> 추출된 데이터를 classifier를 통해 학습 -> k번 반복
  • BalancedCascade: EasyEnsemble과 같이 데이터를 N번 random sampling후 학습

    장점

  • 학습에 필요하지 않은 데이터를 제거함으로써 학습 속도 향상을 가져올 수 있음

    단점

  • Decision boundary 부근에 있는 데이터 제거했을 때, 학습에 악영향 끼칠 수 있음

3) Hybrid resampling 기법

  • SMOTE + Tomek Link
  • SMOTE-IPF
  • DBSM
profile
SV Creator

0개의 댓글