Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Overfitting y underfitting, Unidad 2 — El compromiso bias–variance, 2.1 — Sesgo (bias) ·

Señales de alto sesgo

Señales de alto sesgo

Introducción

En el camino hacia construir modelos de machine learning fiables y precisos, uno de los desafíos más comunes que encontramos es el sesgo. El sesgo puede llevar a modelos que no son lo suficientemente precisos para predecir datos nuevos (underfitting). En este artículo, exploraremos en detalle qué significa tener un alto sesgo en modelos de machine learning y cómo identificarlo y corregirlo.

Explicación principal

Qué es el sesgo

El sesgo se refiere a la tendencia de un modelo a predecir valores que están alejados del valor real. Un modelo con alto sesgo tiende a ignorar las señales importantes en los datos, lo que lleva a predicciones generalmente bajas y a una mala generalización a nuevos conjuntos de datos.

Ejemplo práctico

Imagina un modelo que está intentando predecir el precio de viviendas basándose en características como la ubicación, el tamaño y el número de habitaciones. Si este modelo tiene alto sesgo, podría subestimar sistemáticamente los precios, por ejemplo, creyendo que las viviendas grandes valen menos debido a su tamaño.

import numpy as np

# Datos ficticios: precio real vs predicción del modelo
real_prices = np.array([300k, 450k, 600k, 750k])
predicted_prices = np.array([250k, 400k, 550k, 700k])

# Calcular el sesgo
bias = (real_prices - predicted_prices).mean()

print(f"Sesgo: {bias}k")

En este ejemplo, el modelo subestima sistemáticamente los precios de las viviendas.

Errores típicos / trampas

  1. Modelos demasiado simples: Un modelo con pocas características o parámetros puede tener alto sesgo si no tiene la capacidad adecuada para capturar la complejidad del problema.
  2. Falta de entrenamiento adecuado: Si el modelo no se entrena correctamente, puede terminar ignorando ciertas características importantes en los datos.
  3. Supuestos incorrectos sobre los datos: Hacer supuestos erróneos sobre cómo deben ser los datos (por ejemplo, distribución normal) puede llevar a un alto sesgo si estos supuestos no son válidos.

Checklist accionable

  1. Revisar la complejidad del modelo: Asegúrate de que el modelo tiene suficiente capacidad para capturar las características importantes en los datos.
  2. Validación cruzada: Utiliza validación cruzada para evaluar cómo se comporta tu modelo en diferentes subconjuntos de datos y detectar posibles sesgos.
  3. Evaluación del rendimiento en varios conjuntos de datos: Verifica el rendimiento de tu modelo no solo en el conjunto de entrenamiento, sino también en conjuntos de validación y prueba para identificar cualquier desviación.
  4. Análisis de características: Revisa si alguna característica no está contribuyendo al rendimiento del modelo y considera su eliminación o mejora.
  5. Pruebas con datos reales: Asegúrate de que tu modelo tiene el potencial de predecir correctamente en conjuntos de datos completamente nuevos.

Cierre

Siguientes pasos

  1. Implementar modelos más complejos: Si tienes un alto sesgo, considera aumentar la capacidad del modelo para capturar más características y relaciones en los datos.
  2. Mejorar el feature engineering: Investiga y aplica técnicas de feature engineering adicionales para mejorar la representación de tus datos.
  3. Revisar la calidad de los datos: Asegúrate de que no haya fallos o sesgos en los datos de entrada, lo cual puede llevar a modelos con alto sesgo.

En resumen, el sesgo es una problemática fundamental en el machine learning que puede limitar significativamente la capacidad del modelo para predecir nuevos conjuntos de datos. Al seguir las recomendaciones y verificar regularmente el sesgo en tus modelos, podrás construir soluciones más precisas y fiables.

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).