When Accuracy Lies

Imbalance Handling


평가지표와 임계값을 바꾸는 것과 달리, 표본 수 조정(resampling)과 범주 가중치(class weight)는 모델을 학습하는 과정을 바꾼다. 두 방법 모두 학습 자료에만 적용하고, 원래 범주 비율을 유지한 검증 자료에서 전후 지표를 비교한다.

undersampling · oversampling다수 범주 표본을 줄이거나 소수 범주 표본을 복제해 범주별 관측 수를 맞춘다.
균형 가중치 w_c = n / (C n_c)드문 범주의 모든 관측 손실에 더 큰 가중치를 곱해 범주별 가중치 합을 같게 한다.
새 정보는 생기지 않는다복제나 가중치는 새로운 관측을 만들지 않으며, 재현율과 정밀도가 함께 바뀐다.

표본 수 조정은 분할한 뒤 학습 자료에만 적용한다

가상 관측 1,000개(소수 범주 60개)를 학습 80%, 검증 20%로 범주 비율을 지켜 나눈다. 조정 방법과 적용 시점을 바꾸면 학습 자료와 검증 자료의 범주별 관측 수가 바뀐다.

범주별 관측 수학습 자료와 검증 자료의 소수·다수 범주 관측 수
막대 가로 길이는 관측 수이며 모든 막대에 같은 척도를 썼다. 초록은 소수 범주, 회색은 다수 범주, 초록 점선은 복제로 늘린 소수 범주 관측이다.

균형 가중치는 범주별 가중치 합을 같게 만든다

학습 관측 1,000개, 범주 C = 2개에서 소수 범주 관측 수 n_c를 바꾸면 두 범주의 관측당 가중치와 가중치 합이 바뀐다.

관측당 가중치와 가중치 합소수·다수 범주의 가중치
왼쪽 막대는 관측당 가중치, 오른쪽 막대는 관측 수 × 가중치로 구한 범주별 가중치 합이다. 초록이 소수 범주, 파랑이 다수 범주다.

균형 가중치로 재현율이 올라도 정밀도는 크게 떨어질 수 있다

사기 거래 자료에서 로지스틱 회귀를 5-fold 교차검증으로 평가한 평균이다. 지표를 고르면 기본 설정과 class_weight="balanced" 설정의 값과 변화가 바뀐다.

가중치 설정 전후의 지표기본 설정과 균형 가중치의 네 지표
지표마다 왼쪽 회색 막대가 기본 설정, 오른쪽 초록 막대가 균형 가중치다. 굵은 이름이 강조한 지표다.