QuieroProgramar por Rodri Gonzalez
Data Analysis · Lección 15 de 19

Regresión y Clasificación

En la lección anterior vimos el panorama general de Machine Learning. Ahora vamos a profundizar en los 4 algoritmos más usados en la industria: regresión lineal, regresión logística, árboles de decisión y K-Nearest Neighbors. Para cada uno vas a entender cómo funciona, cuándo usarlo, y cómo interpretar sus resultados.

120–150 min Prerrequisitos: Lección 14 (Intro ML)
01

Concepto teórico

Los 4 algoritmos esenciales

Algoritmo Tipo Target Idea central Ejemplo de uso
Regresión Lineal Regresión Número continuo Encontrar la recta que mejor ajusta los datos Predecir precio de inmueble
Regresión Logística Clasificación Categoría binaria (0/1) Calcular probabilidad de pertenecer a una clase Predecir si un cliente cancela
Árbol de Decisión Ambos Número o categoría Crear reglas tipo "si X > 5 → clase A" Aprobar créditos
K-Nearest Neighbors Ambos Número o categoría Clasificar según los K vecinos más cercanos Recomendar productos

Regresión Lineal: la recta que predice

La regresión lineal busca la línea recta y = mx + b que minimiza la distancia entre la línea y los puntos reales. Es el modelo más simple pero tremendamente útil.

Analogía: imaginate un gráfico con puntos (antigüedad vs ingreso). La regresión lineal es como poner una regla transparente sobre los puntos y rotarla hasta que quede lo más cerca posible de todos. La pendiente de esa regla te dice "por cada año más de antigüedad, ganás ~$35K más".

Métricas de regresión

Métrica Fórmula intuitiva Interpretación
MAE Promedio de |error| "Me equivoco en promedio $X"
MSE Promedio de error² Penaliza más los errores grandes
RMSE √MSE Error en las mismas unidades que y
1 − (error modelo / error base) % de variabilidad explicada (0 a 1)

Regresión Logística: probabilidad de evento

A pesar de su nombre, la regresión logística es un modelo de clasificación. Calcula la probabilidad de que un evento ocurra (ej: P(cancela) = 0.78) y clasifica según un umbral (si P > 0.5 → "cancela").

¿Por qué se llama "regresión" si es clasificación? Porque internamente calcula un número continuo (la probabilidad) usando una función sigmoide. Luego la convierte en categoría con un umbral. Es una regresión sobre la probabilidad.

Árboles de Decisión: reglas interpretables

Los árboles crean reglas binarias anidadas: "si antigüedad < 3 → sí cancela, sino, si productos ≥ 4 → no cancela…". Su gran ventaja: son completamente interpretables. Podés explicar cada decisión del modelo.

Cuidado con la profundidad: un árbol muy profundo (max_depth alto) memoriza los datos de entrenamiento (overfitting). La regla: empezá con max_depth=3 y subí gradualmente mientras el test accuracy mejore.

KNN: "dime con quién andás…"

K-Nearest Neighbors no "aprende" nada. Cuando llega un dato nuevo, busca los K más similares en el entrenamiento y vota: si 3 de 5 vecinos cancelaron → "cancela". Es simple pero sorprendentemente efectivo.

En el trabajo real: regresión lineal se usa para forecasting (predecir ventas del próximo trimestre). Regresión logística para scoring crediticio y churn prediction. Árboles de decisión cuando el negocio necesita entender el "por qué" de cada decisión. KNN para sistemas de recomendación simples.
02

Ejemplos explicados paso a paso

Ejemplo 1: Regresión Lineal — Predecir ingresos

Predecir el ingreso de un empleado a partir de sus años de antigüedad. Modelo simple, interpretable y poderoso.

ejemplo_01_regresion_lineal.pyPython

        
Hacé clic en ▶ Ejecutar

Ejemplo 2: Regresión Logística — Predecir churn

Predecir si un cliente va a cancelar (sí/no). La logística nos da la probabilidad, lo que permite priorizar acciones de retención.

ejemplo_02_logistica.pyPython

        
Hacé clic en ▶ Ejecutar
Tip profesional — predict_proba: modelo.predict_proba() te da la probabilidad de cada clase, no solo la clasificación binaria. Esto es valiosísimo porque podés priorizar: un cliente con P(cancel)=0.92 necesita atención urgente; uno con P=0.55 puede esperar.

Ejemplo 3: Árbol de Decisión con interpretación

Los árboles generan reglas legibles. Podés exportar las reglas y explicar cada decisión al negocio.

