Soy un principiante en el aprendizaje automático y me enfrento a una situación. Estoy trabajando en un problema de oferta en tiempo real, con el conjunto de datos IPinYou y estoy tratando de hacer una predicción de clics.
El hecho es que, como ya sabrá, el conjunto de datos está muy desequilibrado: alrededor de 1300 ejemplos negativos (sin clic) para 1 ejemplo positivo (clic).
Esto es lo que hago:
- Cargar los datos
- Divida el conjunto de datos en 3 conjuntos de datos: A = Entrenamiento (60%) B = Validación (20%) C = Prueba (20%)
- Para cada conjunto de datos (A, B, C), realice un submuestreo en cada clase negativa para tener una relación de 5 (5 ejemplos negativos para 1 ejemplo positivo). Esto me da 3 nuevos conjuntos de datos que están más equilibrados: A 'B' C '
Luego entreno mi modelo con el conjunto de datos A 'y la regresión logística.
Mi pregunta es:
¿Qué conjunto de datos debo usar para la validación? B o B '?
¿Qué conjunto de datos debo usar para las pruebas? C o C '
¿Qué métricas son las más relevantes para evaluar mi modelo? F1Score parece ser una métrica bien utilizada. Pero aquí, debido a la clase desequilibrada (si uso los conjuntos de datos B y C), la precisión es baja (por debajo de 0.20) y el F1Score está muy influenciado por la baja memoria / precisión. ¿Sería más preciso usar aucPR o aucROC?
Si quiero trazar la curva de aprendizaje, ¿qué métricas debo usar? (sabiendo que el% de error no es relevante si uso el conjunto de datos B 'para validar)
Gracias de antemano por tu tiempo !
Saludos.