7 min de lectura
Una base de clientes de ecommerce. Dos perfiles claramente distintos: quienes compran una vez al trimestre, están suscritos al newsletter, responden a campañas de reactivación; y quienes llegan desde un comparador de precios, compran en el momento en que encuentran el mejor precio, y no vuelven independientemente de qué se les ofrezca. Ambos grupos están en la misma tabla. El modelo de propensión de recompra se entrena sobre los dos sin distinción.
El resultado es predecible. El modelo aprende a ordenar bien el primer grupo, que tiene señal comportamental estable y representación mayoritaria en el dataset. El segundo grupo recibe predicciones que sistemáticamente sobreestiman su probabilidad de recompra. La performance agregada se ve razonable. Nadie lo nota hasta que el equipo de marketing revisa las conversiones por segmento y descubre que la mitad de los contactos del último mes correspondían a clientes que nunca iban a volver. La raíz del error está en la definición del problema.
Dos poblaciones, dos dinámicas, una sola variable de salida
La confusión empieza antes de abrir el notebook. En ambos grupos la variable target es la recompra en los próximos 90 días. La lógica parece correcta porque la pregunta es la misma para los dos. El error está en asumir que la misma pregunta tiene la misma estructura causal en poblaciones distintas.
Para un cliente recurrente, la probabilidad de recompra depende de variables comportamentales: tiempo desde la última compra, frecuencia histórica, respuesta a comunicaciones anteriores, categorías exploradas. Hay señal clara. El modelo puede generalizar esa señal porque los patrones son consistentes dentro del grupo.
Para un cliente one-shot, esas mismas variables son ruidosas o directamente irrelevantes. La frecuencia histórica es baja por definición. La respuesta a comunicaciones puede ser alta si llegó por un canal de comparación activa, pero eso no predice recompra. La categoría que compró puede ser la única que alguna vez buscó a ese precio. Las variables que explican el comportamiento del recurrente no tienen poder predictivo sobre el one-shot, y viceversa.
Cuando un modelo se entrena sobre los dos, las correlaciones del grupo mayoritario dominan. El gradiente de entrenamiento ajusta los pesos para reducir el error en el conjunto completo, y ese conjunto tiene más recurrentes que one-shots. El resultado es un modelo que funciona como un clasificador de recurrentes aplicado mecánicamente a todos.
¿Cuáles son las señales de que hay dos poblaciones mezcladas?
Hay señales detectables antes de entrenar el primer modelo:
- Aparición de una distribución bimodal en la variable de frecuencia de compra. Está es la más directa. Si el histograma de compras por cliente tiene dos picos separados, hay dos poblaciones. Una con media en 1-1,5 compras por período, otra con media en 4-6. Un solo modelo va a intentar aprender la dinámica de ambas con la misma función.
- Correlaciones que invierten signo entre segmentos. Si se parte el dataset entre clientes con una sola compra y clientes con dos o más, y se calcula la correlación entre "tiempo desde la última compra" y "probabilidad de recompra" en cada subgrupo, esa correlación puede tener signo opuesto. En recurrentes, más tiempo sin comprar puede predecir recompra próxima (ciclo estacional, caída en el engagement que precede a una campaña efectiva). En one-shots, más tiempo simplemente confirma que no van a volver.
- Si el equipo de negocio describe en la reunión inicial que hay clientes que "siempre vuelven" y clientes que "compraron por precio", eso es una hipótesis sobre dos poblaciones con dinámicas distintas. Esto es una señal operativa y es la señal más importante, y la que más a menudo se pierde porque no aparece en los datos hasta que alguien la pone encima de la mesa.
Tres alternativas y un criterio para elegir
Identificadas las dos poblaciones, hay tres formas de manejarlas.
La primera es construir dos modelos separados, uno por segmento. Cada modelo aprende las correlaciones de su población sin interferencia. Es la opción con mayor potencia predictiva cuando los segmentos son grandes y tienen dinámicas claramente distintas. El costo es operativo: dos pipelines de entrenamiento, dos conjuntos de features relevantes, dos procesos de monitoreo en producción. Vale la pena cuando el segmento minoritario tiene suficiente representación para entrenar un modelo confiable y cuando el error en ese segmento tiene consecuencias de negocio significativas.
La segunda es incluir el segmento como feature categórica. El modelo aprende que la pertenencia al segmento modifica las predicciones. Es más simple que dos modelos separados y funciona cuando las dinámicas son distintas pero no completamente independientes. El riesgo es que el modelo puede ignorar la feature si el efecto no es lo suficientemente fuerte o si hay correlación con otras variables que ya lo capturan parcialmente.
La tercera es modelar la interacción explícita entre la feature de segmento y las variables más importantes. En vez de dejar que el modelo descubra las interacciones, se las codifica, por ejemplo, "tiempo desde la última compra × segmento recurrente". Esto le da al modelo la información de que la misma variable tiene efectos distintos en cada población. Es más interpretable que dos modelos separados y más expresivo que un indicador categórico sin interacciones.
El criterio para elegir viene del negocio, no del modelo. ¿Qué tan grande es el segmento minoritario? ¿Cuánto cuesta equivocarse en ese segmento? ¿Qué tan distinta es la dinámica observable en los datos? Si el segmento es pequeño, la dinámica es diferente y el costo de error es bajo, la feature categórica alcanza. Si el segmento tiene escala, la dinámica es claramente distinta y el costo de error es alto, dos modelos separados.
La decisión que no se toma en el data lake
El momento crítico de este análisis es la primera conversación con el equipo de negocio, antes de cualquier exploración de datos.
"¿Todos los clientes de la base compran por las mismas razones?" es una pregunta de negocio. La respuesta suele conocerla alguien que trabaja todos los días con el canal de adquisición o con el equipo de CRM. Si la respuesta es "hay clientes que vienen por precio y no vuelven, y clientes que tienen hábito de compra", esa es la hipótesis de dos poblaciones, enunciada en el lenguaje del negocio antes de ver ningún dato.
La exploración de datos confirma o refuta esa hipótesis. Sin la pregunta, la exploración tampoco encuentra la señal porque nadie sabe qué buscar.
Alinear la definición del problema con negocio tiene el mismo peso técnico que entrenar el modelo, y en proyectos de propensión o predicción de comportamiento, es donde se toman las decisiones más importantes. El equipo de datos y el equipo de negocio tienen que llegar a la misma lectura de las poblaciones antes de escribir el primer script para que las predicciones no terminen apuntando a la población equivocada.
Qué mirar cuando el modelo ya está en producción
Si el análisis previo no se hizo y el modelo ya está corriendo, hay señales de degradación que apuntan específicamente a este problema.
La primera señal es tasas de conversión consistentemente más bajas en un subconjunto de clientes con predicciones similares a las del resto. Si los clientes contactados con probabilidad entre 0,6 y 0,7 convierten al 8% en un grupo y al 1% en otro, el modelo tiene calibración distinta en los dos grupos. Las predicciones no son comparables entre segmentos.
La segunda es que el subconjunto con mal rendimiento tiene una característica en común que el modelo no tiene como feature relevante. Si esa característica es "primera compra únicamente", la hipótesis es clara.
La corrección en producción sigue la misma lógica que el diseño inicial: segmentar, analizar las dinámicas por separado, decidir si dos modelos separados o una interacción explícita son la respuesta adecuada. El costo de corregir tarde es más alto que el de definir bien desde el principio, pero el análisis es el mismo.
Separar las poblaciones antes de modelar es reconocer que hay dos problemas distintos que se parecen desde afuera, más que una sofisticación técnica del pipeline.