저는 기계 학습의 초보자이며 상황에 직면하고 있습니다. IPinYou 데이터 세트로 실시간 입찰 문제를 해결 중이며 클릭 예측을 시도하고 있습니다.
문제는 알 수 있듯이 데이터 세트의 균형이 매우 불균형하다는 것입니다. 1 긍정적 인 예 (클릭)에 대해 약 1300 개의 부정적인 예 (비 클릭).
이것이 제가하는 것입니다:
- 데이터로드
- 데이터 세트를 3 개의 데이터 세트로 분할 : A = 교육 (60 %) B = 유효성 검사 (20 %) C = 테스트 (20 %)
- 각 데이터 세트 (A, B, C)에 대해 5의 비율을 갖도록 각 네거티브 클래스에서 언더 샘플링을 수행합니다 (1 개의 긍정적 인 예의 경우 5 개의 부정적인 예). 이것은 더 균형 잡힌 3 개의 새로운 데이터 세트를 제공합니다 : A 'B'C '
그런 다음 데이터 세트 A '및 로지스틱 회귀로 모델을 학습시킵니다.
내 질문은 :
유효성 검사를 위해 어떤 데이터 세트를 사용해야합니까? B 또는 B '?
테스트에 어떤 데이터 세트를 사용해야합니까? C 또는 C '
내 모델을 평가하는 데 가장 적합한 측정 항목은 무엇입니까? F1Score는 잘 사용되는 지표 인 것 같습니다. 그러나 불균형 클래스 (데이터 세트 B와 C를 사용하는 경우)로 인해 정밀도가 낮고 (0.20 미만) F1Score는 리콜 / 정밀도가 낮습니다. aucPR 또는 aucROC를 사용하는 것이 더 정확합니까?
학습 곡선을 그리려면 어떤 메트릭을 사용해야합니까? (유효성을 위해 B '데이터 세트를 사용하는 경우 % error는 관련이 없음을 알고 있음)
시간 내 주셔서 감사합니다!
문안 인사.