Ciencia de datos

Gini, KS y AUC: Cómo Medir la Calidad de un Modelo de Credit Scoring

Cuando un analista de riesgo presenta un nuevo scorecard ante el comité de dirección, la primera pregunta que recibe es invariablemente la misma: ¿cómo de bueno es el modelo? La respuesta técnica correcta implica tres métricas: Gini, KS y AUC. Con la que se mide la capacidad del modelo de separar a los buenos pagadores de los malos pagadores.

Estas tres métricas son las más usadas en la industria del credit scoring para evaluar la discriminación de un modelo. No son independientes, están matemáticamente relacionadas, pero cada una tiene una interpretación distinta y enfatiza aspectos diferentes del comportamiento del modelo. Entender qué mide cada una, cómo se calculan y cuáles son sus limitaciones es imprescindible para evaluar correctamente la calidad de un scorecard.

En una entrada anterior de esta serie explicamos la diferencia entre discriminación y calibración. Un concepto importante, ya que un modelo puede discriminar bien y estar mal calibrado. En esta entrada nos centramos en la discriminación: qué miden estas métricas, cómo se interpretan y cuándo cada una es más apropiada.

El constructor de scorecards del laboratorio de Analytics Lane calcula las tres métricas en el paso 7 de validación, con las curvas ROC, de Lorenz y KS representadas gráficamente para train y test simultáneamente.

El problema que resuelven: ordenar el riesgo

Antes de entender las métricas hay que entender el problema que resuelven.

Un scorecard asigna una puntuación a cada cliente. El objetivo es que los clientes con score más alto sean mejores pagadores que los clientes con score más bajo, es decir, que el modelo ordene correctamente el riesgo. La discriminación mide precisamente eso: cuánto mejor que el azar es el modelo ordenando los clientes por su riesgo real.

Un modelo perfectamente aleatorio asigna scores independientemente del riesgo real, los buenos y los malos pagadores se distribuyen uniformemente en toda la escala de scores. Un modelo perfecto asigna los scores más altos a todos los buenos pagadores y los más bajos a todos los malos, sin ningún solapamiento.

En la realidad los modelos se sitúan entre estos dos extremos. Gini, KS y AUC miden dónde está el modelo en ese espectro, cuánto se acerca a la discriminación perfecta y cuánto mejor es que el azar.

La curva ROC y el AUC

Construcción de la curva ROC

La curva ROC (Receiver Operating Characteristic) se construye variando el umbral de clasificación del modelo desde el score más alto hasta el más bajo y calculando en cada punto la tasa de verdaderos positivos (sensibilidad) y la tasa de falsos positivos (1 − especificidad).

En el contexto del credit scoring:

  • Verdadero positivo: cliente malo que el modelo clasifica correctamente como malo (rechazado)
  • Falso positivo: cliente bueno que el modelo clasifica incorrectamente como malo (rechazado siendo bueno)

Para cada umbral de score posible: TPR = \frac{\text{Malos correctamente rechazados}}{\text{Total de malos}} \quad FPR = \frac{\text{Buenos incorrectamente rechazados}}{\text{Total de buenos}}

La curva ROC representa los pares (FPR, TPR) para todos los umbrales posibles. Un modelo perfecto pasa por la esquina superior izquierda (FPR = 0, TPR = 1), rechaza todos los malos sin rechazar ningún bueno. Un modelo aleatorio produce la diagonal, por cada malo rechazado se rechaza proporcionalmente el mismo número de buenos.

El AUC: área bajo la curva ROC

El AUC (Area Under the Curve) es el área bajo la curva ROC. Por definición está entre 0 y 1:

  • AUC = 0,5: modelo aleatorio, la curva coincide con la diagonal
  • AUC = 1: discriminación perfecta, la curva pasa por la esquina superior izquierda
  • AUC < 0,5: el modelo discrimina peor que el azar, hay que invertir las predicciones

La interpretación probabilística del AUC es especialmente intuitiva: el AUC es la probabilidad de que, tomando un buen pagador y un mal pagador al azar, el modelo asigne un score más alto al buen pagador.

Con AUC = 0,82 el modelo asigna correctamente un score más alto al buen pagador en el 82% de los pares posibles. En el 18% restante el mal pagador tiene un score más alto que el buen pagador, una clasificación incorrecta.

