Curso Python + Machine Learning
Mindmap de Machine Learning
Mapa visual de los conceptos clave: pipeline, preprocesamiento, modelos supervisados,
modelos no supervisados, métricas y conceptos transversales.
Py
⚙️ Machine Learning Pipeline
El pipeline resume el flujo completo de trabajo en un proyecto de Machine Learning.
La idea clave es que el modelo es solo una parte: la calidad del resultado depende
también de cómo se limpian, transforman, dividen y evalúan los datos.
Datos
Features X
Target y
Train/Test
Modelo
Métricas
Interpretación
1
Problema
¿Regresión, clasificación, clustering o asociación?
2
Datos
Carga, exploración, tipos, nulos y distribución.
3
Limpieza
Duplicados, NULLs y outliers.
4
Transformación
Encoding, scaling y selección de features.
5
Split
Train/Test en problemas supervisados.
6
Entrenamiento
fit(), predict(), labels o reglas.
7
Evaluación
Métrica adecuada según el tipo de problema.
🧹 Preprocesamiento
Duplicados
Eliminar registros repetidos para evitar sesgos e inflar artificialmente los datos.
df.drop_duplicates()
NULLs
Eliminar o imputar valores ausentes según el contexto del problema.
dropna() · fillna() · SimpleImputer
Outliers por IQR
Detecta extremos usando cuartiles.
IQR = Q3 - Q1
Límite inf = Q1 - 1.5·IQR
Límite sup = Q3 + 1.5·IQR
Outliers por Z-Score
Mide cuántas desviaciones estándar se aleja un valor de la media.
z = (x - μ) / σ
Outlier típico: |z| > 3
Codificación
Transforma variables categóricas en formato numérico.
OneHotEncoder · OrdinalEncoder
Estandarización / Escalado
Importante en modelos basados en distancias o gradientes.
StandardScaler: x' = (x - μ)/σ
MinMaxScaler: x' = (x - min)/(max - min)
📏 Métricas de Regresión
R² Score
Indica qué parte de la variabilidad de la variable objetivo consigue explicar el modelo.
R² = 1 - SSres / SStot
- SSres: suma de los errores residuales al cuadrado.
- SStot: variación total de los datos respecto a la media.
SSres = Σ(yi - ŷi)²
SStot = Σ(yi - ȳ)²
Si SSres es pequeño comparado con SStot, el modelo explica bien los datos.
MAE
Error medio absoluto. Muy interpretable en unidades reales.
MAE = (1/n) Σ |yi - ŷi|
MSE
Penaliza más los errores grandes al elevarlos al cuadrado.
MSE = (1/n) Σ (yi - ŷi)²
Lectura práctica
- R² alto: mejor ajuste.
- MAE bajo: menor error medio.
- MSE bajo: menos errores grandes.
🧮 Métricas de Clasificación
Accuracy
Proporción de predicciones correctas sobre el total.
Accuracy = (TP + TN) / (TP + TN + FP + FN)
Confusion Matrix
Resume aciertos y errores por clase.
TP · TN · FP · FN
Lectura práctica
- FP: predijo positivo y era negativo.
- FN: predijo negativo y era positivo.
Precaución
Accuracy puede ser engañosa si las clases están desbalanceadas.
Supervised Machine Learning
📈 Regresión Lineal
Predice valores numéricos a partir de una relación lineal entre variables.
Objetivo
Estimar una variable continua como precio, ventas o temperatura.
ŷ = β0 + β1x1 + β2x2 + ... + βnxn
Claves
- Salida numérica.
- Asume relación lineal.
- Se evalúa con R², MAE y MSE.
🔮 Regresión Logística
Clasifica estimando una probabilidad entre 0 y 1 mediante la función sigmoide.
Objetivo
Clasificación binaria o multiclase, por ejemplo: spam/no spam, aprobado/suspenso.
p = 1 / (1 + e^(-z))
z = β0 + β1x1 + ... + βnxn
Claves
- Salida probabilística.
- Se convierte a clase con un umbral.
- Se evalúa con Accuracy y Confusion Matrix.
🌲 Decision Tree
Toma decisiones dividiendo los datos con reglas del tipo “si... entonces...”.
Objetivo
Crear reglas interpretables para predecir una clase o un valor numérico.
Criterio típico:
Gini = 1 - Σ pᵢ²
Nodo de ejemplo
Así se interpreta un nodo de un árbol de decisión de clasificación.
minutos_redes_sociales_dia <= 246.0
gini = 0.465
samples = 57
value = [36, 21]
class = No aprueba
Cómo leer el nodo
- Condición: regla que divide los datos.
- gini: impureza del nodo; cuanto menor, más puro.
- samples: registros que llegan al nodo.
- value: distribución de clases.
- class: clase predicha por mayoría.
🌳 Random Forest
Ensemble de muchos árboles de decisión para ganar robustez y reducir overfitting.
Objetivo
Combinar múltiples árboles para obtener una predicción más estable.
Predicción final = voto mayoritario / promedio de árboles
Claves
- Usa bagging y aleatoriedad.
- Suele generalizar mejor que un único árbol.
- Menos interpretable que Decision Tree.
📍 KNN
Predice según los K vecinos más cercanos del espacio de características.
Objetivo
Clasificar o predecir un valor en función de observaciones parecidas.
d = √Σ(xi - yi)²
Claves
- Muy sensible al escalado.
- Depende de la elección de K.
- Basado en distancias.
Unsupervised Learning
🧩 Visión general
Idea principal
Aprendizaje sin variable objetivo. El algoritmo busca patrones ocultos en los datos.
No hay y conocida → trabajamos solo con X
Técnicas vistas
K-Means
Hierarchical Clustering
A Priori
🎯 K-Means
Objetivo
Agrupar observaciones en K clusters minimizando la distancia al centroide.
Objetivo: minimizar Σ ||xi - μk||²
Conceptos clave
- K = número de clusters.
- Centroide = centro de cada grupo.
- Iteración = asignar puntos y recalcular centroides.
Métricas
Inercia = Σi min ||xi - μk||²
s = (b - a) / max(a, b)
🌳 Hierarchical Clustering
Objetivo
Construir una jerarquía de clusters y representarla en un dendrograma.
Salida visual: dendrograma
Linkage Methods
- Single: distancia mínima.
- Complete: distancia máxima.
- Average: distancia media.
- Ward: minimiza varianza interna.
Importante
No requiere definir K al principio, pero sí decidir dónde cortar el dendrograma.
🛒 A Priori
Objetivo
Encontrar reglas de asociación entre elementos frecuentes.
Regla típica: A → B
Métricas
Support(A) = transacciones con A / total
Confidence(A→B) = Support(A∪B) / Support(A)
Lift(A→B) = Confidence(A→B) / Support(B)
Interpretación
- Lift > 1: asociación positiva.
- Lift = 1: independencia.
- Lift < 1: asociación negativa.
Conceptos Transversales
🧠 Fundamentos
Data Leakage
Información del test o del futuro se cuela en el entrenamiento.
Error típico: escalar antes de train_test_split
Overfitting
El modelo memoriza entrenamiento y falla al generalizar.
Train alto + Test bajo = posible overfitting
Underfitting
El modelo es demasiado simple y no aprende bien.
Train bajo + Test bajo = posible underfitting
Distancias
Clave en KNN, K-Means y clustering jerárquico. Por eso muchas veces hay que escalar.
d = √Σ(xi - yi)²
🧭 Variables y Evaluación
Features X
Variables de entrada que el modelo usa para aprender.
X = columnas predictoras
Target y
Variable objetivo a predecir en supervised learning.
y = valor real que el modelo intenta aprender
Métricas
Se eligen según el problema: regresión, clasificación o clustering.
Regresión ≠ Clasificación ≠ Clustering
Interpretación
No basta con una métrica alta: el resultado debe tener sentido práctico.
Buen modelo = buena métrica + sentido práctico