Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Aprendizaje supervisado, Unidad 2 — Tipos de problemas supervisados, 2.1 — Regresión ·

Ejemplos reales

Ejemplos reales: Regresión supervisada en acción

Introducción

El aprendizaje supervisado es una de las técnicas fundamentales en la Ciencia de Datos y Machine Learning (ML). La regresión, como subcategoría del aprendizaje supervisado, se utiliza para predecir valores continuos. Esto es especialmente útil cuando queremos estimar un resultado numérico basándonos en una serie de características o variables predictivas. En este artículo exploraremos cómo aplicar la regresión a problemas reales y veremos algunos errores comunes que debes evitar.

Explicación principal con ejemplos

Ejemplo 1: Predicción del precio de casas

Una de las aplicaciones más conocidas de la regresión es el modelo de predicción del precio de casas. Supongamos que estamos trabajando en una empresa inmobiliaria y queremos predecir el precio de una casa basándonos en sus características como tamaño, número de habitaciones, ubicación, etc.

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# Cargar datos y preparar el conjunto de entrenamiento y prueba
data = pd.read_csv('housing.csv')
X = data.drop('price', axis=1)
y = data['price']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# Entrenar un modelo de regresión lineal
model = LinearRegression()
model.fit(X_train, y_train)

# Predecir el precio de las casas en el conjunto de prueba
predictions = model.predict(X_test)
print("MSE: ", mean_squared_error(y_test, predictions))

Ejemplo 2: Predicción del consumo energético

Otro ejemplo interesante es la predicción del consumo energético de un edificio. Podemos usar variables como el tamaño del edificio, las característica térmicas (isolación, número de ventanas), y el clima para predecir cuánto se gastará en energía.

# Ejemplo simplificado
data = pd.read_csv('energy_consumption.csv')
X = data.drop('energy_consumption', axis=1)
y = data['energy_consumption']
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

model = LinearRegression()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
print("MSE: ", mean_squared_error(y_test, predictions))

Errores típicos / trampas

  1. Olvidar la normalización: Asegúrate de normalizar tus variables predictivas si las escalas son muy diferentes. Esto puede mejorar significativamente el rendimiento del modelo.
  1. Excesiva regularización: La regresión lineal con regularización (como Ridge o Lasso) es una buena opción, pero exceso de penalización puede llevar a sobreajuste o subajuste.
  1. Selección inadecuada de características: Una mala selección de características puede resultar en un modelo que no generaliza bien y que tiene altos errores de validación cruzada.

Checklist accionable

  1. Valida tus datos: Verifica que las variables predictivas estén correctamente codificadas y limpias.
  2. Normaliza los datos: Asegúrate de normalizar todas las características en la misma escala para evitar sesgos en el modelo.
  3. Elige un conjunto de entrenamiento adecuado: Usa una buena separación entre conjuntos de entrenamiento, validación y prueba.
  4. Escoge la función de pérdida correcta: Para regresión, usa funciones como MSE o RMSE.
  5. Haz pruebas iterativas: Prueba diferentes combinaciones de modelos y hiperparámetros para encontrar el mejor ajuste.

Cierre con "Siguientes pasos"

Siguientes pasos

  • Aprende más sobre regresión no lineal: Si los datos tienen una relación no lineal, considera usar modelos polinómicos o transformaciones no lineales.
  • Explora algoritmos de regresión avanzados: Métodos como el Random Forest para regresión pueden ser útiles para capturar relaciones más complejas en tus datos.
  • Entendimiento profundo del problema: Investiga sobre el contexto real y las variables que están involucradas. Esto puede ayudarte a seleccionar características relevantes.

En resumen, la regresión supervisada es una herramienta poderosa para predecir valores continuos. Con un enfoque cuidadoso al preparar tus datos y seleccionar modelos adecuados, puedes obtener resultados muy precisos.

Contacto

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