Clasificación: Sesgo de predicción

Las predicciones de regresión logística no deben tener sesgo. Es decir:

"Promedio de predicciones" debería π "promedio de observaciones

El sesgo de predicción es una cantidad que mide qué tan alejados están esos dos promedios. Es decir:

$$\text{prediction bias} = \text{average of predictions} - \text{average of labels in data set}$$

Un sesgo de predicción distinto de cero indica que hay un error en algún lugar del modelo, ya que indica que el modelo no está bien acerca de la frecuencia con la que se producen etiquetas positivas.

Por ejemplo, supongamos que sabemos que, en promedio, el 1% de todos los correos electrónicos son spam. Si no sabemos nada sobre un correo electrónico determinado, debemos predecir que es probable que sea spam. Del mismo modo, un buen modelo de spam debería predecir, en promedio, que los correos electrónicos tienen un 1% de probabilidades de ser spam. (En otras palabras, si promediamos las probabilidades predichas de que cada correo electrónico individual sea spam, el resultado debería ser 1%). Si, en cambio, la predicción promedio del modelo es un 20% de probabilidades de ser spam, podemos concluir que muestra un sesgo de predicción.

Las posibles causas raíz del sesgo de predicción son las siguientes:

  • Conjunto de atributos incompleto
  • Conjunto de datos ruidoso
  • Canalización con errores
  • Muestra de entrenamiento sesgado
  • Regularización demasiado intensa

Es posible que te sientas tentado a corregir el sesgo de predicción mediante el procesamiento posterior del modelo aprendido, es decir, agregando una capa de calibración que ajuste el resultado del modelo para reducir el sesgo de predicción. Por ejemplo, si tu modelo tiene un sesgo superior al 3%, puedes agregar una capa de calibración que reduzca la predicción media en un 3%. Sin embargo, agregar una capa de calibración no es una buena idea por los siguientes motivos:

  • Está solucionando el síntoma en lugar de la causa.
  • Creaste un sistema más frágil que ahora debes mantener actualizado.

Si es posible, evita las capas de calibración. Los proyectos que usan capas de calibración tienden a depender de ellas, ya que usan capas de calibración para corregir todos los senos del modelo. En última instancia, mantener las capas de calibración puede convertirse en una pesadilla.

Agrupamiento y sesgo de predicción

La regresión logística predice un valor entre 0 y 1. Sin embargo, todos los ejemplos etiquetados son exactamente 0 (lo que significa, por ejemplo, &no es spam) o exactamente 1 (que significa, por ejemplo, &spam). Por lo tanto, cuando examinas el sesgo de predicción, no puedes determinar con exactitud el sesgo de predicción en función de un solo ejemplo. Debes examinar el sesgo de predicción en un bucket de ejemplos. Es decir, el sesgo de predicción para la regresión logística solo tiene sentido cuando se agrupan suficientes ejemplos como para poder comparar un valor previsto (por ejemplo, 0.392) con los valores observados (por ejemplo, 0.394).

Puedes formar depósitos de las siguientes maneras:

  • Divide linealmente las predicciones objetivo.
  • Forma cuantiles.

Considera el siguiente gráfico de calibración de un modelo en particular. Cada punto representa un bucket de 1,000 valores. Los ejes tienen los siguientes significados:

  • El eje x representa el promedio de valores que el modelo predijo para ese bucket.
  • El eje y representa el promedio real de los valores en el conjunto de datos para ese bucket.

Ambos ejes son escalas logarítmicas.

El eje x es Predicción y el eje y es Etiqueta. Para los valores de predicción medios y altos, el sesgo de predicción es insignificante. Para los valores de predicción bajos, el sesgo de predicción es relativamente alto.

Figura 8: Curva de sesgo de predicción (escala logarítmica)

¿Por qué las predicciones son tan deficientes solo para parte del modelo? Estas son algunas posibilidades:

  • El conjunto de entrenamiento no representa de forma adecuada ciertos subconjuntos del espacio de datos.
  • Algunos subconjuntos de datos son más ruidosos que otros.
  • El modelo está regularizado en exceso. (Considera reducir el valor de lambda).