lección 4
Un modelo por encuadre, y el AUC que engaña
Un RandomForest para cada encuadre: el ingenuo da un AUC casi perfecto y el reformulado uno modesto. El altísimo es la señal de alarma, no el ganador.
⏱ 55 min
## Miércoles, 9:00. Por fin un modelo
Después de dos días definiendo targets y poblaciones, hoy toca lo que mejor sabes hacer. La técnica es clasificación binaria con un RandomForest, exactamente lo que montaste en tu primer caso con la operadora de telefonía. No hay nada nuevo en el algoritmo: lo nuevo es que lo vas a entrenar dos veces, una por cada encuadre, sobre las dos tablas que preparaste ayer. El objetivo no es afinar un modelo hasta la última décima, es comparar: ¿qué pasa cuando aplicas la misma herramienta a las dos preguntas?
Las features son las mismas en los dos modelos: la actividad reciente y la previa, la tendencia, las medias de movimientos, pagos y logins, los meses activo, el saldo, la antigüedad y la nómina. Quitas de la tabla las columnas que no son features —el identificador, el estado, el flag accionable y los dos targets— y entrenas. La diferencia entre los dos modelos no está en las columnas ni en el algoritmo: está en el target que predices y en la población sobre la que entrenas. El ingenuo entrena sobre los 6000 clientes para predecir target_ingenuo; el reformulado entrena solo sobre los 2484 accionables para predecir target_reformulado.
## Por qué el ingenuo da un AUC casi perfecto
Un AUC de 0,99 debería ponerte en guardia, no contento. Ya aprendiste en el primer caso a desconfiar de los números demasiado buenos, aunque allí la causa era otra (una columna que contenía la respuesta). Aquí no hay fuga de columna: el AUC alto es real y tiene una explicación inocente. El modelo ingenuo tiene que separar a los que tienen cero actividad el último mes de los que no. Y resulta que buena parte de esos "inactivos" son muertos y nunca-activos: clientes con cero movimientos, cero pagos, cero logins en todos los meses. Separar a alguien que no ha hecho absolutamente nada de alguien que usa la cuenta es trivial. El modelo no está siendo listo: le has puesto un problema fácil.
El reformulado tiene un trabajo mucho más duro: dentro de la población accionable —gente que toda ella está más o menos activa y tiene nómina— tiene que distinguir al que se está enfriando del que sigue bien. Esa frontera es sutil, porque los dos grupos se parecen: ambos tienen actividad, ambos tienen nómina, la diferencia está en una tendencia que baja despacio. Un AUC de 0,73 ahí no es un mal modelo: es un modelo honesto resolviendo un problema difícil de verdad. El contraste entre los dos AUC no mide qué modelo es mejor; mide qué problema es más fácil, y el fácil es el inútil.
Resiste hoy la conclusión que grita el AUC. Es contraintuitivo después de siete casos donde un número más alto era casi siempre mejor, pero aquí el 0,99 no es el premio: es el síntoma. Mañana vas a mirar a quién marca de verdad cada modelo, y ahí se verá que el AUC altísimo venía de clasificar bien a gente sobre la que no puedes hacer nada. Un AUC no se interpreta solo: se interpreta junto con la pregunta que el modelo responde.
Consejo de senior: cuando un modelo te dé un AUC sospechosamente alto, no celebres: pregúntate qué está separando con tanta facilidad. Casi siempre la respuesta es que el problema que le has puesto es más fácil de lo que creías, y a veces —como aquí— es que el problema fácil no es el que importa. Un número excelente en la pregunta equivocada vale menos que uno mediocre en la correcta.
## comentarios
Reporta erratas, ayuda a otros o comparte tu opinión. Sé constructivo.
Inicia sesión para comentar y responder.
cargando comentarios...
Regístrate para guardar tu progreso.