Los dos artículos anteriores cubrieron el CLV clásico —una fórmula útil pero que trata a toda la cartera con la misma tasa de retención— y la segmentación RFM —que clasifica a cada cliente según su comportamiento pasado pero no predice su comportamiento futuro—. Este artículo cierra esa brecha con el modelo que es, hoy, el estándar de referencia para CLV en negocios no contractuales: BG/NBD combinado con Gamma/Gamma.
A diferencia del CLV clásico, este modelo no necesita asumir una tasa de retención fija. A diferencia del RFM, no se limita a describir: estima, para cada cliente individual, la probabilidad de que siga activo, cuántas transacciones hará en el próximo período, y cuánto va a gastar. La combinación de esas tres piezas es lo que permite obtener el CLV.
Puedes ajustar el modelo sobre tus propios datos en la herramienta BG/NBD del laboratorio. O probar el modelo sobre el conjunto de datos clásico CDNow, incluido en la herramienta como ejemplo.
En un negocio contractual (una suscripción o un seguro) sabes exactamente cuándo un cliente se va: cuando cancela. En un negocio no contractual (e-commerce, retail o donaciones puntuales) el cliente nunca te dice que se ha ido. Simplemente deja de comprar, y solo tras un período de silencio puedes empezar a sospechar que ha abandonado.
Esto crea un problema estadístico genuino: con los mismos datos observados, digamos, un cliente que compró 5 veces y la última hace 60 días, pueden coexistir dos historias completamente distintas. Puede ser un cliente de baja frecuencia que comprará otra vez en cualquier momento, o puede ser un cliente que ya abandonó hace 59 días y nunca volverá. El dato observado es identico; la interpretación correcta depende de un proceso latente que no observamos directamente.
El modelo BG/NBD fue diseñado exactamente para esta situación. No intenta adivinar si un cliente concreto se ha ido; en su lugar, modela la probabilidad de que siga activo dado todo lo que sabemos sobre su comportamiento y el de clientes similares.
BG/NBD combina dos supuestos sobre el comportamiento de cada cliente, ambos no observables directamente. El desarrollo matemático de este modelo se puede consultar en una entrada anterior.
Mientras un cliente está activo, sus compras siguen un proceso de Poisson con tasa individual \lambda. Esto significa que las compras ocurren de forma aleatoria en el tiempo, con una frecuencia esperada constante mientras dure la actividad.
Pero no todos los clientes compran con la misma frecuencia. Algunos son compradores intensivos, otros ocasionales. Esta heterogeneidad se modela asumiendo que \lambda varía entre clientes según una distribución Gamma con parámetros r y \alpha: \lambda \sim \text{Gamma}(r, \alpha)
La distribución Gamma es la elección natural aquí porque es conjugada con Poisson, lo que simplifica enormemente las matemáticas, y porque su forma flexible captura bien la asimetría típica de las tasas de compra reales: muchos clientes con frecuencia baja y una cola de clientes con frecuencia alta.
Después de cada compra, el cliente puede abandonar con probabilidad p, o seguir activo con probabilidad 1-p. Esto convierte el tiempo de vida del cliente en una variable geométrica: el número de compras hasta el abandono sigue esa distribución.
Igual que con \lambda, p varía entre clientes. Se modela con una distribución Beta: p \sim \text{Beta}(a, b)
La Beta es la elección natural para modelar probabilidades porque está acotada entre 0 y 1 y es muy flexible en su forma.
El nombre del modelo viene de esta estructura compuesta: el proceso de abandono es Beta-Geométrico (Beta-Geometric, BG) y, cuando se integra sobre la heterogeneidad de \lambda, el número de compras de un cliente activo sigue una distribución Binomial Negativa (Negative Binomial Distribution, NBD). De ahí BG/NBD.
En el ejemplo del laboratorio, sobre el dataset CDNOW con 2.357 clientes, el ajuste produce:
¿Qué nos dicen estos números?
La media de la distribución Gamma de \lambda es r/α = 0,254/5,447 ≈ 0,047 compras por unidad de tiempo, lo que confirma que estamos ante un negocio de baja frecuencia transaccional, compatible con CDNOW, donde las compras de CDs no son diarias.
La media de la distribución Beta de p es a/(a+b) = 0,607/3,254 ≈ 0,187. Esto significa que, en promedio, cada cliente activo tiene aproximadamente un 18,7% de probabilidad de abandonar después de cualquier compra dada. Pero esto es solo la media: la verdadera utilidad del modelo está en cómo combina esta heterogeneidad poblacional con el historial específico de cada cliente para producir una estimación individual.
El ajuste se realiza por máxima verosimilitud. El log-verosimilitud de -17.138,2 con 272 iteraciones no tiene una interpretación absoluta —solo es comparable entre modelos ajustados sobre los mismos datos— pero las iteraciones bajas y el valor estable indican convergencia limpia del optimizador.
Una propiedad elegante del modelo BG/NBD es que no necesita el historial completo de transacciones de cada cliente. Le basta con tres números, conocidos como las estadísticas suficientes:
Esto explica por qué el resumen de cartera reporta que 1.218 clientes (52%) tienen x=0: son clientes de una sola compra, sin repetición observada. El modelo trata este grupo de forma especial, porque para ellos la información disponible es mínima: solo sabemos que compraron una vez hace T unidades de tiempo, sin ninguna señal adicional sobre su tasa de compra o su probabilidad de abandono específica.
La pregunta que todo el modelo busca responder el modelo es: dado el historial (x, t_x, T) de un cliente, ¿cuál es la probabilidad de que siga activo hoy?
La fórmula de P(alive) combina la verosimilitud de dos escenarios, que el cliente siga activo y simplemente no haya comprado en el intervalo (t_x, T), o que haya abandonado en algún momento de ese intervalo, ponderados por sus probabilidades relativas bajo el modelo ajustado. El resultado es un número entre 0 y 1 para cada cliente.
En el ejemplo, la P(alive) media de la cartera es 0,7870, y 1.926 clientes (82%) tienen P(alive) > 0,5. Esto no significa que el 82% de los clientes vaya a comprar pronto: significa que, según el patrón de compra observado y el modelo ajustado a toda la cartera, es más probable que sigan activos que que hayan abandonado.
Es importante notar el patrón en los datos de la tabla: los clientes con P(alive) más alta (0,93-0,98) tienden a tener frecuencia alta (x entre 8 y 43) y última compra reciente respecto a T. Por ejemplo, el cliente 1203 tiene x=40, última compra en t_x=71,0 sobre un T=72: compró 40 veces y la última fue casi en el momento de corte, lo que produce P(alive) = 0,9807. En cambio, un cliente con la misma frecuencia pero cuya última compra fuera mucho antes de T tendría una P(alive) sensiblemente menor, porque el silencio prolongado después de un patrón de compra frecuente es más sugestivo de abandono que el mismo silencio en un comprador esporádico.
Este es exactamente el tipo de matiz que el CLV clásico no puede capturar: dos clientes con la misma frecuencia histórica pueden tener probabilidades de actividad muy distintas según cuándo fue su última compra relativa a su patrón habitual.
Una vez ajustado el modelo, se puede proyectar cuántas transacciones esperamos de cada cliente en un horizonte futuro (por ejemplo, las próximas 52 semanas). Esta proyección combina dos cosas: la tasa de compra individual estimada de cada cliente (informada tanto por su historial como por la distribución poblacional) y su probabilidad de seguir activo durante ese horizonte.
En el ejemplo, la cartera completa de 2.357 clientes genera una proyección de 1.967 transacciones totales esperadas en las próximas 52 semanas. Eso es menos de una transacción por cliente en promedio, lo que es coherente con el carácter de baja frecuencia que vimos en los parámetros del modelo Gamma.
Mirando la tabla de clientes top, el rango de transacciones esperadas (columna E[X]) va de 4,23 a 23,80 para los clientes de mayor valor, una dispersión enorme que refleja la heterogeneidad real de comportamiento dentro de la cartera. El cliente 1203, con 40 compras históricas y P(alive) de 0,98, tiene una expectativa de 22,72 transacciones futuras, prácticamente una compra cada dos semanas durante el año siguiente.
BG/NBD predice cuántas transacciones hará un cliente, pero no cuánto va a gastar en cada una. Para eso se necesita un segundo modelo: Gamma/Gamma, que estima el valor monetario esperado por transacción.
El supuesto central de Gamma/Gamma es que el valor monetario de cada transacción de un cliente se distribuye Gamma con un parámetro de forma común p y un parámetro de escala ν específico de cada cliente. A su vez, ν entre clientes se distribuye Gamma con parámetros q y γ. Esta estructura jerárquica permite que el modelo distinga entre la variabilidad del gasto dentro de las transacciones de un mismo cliente (ruido) y la variabilidad real entre clientes (heterogeneidad genuina de valor).
Un supuesto importante del modelo Gamma/Gamma es que el valor monetario por transacción es independiente de la frecuencia de compra. Esto no siempre se cumple en la práctica, algunos negocios tienen clientes que compran mucho y gastan poco por transacción, o viceversa, pero es una simplificación razonable en la mayoría de los casos y permite que BG/NBD y Gamma/Gamma se ajusten de forma independiente y luego se combinen.
En el ejemplo, los parámetros ajustados son p = 4,683, q = 4,190, γ = 24,391, con log-verosimilitud de -4.884,6. El valor monetario esperado de cada cliente (columna E[M] en la tabla) se calcula combinando estos parámetros poblacionales con el historial de gasto observado de cada cliente individual, mediante un estimador bayesiano tipo shrinkage: clientes con poco historial se ajustan hacia la media poblacional, mientras que clientes con historial extenso confían más en su propio patrón observado.
El CLV de cada cliente se obtiene combinando las tres piezas: CLV = E[\text{Transacciones futuras}] \times E[\text{Valor monetario por transacción}] \times \text{Margen} \times \text{Factor de descuento}
En la práctica, esto significa: tomar la proyección de transacciones del modelo BG/NBD para el horizonte elegido, multiplicarla por el valor monetario esperado del modelo Gamma/Gamma, aplicar el margen bruto configurado, y descontar al presente según la tasa de descuento anual.
Con los parámetros del ejemplo, margen bruto y tasa de descuento configurados en la herramienta, el resultado agregado es un CLV medio por cliente de 29,14 € y un CLV total de cartera de 68.682 € sobre las próximas 52 semanas.
Mirando la tabla de clientes individuales, el cliente con mayor CLV (1981) alcanza 939,88 €, casi 32 veces el promedio de cartera. Esto ilustra una característica típica de las distribuciones de CLV calculadas con estos modelos: están fuertemente concentradas, con un pequeño número de clientes aportando una fracción desproporcionada del valor total. La distribución de CLV que muestra la herramienta hace visible esta asimetría de un vistazo.
Ajustar un modelo no garantiza que represente bien la realidad. La herramienta incluye una validación de calibración que compara las frecuencias de compra predichas por el modelo contra las frecuencias observadas realmente en los datos, agregadas por número de transacciones.
En el ejemplo, el resultado es “Ajuste aceptable. Algunas frecuencias se desvían moderadamente (desviación L1 = 0,06)”. La desviación L1 mide la distancia total entre la distribución predicha y la observada; valores cercanos a 0 indican mejor ajuste. Un 0,06 es razonable pero no perfecto, lo que es habitual en datos reales con cierta heterogeneidad que el modelo no captura completamente.
Cuando el ajuste no es bueno, las causas más comunes son: una población de clientes que en realidad mezcla varios segmentos de comportamiento muy distintos (lo que sugeriría ajustar modelos separados por segmento), un período de calibración demasiado corto para estimar bien la heterogeneidad, o un negocio donde el supuesto de proceso de Poisson no se sostiene bien, por ejemplo, si hay fuerte estacionalidad o promociones puntuales que generan picos de compra no aleatorios.
La herramienta permite escoger una fecha de corte para entrenar el modelo y reservar el período posterior para validar las predicciones contra el comportamiento real observado. Esta práctica, habitual en cualquier ejercicio de modelado predictivo, es especialmente importante aquí porque permite responder a la pregunta que de verdad importa: ¿el modelo ajustado sobre el pasado predice razonablemente bien lo que pasó después?
Una mejora pendiente en la herramienta es visualizar esto mediante una curva de supervivencia agregada de la cartera, mostrando el ajuste del modelo en el período de entrenamiento y su proyección en el período de validación frente al comportamiento real. Es la visualización clásica de los papers originales de Fader y Hardie, y complementa la métrica de calibración añadiendo la dimensión temporal que el P(alive) puntual no muestra.
BG/NBD es apropiado cuando se cumplen estas condiciones:
Cuando las oportunidades de compra son discretas y regulares —una renovación anual, una campaña periódica— el modelo apropiado es BG/BB, que cubriremos en el próximo artículo de la serie. La diferencia no es solo técnica: refleja una estructura de negocio fundamentalmente distinta, y aplicar el modelo equivocado produce estimaciones de CLV poco fiables aunque el ajuste estadístico parezca razonable.
La herramienta BG/NBD del laboratorio permite cargar cualquier CSV de transacciones (cliente, fecha, valor) además del conjunto de datos CDNOW de ejemplo. Los parámetros configurables son la fecha de corte, la unidad de tiempo, el horizonte de predicción, el margen bruto y la tasa de descuento anual.
Los outputs incluyen los parámetros ajustados de ambos modelos con su log-verosimilitud, el resumen de cartera, las distribuciones de P(alive) y CLV, los mapas F/R de transacciones esperadas y P(alive), la tabla completa de clientes con todas las métricas individuales, y la validación de calibración.
Un ejercicio útil: ordena la tabla de clientes por CLV descendente y compara el top 50 con la segmentación RFM del artículo anterior. Es muy probable que la mayoría coincida con el segmento Campeones, pero encontrarás excepciones interesantes, clientes con frecuencia moderada pero valor monetario muy alto que el RFM no destacaría tanto como lo hace el CLV probabilístico.
El siguiente artículo de la serie cubre el modelo BG/BB, la contraparte de BG/NBD para negocios donde las oportunidades de compra son discretas: campañas periódicas, renovaciones, o cualquier contexto donde el cliente tiene o no una transacción en cada “slot” de tiempo bien definido. Veremos cómo cambia la estructura matemática al pasar de procesos continuos (Poisson) a procesos discretos (Binomial), y por qué esa diferencia importa tanto para la precisión del CLV estimado.
Hay un momento muy concreto en la vida de casi todo análisis: el código que…
Has construido un nuevo modelo de credit scoring. Las métricas de validación son mejores que…
Comparar dos hipotecas parece sencillo: la que tenga el TIN más bajo es la mejor…
En un artículo anterior vimos la fórmula clásica del CLV junto a sus limitaciones. Una…
Y llegamos al final de una serie que había programado para ser de tres entradas.…
Un modelo de credit scoring no es un artefacto estático. Se construye en un momento…
This website uses cookies.