Esta interpretación hace el AUC especialmente útil para comunicar la calidad del modelo a audiencias no técnicas: “nuestro modelo identifica correctamente al mejor pagador de cada par en el 82% de los casos” es inmediatamente comprensible.

La curva de Lorenz y el Gini

Construcción de la curva de Lorenz

La curva de Lorenz, también llamada curva de Gini o curva de poder predictivo en el contexto del credit scoring, se construye de forma distinta a la curva ROC.

Se ordenan todos los clientes de mayor a menor score. Para cada percentil de la población ordenada se calcula qué porcentaje acumulado de los malos pagadores ha sido capturado:

  • Eje X: porcentaje acumulado de clientes (de mayor a menor score)
  • Eje Y: porcentaje acumulado de malos pagadores capturados

Un modelo perfecto captura todos los malos pagadores antes de llegar al umbral donde terminan los buenos, la curva sube verticalmente hasta el 100% de malos y luego se mantiene horizontal. Un modelo aleatorio captura los malos pagadores de forma proporcional a su representación en la población, la curva coincide con la diagonal.

El Gini: el área entre las curvas

El Gini se calcula como el doble del área entre la curva de Lorenz y la diagonal: Gini = 2 \times \text{Área entre la curva de Lorenz y la diagonal}

O equivalentemente, a partir del AUC: \boxed{Gini = 2 \times AUC - 1}

Esta relación matemática entre el Gini y el AUC es fundamental. Con AUC = 0,82: Gini = 2 \times 0,82 - 1 = 0,64$$

El Gini tiene rango entre −1 y 1, aunque en la práctica se sitúa entre 0 y 1:

  • Gini = 0: modelo aleatorio
  • Gini = 1: discriminación perfecta
  • Gini negativo: el modelo discrimina al revés (en la práctica indica un error)

La interpretación del Gini

El Gini mide cuánto mejor es el modelo que el azar para capturar malos pagadores concentrándolos en los scores más bajos. Un Gini de 0,64 significa que el modelo es un 64% mejor que el azar en esta tarea.

Otra interpretación práctica: si se rechaza al 20% de los solicitantes con los scores más bajos, ¿qué porcentaje de los malos pagadores se habrá rechazado? Con un Gini alto se rechaza una proporción de malos pagadores muy superior al 20%. Con un Gini de cero se rechaza exactamente el 20%, sin ninguna selección.

La estadística KS

Construcción de la curva KS

El KS (Kolmogorov-Smirnov) se basa en las distribuciones acumuladas de scores de buenos y malos pagadores por separado.

Se ordena la población por score de mayor a menor. Para cada punto de corte posible se calcula:

  • La distribución acumulada de buenos pagadores, qué porcentaje de los buenos tiene score superior a ese umbral
  • La distribución acumulada de malos pagadores, qué porcentaje de los malos tiene score superior a ese umbral

Representadas en el mismo gráfico, estas dos curvas empiezan en 0% (nadie supera el umbral máximo) y terminan en 100% (todos superan el umbral mínimo). En un modelo aleatorio las dos curvas coinciden. En un modelo con discriminación la curva de buenos está por encima de la de malos, los buenos tienen scores sistemáticamente más altos.

El estadístico KS

El KS es la máxima distancia vertical entre las dos distribuciones acumuladas: KS = \max_{\text{score}} |F_{\text{buenos}}(\text{score}) - F_{\text{malos}}(\text{score})|

El punto donde se alcanza esa distancia máxima es el punto KS, el umbral de score que maximiza la separación entre buenos y malos pagadores. Es el umbral óptimo de clasificación si el objetivo es maximizar la diferencia entre la tasa de captura de malos y la tasa de captura de buenos.

El KS tiene rango entre 0 y 1:

  • KS = 0: las dos distribuciones son idénticas, sin discriminación
  • KS = 1: las dos distribuciones están completamente separadas, discriminación perfecta

La interpretación del KS

El KS mide la máxima separación alcanzable entre buenos y malos en un único punto de corte. Un KS de 0,42 significa que en el mejor umbral posible la diferencia entre la tasa de captura de malos y la tasa de captura de buenos es del 42%.