ejemplo_03_arbol.pyPython

        
Hacé clic en ▶ Ejecutar

Ejemplo 4: Regresión Lineal Múltiple

La regresión no se limita a una variable. Con múltiples features podés hacer predicciones mucho más precisas.

ejemplo_04_multiple.pyPython

        
Hacé clic en ▶ Ejecutar

Ejemplo 5: Comparación completa de modelos con visualización

Probamos 4 algoritmos, comparamos métricas y visualizamos los resultados.

ejemplo_05_comparar.pyPython

        
Hacé clic en ▶ Ejecutar
03

Referencia rápida

Algoritmo Import Parámetros clave
Regresión Lineal LinearRegression() (sin hiperparámetros - ajusta automáticamente)
Reg. Logística LogisticRegression() max_iter, C (regularización)
Árbol Decisión DecisionTreeClassifier() max_depth, min_samples_split
KNN KNeighborsClassifier() n_neighbors (K)
Métrica regresión Código Ideal
MAE mean_absolute_error(y, pred) 0 (menor = mejor)
r2_score(y, pred) 1 (mayor = mejor)
04

Ejercicios

Nivel 1 · Básico

Ejercicio 1: Regresión Lineal simple

Entrenáuna regresión lineal de Metros2 → Precio. Imprimí el coeficiente. Debe incluir un número (ej: 2).

ejercicio_01.pyDebe incluir un coeficiente

          
Hacé clic en ▶ Ejecutar
Nivel 1 · Básico

Ejercicio 2: Predecir con regresión lineal

Usá el modelo entrenado para predecir el precio de un depto de 100 m². Debe incluir 250.

ejercicio_02.pyDebe incluir "250"

          
Hacé clic en ▶ Ejecutar
Nivel 1 · Básico

Ejercicio 3: R² — bondad de ajuste

Calculá el R² del modelo de regresión. Debe incluir un valor alto (ej: 0.9).

ejercicio_03.pyDebe incluir "0.9..."

          
Hacé clic en ▶ Ejecutar
Nivel 2 · Intermedio

Ejercicio 4: Reg. Logística con probabilidades

Entrenáuna regresión logística y usá predict_proba para obtener probabilidades. Imprimí la probabilidad del primer caso de test. Debe incluir 0..

ejercicio_04.pyDebe incluir "0."

          
Hacé clic en ▶ Ejecutar
Nivel 2 · Intermedio

Ejercicio 5: Árbol de decisión — exportar reglas

Entrenáun árbol con max_depth=2 e imprimí las reglas con export_text. Debe incluir <= (símbolo de regla).

ejercicio_05.pyDebe incluir "<="

          
Hacé clic en ▶ Ejecutar
Nivel 2 · Intermedio

Ejercicio 6: KNN — probar distintas K

Probá KNN con K = 1, 3, 5, 7, 9. Imprimí la accuracy de cada uno. Debe incluir k=.

ejercicio_06.pyDebe incluir "k="

          
Hacé clic en ▶ Ejecutar
Nivel 3 · Avanzado

Ejercicio 7: Regresión múltiple con MAE

Entrená regresión con 3 features, evaluá con MAE y R². Debe incluir .

ejercicio_07.pyDebe incluir "R²"

          
Hacé clic en ▶ Ejecutar
Nivel 3 · Avanzado

Ejercicio 8: Visualizar regresión lineal

Entrenáuna regresión y graficá los puntos reales + la recta de predicción. Imprimí Gráfico OK.

ejercicio_08.pyDebe imprimir "Gráfico OK"

          
Hacé clic en ▶ Ejecutar
Nivel 3 · Avanzado

Ejercicio 9: Feature importance del árbol

Entrenaun árbol con 3 features. Imprimí la importancia de cada una ordenada de mayor a menor. Debe incluir Importancia.

ejercicio_09.pyDebe incluir "Importancia"

          
Hacé clic en ▶ Ejecutar
Nivel 4 · Desafío

Ejercicio 10: Pipeline completo con gráfico de comparación

Compará 3 clasificadores, generá un gráfico de barras con sus accuracy, precision y recall. Imprimí Comparación completa.

ejercicio_10_desafio.pyDebe imprimir "Comparación completa"

          
Hacé clic en ▶ Ejecutar
05

Resumen y conexión

En la siguiente lección (16 · Power BI / Tableau intro) vas a aprender cómo llevar tus análisis a herramientas de visualización empresarial que usan los equipos de Business Intelligence en todo el mundo.

Recursos: scikit-learn Supervised Learning · Model Evaluation