클래스 불균형 하에서 정밀 리콜 곡선 최적화


30

나는 많은 예측 변수가있는 분류 작업을 가지고 있는데 (그중 하나가 가장 유익합니다) MARS 모델을 사용하여 분류기를 구성하고 있습니다 (나는 간단한 모델에 관심이 있으며 설명을 위해 glms를 사용하는 것은 다음과 같습니다) 미세 너무). 이제 훈련 데이터 (각 양성 샘플에 대해 약 2700 개의 음성 샘플)에 큰 클래스 불균형이 있습니다. Information Retrieval 작업과 마찬가지로 최상위 순위의 양성 테스트 샘플을 예측하는 데 더 관심이 있습니다. 이러한 이유로 정밀 리콜 곡선의 성능이 중요합니다.

우선, 나는 수업 불균형을 유지하면서 훈련 데이터에 대한 모델을 단순히 훈련시켰다. 훈련 된 모델을 빨간색으로, 가장 중요한 입력은 파란색으로 시각화합니다.

불균형 데이터에 대한 교육, 불균형 데이터에 대한 평가 :

불균형 훈련을위한 PR 불균형 훈련을위한 ROC

클래스 불균형이 모델을 버리고 있다고 생각하면 최상위 순위의 양성 샘플을 배우는 것이 전체 데이터 세트의 최소 부분이므로 균형 훈련 데이터 세트를 얻기 위해 양성 훈련 포인트를 업 샘플링했습니다. 균형 훈련 세트 에서 성능을 플롯하면 좋은 성능을 얻습니다. PR 곡선과 ROC 곡선 모두에서 훈련 된 모델이 입력보다 낫습니다.

(업 샘플링 된) 균형 데이터에 대한 교육, (업 샘플링 된) 균형 데이터에 대한 평가 :

균형 잡힌 데이터 세트로 시각화 된 균형 잡힌 교육을위한 PR 균형 잡힌 데이터 세트로 시각화 된 균형 잡힌 훈련을위한 ROC

그러나 균형 잡힌 데이터에 대해 훈련 된이 모델을 사용하여 원래의 불균형 훈련 세트를 예측하면 PR 곡선에서 여전히 성능이 저하됩니다.

(업 샘플링 된) 균형 데이터에 대한 교육, 원본 불균형 데이터에 대한 평가 :

균형 잡힌 훈련을위한 PR, 원래의 불균형 데이터 세트로 시각화 균형 잡힌 훈련을위한 ROC, 원래의 불균형 데이터 세트로 시각화

그래서 내 질문은 :

  1. PR 곡선의 시각화가 훈련 된 모델 (빨간색)의 성능이 떨어지는 이유와 ROC 곡선이 클래스 불균형으로 인해 개선 된 이유는 무엇입니까?
  2. 리샘플링 / 업 샘플링 / 다운 샘플링 방식으로이를 해결하여 고정밀 / 리콜 영역에 초점을 맞출 수 있습니까?
  3. 고정밀 / 리콜 지역에 대한 교육에 집중할 수있는 다른 방법이 있습니까?

트레이닝 세트에서 계산 된 측정 값과 데이터에서 수행 된 측정 값을 명확히하기 위해 질문을 편집 할 수 있습니까?
잭 태너

@ JackTanner, 모든 것은 현재 훈련 세트에서 계산됩니다. 모델에는 많은 매개 변수가 없으며 훈련 세트의 샘플 수가 많기 때문에 과적 합에 대해 너무 걱정하지 않습니다. 또한 테스트 세트에서 기대하기 전에 훈련 세트에서 우수한 성능을 얻고 있는지 확인하고 싶습니다.
highBandWidth

다른 리콜 레벨에서 정밀도를 평가하기 위해 학습 알고리즘에서 어떤 노브를 제어하고 있습니까? 기능 조합 및 변환과 같은 기능 세트를 확장하려고 했습니까?
잭 태너