A diferencia del Gini y el AUC, que evalúan el modelo en todos los umbrales posibles, el KS se centra en el mejor umbral. Esto tiene ventajas e inconvenientes:

  • Ventaja: el KS indica directamente el mejor umbral de clasificación y cuánta separación se puede conseguir en ese punto. Es la métrica más directamente relacionada con la decisión de aprobar/rechazar.
  • Inconveniente: dos modelos con el mismo KS pueden tener comportamientos muy distintos en el resto de la distribución. Un modelo puede tener un KS alto concentrado en un rango estrecho de scores y ser mediocre en el resto. El Gini, al integrar sobre toda la distribución, captura mejor la discriminación global.

La relación entre las tres métricas

Las tres métricas están relacionadas pero no son equivalentes. La relación matemática exacta es: Gini = 2 \times AUC - 1

El KS no tiene una relación algebraica simple con el Gini y el AUC, depende de la forma específica de las distribuciones de scores de buenos y malos. Pero empíricamente en credit scoring suele cumplirse aproximadamente: KS \approx Gini \times 0,65 \text{ (aproximación empírica)}

Con un Gini de 0,60 se espera un KS de aproximadamente 0,39. Esta aproximación es útil para verificar la consistencia de las métricas, si el KS está muy alejado de este valor esperado puede indicar un problema en el cálculo.

Cuándo las métricas pueden discrepar

Aunque en la mayoría de los casos el ranking de los modelos es el mismo según las tres métricas, pueden discrepar cuando:

  • Las distribuciones tienen formas muy distintas. Un modelo que discrimina muy bien en el extremo inferior de la distribución (malos pagadores con scores muy bajos) pero moderadamente en el resto puede tener un KS alto pero un Gini moderado. El KS captura el punto de máxima separación, el Gini promedia sobre toda la distribución.
  • Hay efectos de umbral. Si la entidad usa un umbral de score fijo para aprobar/rechazar, lo que importa es la discriminación alrededor de ese umbral, no la discriminación global. El KS en ese umbral específico es más informativo que el Gini global.

Los umbrales prácticos en credit scoring

La industria del credit scoring usa convenciones establecidas para interpretar estas métricas. Los umbrales más utilizados para el Gini son:

GiniInterpretación
< 0,20Discriminación muy pobre — modelo no apto para producción
0,20 – 0,35Discriminación débil — marginal para producción
0,35 – 0,50Discriminación aceptable — estándar mínimo en consumer credit
0,50 – 0,65Buena discriminación — estándar típico en entidades competitivas
0,65 – 0,75Muy buena discriminación — difícil de superar con datos estándar
> 0,75Discriminación excepcional — sospechoso, revisar data leakage

Estos umbrales varían según el producto y el mercado:

  • Crédito al consumo: Gini típico entre 0,45 y 0,65. Las variables de bureau de crédito (historial de pagos, nivel de endeudamiento) aportan mucho poder predictivo.
  • Hipotecas: Gini típico entre 0,35 y 0,55. Las hipotecas tienen tasas de default más bajas y los clientes son más homogéneos, lo que hace más difícil la discriminación.
  • Tarjetas de crédito: Gini típico entre 0,50 y 0,70. Las tarjetas tienen más datos transaccionales disponibles que mejoran la discriminación.
  • Microcréditos y préstamos informales: Gini típico entre 0,25 y 0,45. La escasez de historial crediticio limita el poder predictivo.

Para el KS los umbrales equivalentes son aproximadamente:

KSInterpretación
< 0,20Discriminación muy pobre
0,20 – 0,30Discriminación débil
0,30 – 0,40Discriminación aceptable
0,40 – 0,50Buena discriminación
> 0,50Muy buena discriminación

Gini en train vs test: la brecha de sobreajuste

Una de las comprobaciones más importantes en la validación de un scorecard es la diferencia entre el Gini en el conjunto de entrenamiento y el Gini en el conjunto de test.

Si el modelo ha sobreajustado, memorizado el dataset de entrenamiento en lugar de aprender relaciones generalizables, el Gini en train será significativamente mayor que en test. La diferencia esperada en un modelo bien construido es pequeña:

