Nos pasa a todos, leemos artículos sobre el tradeoff de bias vs variance (sesgo vs varianza), lo pillamos y a los dos días se nos ha olvidado. Posiblemente no lo habéis leído con atención, o puede ser que dierais con una explicación compleja.
Vamos a intentar entenderlo por fin con un post cortito y al pie.
Bias
El error debido al Bias de un modelo es simplemente la diferencia entre el valor esperado del estimador (es decir, la predicción media del modelo) y el valor real. Cuando se dice que un modelo tiene un bias muy alto quiere decir que el modelo es muy simple y no se ha ajustado a los datos de entrenamiento (suele ser underfitting), por lo que produce un error alto en todas las muestras: entrenamiento, validación y test.
Los modelos lineales suelen sufrir de errores por Bias (Regresión Lineal. Qué es, para qué se utiliza y ejemplo práctico).
Sin embargo, hay algoritmos que tienen un bias pequeño como son los árboles de decisión (por ejemplo el Random Forest) , el KNN (Algoritmo KNN, conviértete en experto: cómo funciona y ejemplos en Python) y los SVM.
Variance
Esta es de sentido común. La varianza de un estimador es cuánto varía la predicción según los datos que utilicemos para el entrenamiento.
Como bien sabemos, la mayoría de algoritmos de Machine Learning aprenden según van entrando datos de entrenamiento. Así que es normal que todos los modelos tengan cierta varianza. Aunque si creamos un modelo robusto, debería aprender las relaciones entre las variables y el target.
Entonces, lo que se saca de esto es lo siguiente:
- Un modelo con varianza baja indica que cambiar los datos de entrenamiento produce cambios pequeños en la estimación.
- Al contrario, un modelo con varianza alta quiere decir que pequeños cambios en el dataset conlleva a grandes cambios en el output (suele ser overfitting).
Los algoritmos que suelen tener un error de bias alto suelen tener una varianza baja. A su vez, los que tienen bias bajo suelen tener varianza alta.
Ya sabemos qué es el Bias, qué es la varianza, pero…
¿ Qué es el tradeoff bias vs variance ?
Lo óptimo que queremos tener, es un modelo que tenga poco bias y poca varianza. Esto es lo que se llamaría un modelo robusto.

El problema viene cuando no tenemos un modelo robusto y queremos mejorar uno de estos errores. Aquí se encuentra el tradeoff.
Disminuir la varianza implica aumentar el bias.
Disminuir el bias hacer que la varianza aumente.
Esto se explica porque un modelo con bias es un modelo sencillo. Un modelo con varianza es un modelo complejo. Y , por lo menos yo, creo que es imposible que un modelo sea sencillo y complejo a la vez.
Pssst.. El PCA es una técnica para bajar la varianza
Encontrando el balance perfecto
Un modelo predictivo bueno será el que tenga un buen balance entre bias y varianza de manera que se minimice el error total:
Error Total = Bias2 + Varianza + Error Irreducible

El punto óptimo será aquel donde se minimice el error total. (Para los que os acordéis de álgebra, esto es derivar la ecuación del error e igualar a cero).
Conclusión
Hoy hemos explicado de manera sencilla qué es el error de Bias (Sesgo), el error por Varianza. Qué es el tradeoff entre ambos y cuál es el punto óptimo que debemos encontrar a la hora de configurar nuestros algoritmos.
Os dejo por aquí enlaces a las definiciones de wikipedia en español:
¿Eres un pro de ML ya? Si esto te parece muy básico para ti, aquí te dejo unos enlaces a técnicas de Deep Learning aplicadas a Computer Vision
Clasificación de imágenes en Pytorch con Google Colab y Kaggle
Aprende qué es el Neural Style Transfer y aplícalo!
Nos harías un favorazo compartiendo esto en las redes sociales :)