Je suis un débutant en apprentissage automatique et je suis confronté à une situation. Je travaille sur un problème d'enchères en temps réel, avec l'ensemble de données IPinYou et j'essaie de faire une prédiction de clic.
Le fait est que, comme vous le savez peut-être, l'ensemble de données est très déséquilibré: environ 1300 exemples négatifs (sans clic) pour 1 exemple positif (clic).
C'est ce que je fais:
- Charger les données
- Divisez l'ensemble de données en 3 ensembles de données: A = formation (60%) B = validation (20%) C = test (20%)
- Pour chaque ensemble de données (A, B, C), faites un sous-échantillonnage sur chaque classe négative afin d'avoir un ratio de 5 (5 exemples négatifs pour 1 exemple positif). Cela me donne 3 nouveaux jeux de données qui sont plus équilibrés: A 'B' C '
Ensuite, je forme mon modèle avec l'ensemble de données A 'et la régression logistique.
Ma question est:
Quel ensemble de données dois-je utiliser pour la validation? B ou B '?
Quel ensemble de données dois-je utiliser pour les tests? C ou C '
Quelles mesures sont les plus pertinentes pour évaluer mon modèle? F1Score semble être une métrique bien utilisée. Mais ici, en raison de la classe déséquilibrée (si j'utilise les ensembles de données B et C), la précision est faible (inférieure à 0,20) et le F1Score est très influencé par un faible rappel / précision. Serait-il plus précis d'utiliser aucPR ou aucROC?
Si je veux tracer la courbe d'apprentissage, quelles mesures dois-je utiliser? (sachant que l'erreur% n'est pas pertinente si j'utilise l'ensemble de données B pour valider)
Merci d'avance pour votre temps !
Cordialement.