관리 메뉴

블로그

[머신러닝] 불균형 클래스 본문

공부/ML

[머신러닝] 불균형 클래스

beenu 2024. 3. 15. 16:46
반응형
  • 클래스 불균형(Class Imbalances) 문제의 경우 알고리즘이 다수 클래스를 더 많이 예측하는 방향으로 편향되는 경향이 있음 → 소수 클래스에서 오분류율이 높아짐
  • 다수 클래스는 잘 맞추기 때문에 모델의 정확도(Accuracy)는 높지만, 소수 클래스의 재현율(Recall)은 매우 낮아질 수 있음

 

  • 해결 방법 1: Resampling
    • Under Sampling : 다수 클래스 데이터를 소수 클래스 수 만큼 랜덤 샘플링(비복원 추출)
    • Over Sampling : 소수 클래스 데이터를 다수 클래스 수 만큼 랜덤 샘플링(복원 추출)
    • 샘플링 방식이 다양하므로 상황에 맞는 샘플링 방식을 사용해야 함
  • 해결 방법 2 : Class Weight
    • Resampling 없이 클래스에 가중치를 부여하여 클래스 불균형 문제 해결
    • sklearn에서 제공하는 알고리즘은 대부분 class_weight 라는 하이퍼파라미터 제공
    • 대체로 Resampling이 더 좋은 성능을 보이긴 
728x90
반응형