Diferencia Gini (train − test)Interpretación
< 0,03Sin sobreajuste — modelo bien generalizado
0,03 – 0,05Sobreajuste leve — aceptable
0,05 – 0,08Sobreajuste moderado — revisar el modelo
> 0,08Sobreajuste severo — el modelo no es válido para producción

Un sobreajuste elevado en un scorecard basado en WOE y regresión logística — que es un modelo relativamente simple, suele indicar uno de estos problemas:

  • Variables con data leakage que el modelo ha memorizado
  • Bins demasiado finos con pocas observaciones, WOE inestable que el modelo ha sobreajustado
  • Dataset de entrenamiento demasiado pequeño para el número de variables
  • Partición train/test problemática (baja concordancia entre las distribuciones)

El Gini out-of-time: la validación más exigente

Como vimos en el artículo sobre el PSI, la validación out-of-time (OOT), entrenar con datos de un período y validar con datos de un período posterior, es la prueba más exigente para un scorecard.

El Gini OOT mide si el modelo mantiene su poder discriminativo cuando se aplica a clientes de un período temporal distinto al de entrenamiento. Es la mejor aproximación disponible al rendimiento real en producción.

La diferencia esperada entre el Gini en test y el Gini OOT depende de cuánto tiempo separa ambos períodos y de cuánto ha cambiado la distribución de clientes. Con un PSI bajo (distribución estable) la diferencia debería ser pequeña. Con un PSI alto (distribución cambiada) la diferencia puede ser mayor y es una señal de que el modelo puede degradarse en producción.

Una caída del Gini OOT superior a 5-8 puntos respecto al Gini en test es una señal de alerta que merece investigación antes de desplegar el modelo.

Las limitaciones de las métricas de discriminación

No miden calibración

Esta es la limitación más importante y la que más frecuentemente se olvida. Como explicamos en el artículo sobre calibración vs discriminación, un Gini excelente no garantiza que las probabilidades predichas sean correctas.

Un modelo con Gini de 0,65 puede estar prediciendo que todos sus clientes tienen una probabilidad de default del 2-4% cuando la tasa real es del 8%. El modelo discrimina bien, identifica correctamente quiénes son relativamente mejores o peores, pero sus probabilidades absolutas son incorrectas. Para la estimación de pérdidas esperadas y para la gestión del capital regulatorio eso es un problema grave.

Por eso el Gini siempre debe complementarse con el análisis de calibración, la curva de calibración, el ECE y el Brier Score.

Son métricas globales que pueden ocultar heterogeneidad

Un Gini de 0,60 a nivel global puede esconder un Gini de 0,75 en el segmento de clientes jóvenes y un Gini de 0,40 en el segmento de autónomos. Si la cartera está concentrada en autónomos, el modelo es mucho peor de lo que sugiere el Gini global.

Por eso la validación de un scorecard siempre debe incluir el análisis por segmento: Gini y KS calculados por producto, canal, rango de importe y cualquier otra dimensión relevante para el negocio.

No reflejan estabilidad temporal

Un Gini excelente en el momento de la validación puede degradarse rápidamente si la distribución de los clientes cambia. El PSI, y no el Gini, es la métrica que monitoriza esa estabilidad. El Gini dice cuánto discrimina el modelo hoy. El PSI dice si el modelo seguirá discriminando igual de bien mañana.

Pueden ser engañosas con tasas de eventos muy bajas o muy altas

Con tasas de eventos muy bajas (< 1%) el AUC puede ser artificialmente alto aunque el modelo tenga poco poder predictivo práctico. Con tasas muy altas (> 30%) el Gini puede parecer bajo aunque el modelo discrimine razonablemente bien. En estos casos el Gini debe interpretarse con precaución y complementarse con análisis de las tasas de captura en distintos umbrales.

Cómo comunicar las métricas a distintas audiencias

Con el equipo técnico

Presentar las tres métricas con sus curvas. Mostrar train vs test y, si está disponible, out-of-time. Incluir el análisis de calibración junto a las métricas de discriminación. Discutir la brecha de sobreajuste y las diferencias por segmento.

Con el comité de riesgo