@ JackTanner, 내가 가지고있는 모델 (logit 함수가있는 MARS)은 로지스틱 회귀와 유사하게 0에서 1까지의 범위에서 출력을 제공합니다. 기본적으로 동일하지만 몇 가지 기능이 더 포함되어 있습니다. 다른 리콜에서 정밀도를 얻으려면 다른 지점에서 임계 값을 설정하기 만하면됩니다. 난 그냥 순위 목록에서 PR 또는 ROC를 계산하는 표준 방법을 사용합니다.
highBandWidth

답변:


15
  1. ROC 곡선은 클래스 불균형의 변화에 ​​민감하지 않습니다. Fawcett (2004) "ROC 그래프 : 연구원을위한 메모 및 실제 고려 사항"을 참조하십시오.
  2. 저주파 클래스 업 샘플링은 합리적인 접근 방식입니다.
  3. 계급 불균형을 다루는 다른 많은 방법이 있습니다. 부스팅과 배깅은 두 가지 기법입니다. 이것은 최근의 관련 연구처럼 보인다 : 잡음이 있고 불균형 된 데이터와 부스팅 및 배깅 기법 비교

PS 깔끔한 문제; 나는 그것이 어떻게 나오는지 알고 싶습니다.



1

마지막 두 실험이 실제로는 거의 동일한 데이터 세트에서 동일한 모델을 사용한다는 사실에 주목하고 싶었습니다. 성능의 차이는 모델 차이가 아니며, 검증 데이터 세트의 다양한 분포와 사용 된 특정 METRICS의 특성 (정밀도 및 리콜)에 따라 설명됩니다. 이 점을 좀 더 정교하게 설명하기 위해 초기 유효성 검사 데이터 세트에서 X 개의 고유 항목을 가져와 업 스케일 된 데이터 세트에 대한 소수 클래스를 복제 한 경우 모델은 해당 스케일의 X 항목에 대해 업 스케일링 및 언밸런스 모두에서 동일한 예측을 수행합니다. 검증 데이터 세트. 유일한 차이점은 각 오탐 (false positive)에 대해 초기 데이터 세트에서 실제 양수가 적고 (따라서 정밀도가 낮음) 균형 잡힌 데이터 세트에서 실제 양수가 더 많다는 것입니다 (일반적으로 데이터 세트에 더 긍정적 인 예가 있다는 사실 때문에) . 이것이 Precision과 Recall이 기울기에 민감하다고 말하는 이유입니다. 반면에 실험에서 알 수 있듯이 ROC는 변경되지 않습니다. 이것은 그것의 정의를 보면 볼 수 있습니다. 이것이 ROC가 기울기에 민감하지 않다고 말하는 이유입니다.

나 자신을 찾고있는 것처럼 포인트 2와 3에 아직 좋은 대답이 없습니다 :)


0

업 샘플링 된 양성 샘플이 "원본 세트"에서와 동일한 분포를 갖는다 고 가정합니다. 양성 샘플 수가 증가함에 따라 변화가 거의 발생하지 않습니다.

1) "모든 임계 값"에 대해 TruePositives (TP)의 수가 증가하고 결과적으로 모든 임계 값에 대해 TP / (TP + FP) 및 TP / (TP + FN)의 비율이 증가합니다. PRC 아래 영역이 증가하고 있습니다.

2) "dumb"모델의 정밀도라고도하는 예상 정밀도는 ~ 1 / 2700 (원본 세트)에서 ~ 1 / 2 ( "이상적인"밸런스의 경우)로 증가합니다. 모델이 "덤"모델보다 성능이 우수하다고 가정하면 곡선 아래 영역이 "원본 세트"에서 0.00037 이상, 이상적으로 균형 잡힌 세트에서 0.5 이상임을 의미합니다.

3) 업 스케일 된 데이터 세트에서 모델을 학습하는 동안 일부 모델은 양성 샘플에 "과적 합"할 수 있습니다.

ROC 곡선과 관련하여 ROC 곡선은 클래스 분포 변동으로 인한 영향이 거의없는 것으로 알려져 있습니다 (업 스케일링은 FPR에 거의 영향을 미치지 않지만 TPR에는 약간의 영향이 있음).

고정밀 / 리콜 영역에 초점을 맞추는 경우 False Positive가 False Negative보다 더 많은 비용이 부과되는 비용 함수와 관련하여 최적화 할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.