Clase 12 — Programación Evolutiva aplicada a Problemas de Aprendizaje
Resumen Ejecutivo
Sesión introductoria sobre la convergencia entre computación bio-inspirada y aprendizaje automático. Se presentan las tres familias de algoritmos de clasificación supervisada (geométricos, probabilísticos y lógicos) desde la perspectiva evolutiva: en todos ellos el "aprendizaje" consiste en optimizar pesos, parámetros o reglas a partir de los datos. Se revisan también los resultados de la actividad 2 (problema de transporte en Soria con colonia de hormigas y algoritmo genético).
Conceptos Clave
- Aprendizaje supervisado vs. clustering: el clustering agrupa datos sin etiquetas; el supervisado usa etiquetas para construir un modelo capaz de predecir sobre nuevos datos. ⚠️ EXAMEN
- Algoritmos geométricos: clasifican basándose en distancias entre puntos. Ejemplos: kNN y SVM.
- Algoritmos probabilísticos: usan probabilidades (a priori / a posteriori) para asignar clases. Ejemplos: regresión logística, Naive Bayes.
- Algoritmos lógicos: construyen reglas o árboles de decisión para clasificar. ⚠️ EXAMEN
- SVM (Support Vector Machine): busca el hiperplano de margen máximo entre clases. Los vectores de soporte son las observaciones más cercanas a la frontera; quitarlos no cambia el modelo. ⚠️ EXAMEN
- Función sigmoide: transforma cualquier valor real en \([0, 1]\); base de la regresión logística.
- Naive Bayes: asume independencia entre características; existen variantes multinomial y Bernoulli muy usadas en análisis de texto.
- Red neuronal básica: capas de nodos con pesos \(w\), sesgo \(b\) y función de activación. Los pesos se ajustan iterativamente → eso es lo que se llama "aprender".
- Conexión evolutiva: los algoritmos bio-inspirados pueden usarse para optimizar los parámetros/pesos de modelos de ML (optimización de hiperparámetros).
Desarrollo del Temario
1. Punto de partida: de optimización a aprendizaje
Los algoritmos vistos hasta ahora (AG, PSO, colonia de hormigas…) buscan el óptimo de una función objetivo moviendo variables. El paso adicional que introduce el "aprendizaje automático" es que también se optimizan los parámetros del modelo (pesos, coeficientes) en lugar de solo las variables del problema. Ese ajuste iterativo de parámetros es lo que popularmente se llama "aprender".
2. Familias de algoritmos de clasificación
2.1 Geométricos
| Algoritmo | Idea principal |
|---|---|
| kNN (vecinos más cercanos) | Asigna la clase del vecino más cercano en distancia euclídea |
| Discriminante lineal | Calcula la recta que maximiza la separación entre los residuos de cada grupo |
| SVM | Encuentra el hiperplano con el margen máximo entre clases; los puntos en el margen son los vectores de soporte |
La gran diferencia entre SVM y el discriminante: el discriminante busca solo la línea separadora; SVM maximiza el pasillo entre las clases.
2.2 Probabilísticos
Aprenden distribuciones de probabilidad de los datos; clasifican calculando \(P(\text{clase} \mid \text{características})\).
- Discriminativos (directos): modelan \(P(y \mid x)\) directamente.
- Regresión logística: aplica la función sigmoide sobre una combinación lineal de las características.
$\(\sigma(z) = \frac{1}{1+e^{-z}} \in [0,1]\)$ - Generativos (basados en Bayes): modelan \(P(x \mid y)\) y usan el teorema de Bayes para invertirlo.
- Naive Bayes: asume independencia entre características. Variantes: multinomial (frecuencias de palabras), Bernoulli (presencia/ausencia).
2.3 Lógicos (basados en reglas / árboles)
Construyen estructuras de decisión explícitas:
- Árboles de decisión: secuencia de filtros (salario > 2000 → ¿historial crediticio? → …). Cada hoja es una clase.
- Basados en reglas: condiciones
SI ... ENTONCES ...que el modelo descubre automáticamente en los datos.
Ventaja: alta interpretabilidad. Desventaja: pueden sobreajustarse con datos ruidosos.
3. Redes neuronales (introducción)
Entradas x₁, x₂, … → [Capa con pesos w y sesgo b] → Función de activación → Salida (clase)
- Cada capa transforma la entrada con \(z = \sum w_i x_i + b\).
- La función de activación (p. ej. escalón, sigmoide, ReLU) decide si el nodo "dispara".
- En redes multicapa los pesos se actualizan capa a capa en cada iteración → aprendizaje profundo.
4. Revisión Actividad 2 — Problema de transporte en Soria
- Datos: base de datos de infraestructuras filtrada a la provincia de Soria → 12 nodos.
- Algoritmos comparados: colonia de hormigas vs. algoritmo genético.
- Errores frecuentes señalados por la profesora:
- No filtrar correctamente (más de 12 nodos).
- Mezclar resultados, implementación y conclusiones sin orden.
- No incluir fórmulas matemáticas en la descripción del algoritmo.
- Tareas grupales entregadas individualmente (penalización aplicada).
- Recomendación para futuros trabajos: separar claramente teoría → implementación → resultados → conclusiones. Incluir siempre las fórmulas clave aunque el código lo genere la IA.
Preguntas Tipo Examen
- ¿Cuál es la diferencia fundamental entre el discriminante lineal y SVM?
- ¿Qué son los vectores de soporte y por qué quitarlos no modifica el modelo?
- ¿En qué se diferencia aprendizaje supervisado de clustering?
- Describe brevemente las tres familias de algoritmos de clasificación.
- ¿Qué hace la función sigmoide y para qué se usa en regresión logística?
- ¿Qué supuesto hace Naive Bayes sobre las características y cuándo puede fallar?