En este artículo exploraremos la importancia de la calibración en los modelos de clasificación, destacando cómo esta técnica mejora la fiabilidad y precisión de las probabilidades predichas. La calibración garantiza que las probabilidades asignadas por un modelo reflejen de manera precisa las frecuencias reales de los eventos observados.
Mediante el uso de técnicas como Platt Scaling, analizaremos cómo identificar modelos mal calibrados, evaluar su desempeño y aplicar estrategias para ajustar las predicciones probabilísticas, asegurando que estas sean consistentes con los resultados observados en la realidad. La calibración es necesaria cuando el objetivo no es solo clasificar correctamente, sino también tener probabilidades confiables que respalden la toma de decisiones.
¡Comenzamos!
La calibración de modelos es un concepto que, aunque a menudo se pasa por alto en el campo del Machine Learning, representa una de las propiedades más esenciales de cualquier sistema predictivo. En la práctica y en la literatura, gran parte de la atención se centra en tareas como el análisis exploratorio de datos, el entrenamiento de modelos, el ajuste de hiperparámetros y la evaluación de métricas. Sin embargo, la calibración es fundamental para garantizar la confiabilidad de las probabilidades generadas por los modelos.
Desde mediados del siglo XX, la calibración de modelos surgió como un desafío para garantizar que las probabilidades predichas reflejen las frecuencias reales observadas. Un ejemplo temprano se dio en la predicción meteorológica, donde se esperaba que, si se pronosticaba un 70% de probabilidad de lluvia, efectivamente lloviera el 70% de las veces. Es decir, pensemos que cuando se emite un pronóstico meteorológico, como en este caso un 70% de probabilidad de lluvia, lo que se está diciendo es que, según el modelo de predicción, en condiciones similares, históricamente ha llovido el 70% de las veces. Esta relación que ejemplifico se basa en el principio de que las probabilidades deben estar bien calibradas, es decir, deben coincidir con las frecuencias empíricas de los eventos.
Con la aparición de modelos como los árboles de decisión y los Support Vector Machines, se evidenció que, aunque eran muy buenos en la clasificación, no generaban probabilidades bien calibradas. Es decir, a menudo existía una discrepancia entre las probabilidades predichas por el modelo y las frecuencias reales observadas de los eventos. Para resolver este problema, en los años 90 se desarrollaron técnicas como Platt Scaling y la Regresión Isotónica, entre otras. Más recientemente, con el auge de las redes neuronales profundas, el problema ha resurgido. Aunque estas redes son muy precisas, tienden a ser «demasiado confiadas» en sus predicciones, asignando probabilidades más altas de las que realmente deberían según la frecuencia observada, lo que hace que la calibración de probabilidades sea aún más necesaria para obtener resultados fiables y útiles en la toma de decisiones.
Motivación
Imaginemos que tenemos dos modelos (A y B) que predicen si lloverá mañana. Ambos tienen una precisión del 88%, lo que significa que aciertan en el 88% de las veces.
Matemáticamente, la precisión se define como la proporción de predicciones correctas (tanto positivas como negativas) respecto al total de predicciones realizadas:
En este caso, ambos modelos tienen la misma precisión: de cada 100 predicciones realizadas, 88 son correctas. Aunque esta métrica nos dice que ambos modelos tienen un rendimiento similar en términos de aciertos, no nos cuenta toda la historia sobre su desempeño. Aquí es donde cobra relevancia el concepto de confianza promedio.
La confianza promedio mide el nivel de seguridad que un modelo asigna a sus predicciones, sin importar si estas son correctas o incorrectas. En este ejemplo, el Modelo A tiene una confianza promedio del 89%, mientras que el Modelo B tiene una confianza promedio del 99%. Esto significa que, en promedio, el Modelo A asigna una probabilidad del 89% a sus predicciones, mientras que el Modelo B asigna un 99%.
La confianza promedio se define como el promedio de las probabilidades que el modelo asigna a sus predicciones, ya sean correctas o incorrectas. Matemáticamente, se calcula como:
En este caso, surge una pregunta importante ¿Cuál elegiríamos para decidir si llevar o no paraguas?
A primera vista, el Modelo B parece más seguro, ya que predice con mayor confianza. Pero la confianza promedio por sí sola no garantiza que las probabilidades predichas sean fiables. Supongamos que el Modelo B asigna un 99% de probabilidad de lluvia, pero en la realidad solo acierta el 88% de las veces. Esto significa que el Modelo B está sobreconfiado: asigna probabilidades más altas de lo que debería según la frecuencia real observada. Por otro lado, el Modelo A, con una confianza promedio del 89%, está mucho más alineado con su precisión, lo que sugiere que sus probabilidades están mejor calibradas.
La calibración es muy importante porque no solo queremos que un modelo sea preciso, sino también que sus predicciones reflejen la realidad de manera confiable. Si confiamos ciegamente en el Modelo B por su aparente seguridad, podríamos tomar decisiones equivocadas basadas en probabilidades infladas. En cambio, el Modelo A nos permite tomar decisiones más informadas, ya que sus probabilidades son más representativas de lo que realmente ocurre.
Con este ejemplo ilustrativo, se busca dejar patente que la precisión de un modelo no es suficiente para asumir qué tan bien funciona. Necesitamos que las probabilidades predichas estén bien calibradas para que sean útiles y confiables en la toma de decisiones.
¿Qué es la calibración de un modelo de clasificación?
La calibración de un modelo de clasificación consiste en ajustar las probabilidades que el modelo predice para que correspondan exactamente con las frecuencias observadas en los datos. Esto significa que un modelo bien calibrado asignará probabilidades que reflejan con precisión cómo de frecuente es un evento en la realidad. En otras palabras, si un modelo predice una probabilidad de de que una observación pertenezca al label (, entonces, en un conjunto de datos de prueba donde las predicciones se asignan a un valor de probabilidad , aproximadamente el de las observaciones predichas con esa probabilidad deberían tener realmente el label con valor 1.
Ahondemos un poco más sobre esta última frase, supongamos que tenemos las siguientes predicciones para las 5 observaciones que se muestran en la tabla de abajo:
El modelo asigna P(y=1)=0.8 en todas las muestras. En realidad, el label y=1 ocurre en 4 de las 5 muestras, es decir, un 80% de las veces. La frecuencia observada de y-1 es:
Como el porcentaje real de aciertos (frecuencia observada) coincide con la probabilidad asignada (0.8 = 80%), decimos que el modelo está calibrado para esta probabilidad. Matemáticamente, decimos que un modelo está perfectamente calibrado si p ̂=p, para todas las observaciones en las que el modelo predice una probabilidad , el porcentaje real de observaciones positivas también es igual a p.
Esto se puede expresar formalmente como:
¿Cómo evaluamos si un modelo está bien calibrado?
Para evaluar la calibración de un modelo, las predicciones se agrupan en intervalos de probabilidades. Por ejemplo:
- Creamos intervalos de tamaño 0.1: [0,0.1), [0.1,0.2), … [0.9,1.0].
- Todas las predicciones con probabilidades entre 0.8 y 0.9 se colocan en el intervalo [0.8 y 0.9]
Para cada intervalo:
Para un modelo bien calibrado, los valores de X e Y deberían coincidir. Es decir:
Un modelo perfectamente calibrado mostrará una línea diagonal en el gráfico, donde X= Y . Esto significa que las probabilidades predichas corresponden exactamente a las frecuencias reales. Por debajo de la diagonal el modelo está sobreconfiado (predice probabilidades más altas de lo que ocurre en la realidad). Por encima de la diagonal, el modelo está subconfiado (predice probabilidades más bajas de lo que ocurre en la realidad).
En la siguiente figura se muestra las curvas de calibración de tres modelos diferentes: Random Forest, Logistic Regression y Naive Bayes, comparadas con una línea de referencia que representa una calibración perfecta (línea diagonal discontinua).
En la segunda parte de este artículo, comentaremos por qué podemos tener problemas de calibración y que métodos tenemos para calibrar nuestros modelos.