Sesgo-Varianza en Machine Learning

Martha Inés Juárez Cabrera
MCD-UNISON
Published in
5 min readJun 15, 2022

Para medir el desempeño de nuestro modelo de Machine Learning en la práctica, los datos deben dividirse en conjuntos de entrenamiento (train set) y de validación (test set). De esta manera, el error se calcula de manera justa evaluando el modelo con un conjunto de datos que no ha visto durante el entrenamiento.

Al estudiar el error al realizar predicciones con datos nuevos dado un modelo, no nos es difícil encontrarnos con el problema del sesgo-varianza (bias-variance tradeoff, conocido en inglés). El dilema del sesgo-varianza es el conflicto que se tiene al tratar de minimizar simultáneamente estas dos fuentes de error que impiden que los algoritmos de aprendizaje supervisado generalicen más allá de su conjunto de entrenamiento.

Es por eso que en esta publicación hablaremos de estos conceptos para poder tener una mejor comprensión de ellos:

Sesgo (bias)

El sesgo es la diferencia en media de la estimación del modelo y el valor real del modelo. Es muy poco probable conocer el valor real del modelo, es por eso que se toma en comparación a la mejor predicción obtenida del modelo.

Si las estimaciones son menores al valor real entonces el sesgo es alto y por lo tanto el modelo de estimación es simple. Esto nos lleva al underfitting que se da cuando nuestro modelo no es capaz de capturar alguna relación entre las variables predictoras y la variable respuesta.

Varianza (variance)

La varianza es la variabilidad de la estimación del modelo para un punto de datos dado, es un error de sensibilidad a las pequeñas fluctuaciones en el conjunto de entrenamiento o un valor que nos indica la dispersión de nuestros datos.

Una varianza alta nos indica que el modelo es muy flexible, esto quiere decir que el modelo presta mucha atención al comportamiento de los datos de entrenamiento y no está generalizando correctamente sobre los datos nuevos causando el overfitting.

Cuanto mayor sea el conjunto de datos de entrenamiento, menor tiende a ser la varianza y hay menos probabilidad de cometer overfitting.

Fundamentos Matemáticos

Sea X nuestra variable predictora (variable de entrada) y sea y la variable respuesta. Supongamos y = f(X) + e, donde e es el error (o ruido) el cual se distribuye normalmente con media 0 y varianza σ².

Sea f^(X) un modelo de estimación a la función f(X), el mejor posible generado mediante algún algoritmo de aprendizaje basado en un conjunto de entrenamiento.

Utilizando el medio error cuadrático para X = x, tenemos que:

Así tenemos que el Err(x) es igual a la suma del cuadrado del sesgo, la varianza y un error irreducible. El error irreducible representa el ruido de nuestro modelo el cuál no puede ser evitado sin importar qué tan buena sea nuestra estimación.

Overfitting y underfitting

Como se mencionó anteriormente, el overfitting se da cuando el sesgo es alto (y generalmente la varianza es baja). Puede ocurrir cuando se tiene muy poca cantidad de datos para construir un modelo preciso o cuando se utiliza un modelo equivocado, por ejemplo, utilizar un modelo lineal con datos no lineales. Además, este tipo de modelos son muy simples para capturar los patrones complejos en datos como la regresión lineal y logística.

El underfitting se da cuando la varianza es alta (cuando el modelo captura el ruido de los datos, generalmente el sesgo es bajo). Ocurre cuando el modelo es sobreentrenado con un conjunto de datos ruidoso. Estos modelos son muy complejos, como los árboles de decisión, que tienden a sobreajustarse.

El problema del sesgo-varianza

En resumen, lo que buscamos es un modelo que haya aprendido de los datos que se le han proporcionado (sesgo y error de entrenamiento bajos) y que sea capaz de generalizar ante nuevos datos (varianza y error de test bajos). Es decir, un modelo que no esté en régimen de overfitting ni de underfitting.

Si nuestro modelo es muy simple y tiene pocos parámetros es posible que nuestro modelo tenga un alto sesgo y una baja varianza. Por otro lado, si nuestro modelo tiene una gran cantidad de datos es posible que tenga una alta varianza y un bajo sesgo. Por lo tanto, debemos encontrar el equilibrio correcto sin cometer overfitting o underfitting.

El problema surge al momento de querer ajustar el sesgo o la varianza pues hay una compensación entre ambas, es decir, si disminuímos el sesgo aumenta la varianza y si disminuímos las varianza aumenta el sesgo.

El reto es encontrar el punto adecuado entre la complejidad del modelo y su generalidad. Para eso, debemos encontrar el punto en el que el MSE sea el mínimo. Recordemos la ecuación del MSE:

El cálculo del mínimo para esta ecuación nos dará el balance óptimo entre el sesgo y la varianza en donde el modelo no tenga overfit ni underfit.

Por lo tanto, tener una buena comprensión de los conceptos de sesgo y varianza es fundamental para entender el comportamiento de los modelos de predicción.

Regularización y Cross Validation

Una de las maneras para disminuir los errores de sesgo-varianza es ajustando la complejidad del modelo utilizando la regularización para modelos lineales y lineales generalizados. La regularización es un método muy útil para abordar el problema de tener una varianza alta en nuestro modelo. Lo que hace la regularización para sobreajustar el modelo es negar o minimizar el efecto de las columnas predictoras con grandes valores atípicos, al penalizar sus coeficientes de regresión. El resultado es un modelo más suave que puede funcionar bien en otros conjuntos de datos de prueba con tipos de datos similares.

En términos simples, es un proceso de introducción de información adicional para resolver un problema mal planteado o para evitar el overfitting. Los dos tipos de regularización más comúnes son L2 y L1.

También podemos utilizar el método de k-fold Cross Validation sobre nuestro modelo para conocer qué tan bien se desempeña sobre datos no conocidos. Esto nos ayuda a optimizar la compensación entre el sesgo y la varianza.

Referencias

--

--

Martha Inés Juárez Cabrera
MCD-UNISON

Mathematician and Data Scientist Student from University of Sonora