lección 4
Un modelo por encuadre, y el AUC que engaña
Un RandomForest para cada encuadre: el ingenuo da un AUC altísimo 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. Todas salen de la actividad de julio a mayo: la tabla tiene un corte el 1 de junio, y lo que pasa después (el mes de junio, que define target_ingenuo, y el enfriamiento que define target_reformulado) queda fuera de las features. 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 tan alto
Un AUC de 0,94 debería ponerte en guardia, no contento. Ya aprendiste en el primer caso a desconfiar de los números demasiado buenos, y lo primero es buscar la fuga. Aquí hubo una, y la tabla ya viene sin ella: target_ingenuo es «sin actividad en junio», y si las features incluyeran junio, el modelo vería la respuesta dentro de sus propias columnas (la actividad reciente sería cero justo en los que el target marca). Con junio dentro, este mismo modelo da 0,995; con el corte el 1 de junio, 0,94. Ese 0,94 que queda ya no es fuga: 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,68 ahí no es un mal modelo: es un modelo honesto resolviendo un problema difícil de verdad, con un mes de antelación. 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,94 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.