Centrarse en el Gini como métrica principal, es la más conocida y la más usada en los informes de gestión. Mostrar la comparativa con el modelo anterior (Champion vs Challenger) y con los benchmarks del sector. Traducir la mejora del Gini a términos financieros: cuántos malos pagadores adicionales se capturan con el mismo umbral de rechazo.

Con el regulador

Presentar todas las métricas exigidas por las guías de validación (Gini, KS, AUC en train, test y OOT). Documentar la metodología de cálculo. Incluir el análisis de calibración. Mostrar la estabilidad temporal con el PSI. Todo con la trazabilidad del log de decisiones del proceso de construcción.

Las métricas en el laboratorio de Analytics Lane

El constructor de scorecards del laboratorio calcula las tres métricas en el paso 7 de validación:

  • Tabla de métricas comparativa. Gini, KS y AUC calculados sobre train y test simultáneamente. La diferencia train, test se resalta si supera el umbral de sobreajuste.
  • Curva ROC. Representada para train y test en el mismo gráfico con el AUC de cada uno. La diagonal de referencia (modelo aleatorio) siempre visible.
  • Curva de Lorenz. Representada para train y test con el Gini de cada uno. La diagonal de referencia y la curva del modelo perfecto como referencias.
  • Curva KS. Las dos distribuciones acumuladas (buenos y malos) representadas en el mismo gráfico. El punto de máxima separación marcado visualmente con el valor del KS.

La aplicación Champion vs Challenger usa estas mismas métricas para comparar dos modelos sobre el mismo dataset, añadiendo la comparativa directa y el análisis de concordancia.

Conclusión

Gini, KS y AUC son las tres caras de la misma realidad: la capacidad del modelo de ordenar correctamente los clientes por su riesgo de crédito. Son matemáticamente relacionadas, el Gini es exactamente el doble del AUC menos uno, pero enfatizan aspectos distintos:

  • El AUC tiene la interpretación probabilística más intuitiva: la probabilidad de que el modelo identifique correctamente al mejor pagador de un par aleatorio.
  • El Gini es la métrica estándar en la industria, la más usada en informes de gestión y comunicaciones regulatorias. Integra la discriminación sobre toda la distribución de scores.
  • El KS identifica el punto de máxima separación entre buenos y malos pagadores, el umbral óptimo de clasificación si el objetivo es maximizar la diferencia en un único punto de corte.

Las tres son necesarias y ninguna es suficiente por sí sola. Un Gini excelente sin análisis de calibración, sin validación out-of-time, sin análisis por segmento y sin monitorización del PSI es solo una parte de la historia. La validación completa de un scorecard requiere todas estas piezas juntas.

Esta serie de artículos ha cubierto el proceso completo de construcción y validación de un scorecard, desde el WOE y el IV hasta el Champion vs Challenger, pasando por el binning, la regresión logística, la calibración y el PSI. El constructor de scorecards del laboratorio implementa cada uno de estos pasos de forma interactiva, completamente en el navegador y sin que los datos salgan de tu dispositivo.

Nota: Las imágenes de este artículo fueron generadas utilizando un modelo de inteligencia artificial.

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez

Recent Posts

Curiosidad: De dónde vienen foo, bar y foobar

Si revisáis código o documentación de otros programadores, tarde o temprano os toparéis con dos…

5 días ago

BG/NBD + Gamma/Gamma: el modelo probabilístico para CLV en compras continuas

Los dos artículos anteriores cubrieron el CLV clásico —una fórmula útil pero que trata a…

1 semana ago

Errores habituales al trabajar con DataFrames grandes en Pandas (y cómo evitarlos)

Hay un momento muy concreto en la vida de casi todo análisis: el código que…

2 semanas ago

Champion vs Challenger: Cómo los Bancos Validan Modelos Nuevos antes de Ponerlos en Producción

Has construido un nuevo modelo de credit scoring. Las métricas de validación son mejores que…

2 semanas ago

Cómo Comparar Dos Hipotecas con Todos los Gastos Incluidos

Comparar dos hipotecas parece sencillo: la que tenga el TIN más bajo es la mejor…

3 semanas ago

Segmentación RFM: cómo clasificar tu cartera de clientes antes de calcular el CLV

En un artículo anterior vimos la fórmula clásica del CLV junto a sus limitaciones. Una…

3 semanas ago

This website uses cookies.