¿Cómo aprende una máquina?
Aprender, en ML, es ajustar los parámetros de una función para que cometa menos errores sobre datos que no ha visto. Todo el proceso se reduce a cuatro piezas: datos, modelo, pérdida y optimizador.
Las cuatro piezas
Datos
Una muestra de ejemplos $(x_i,y_i)$ que representa el problema. Sin datos representativos, no hay aprendizaje posible.
Modelo
Una familia de funciones $f_\theta$ con parámetros $\theta$. La arquitectura define qué formas puede representar.
Pérdida
Una medida $L(y,f_\theta(x))$ de cuán mal predice el modelo. Convierte el objetivo en un número que se puede minimizar.
Optimizador
Un procedimiento que actualiza $\theta$ para reducir la pérdida: descenso del gradiente, mínimos cuadrados, Adam…
El problema de aprendizaje, formalmente
Sea $\mathcal{H}$ el espacio de hipótesis (todas las funciones que nuestro modelo puede representar). Buscamos:
Esta distinción es el corazón del ML: minimizar el error de entrenamiento es fácil (basta memorizar); lo difícil es generalizar. Todo el Módulo 3 gira alrededor de esa tensión.
El bucle de entrenamiento
# Pseudocódigo del bucle universal de entrenamiento
for epoca in range(num_epocas):
for batch in data_loader:
X, y = batch
y_pred = modelo(X) # forward pass
loss = perdida(y, y_pred) # calcular error
gradientes = calcular_gradiente(loss, parametros) # backprop
parametros -= learning_rate * gradientes # actualizar
validar(modelo, validacion) # medir generalizaciónEste esqueleto es el mismo para una regresión logística, una CNN o un Transformer. Cambian el modelo, la pérdida y el optimizador; el ciclo es idéntico.
Una analogía útil: el tiro con arco
El modelo es el arco; los parámetros, la tensión y el ángulo; la pérdida, la distancia al centro; el optimizador, el ajuste tras cada flecha. Con una sola flecha no puedes calibrar; con muchas, corriges. Pero si solo practicas a una distancia fija, fallarás en otra: eso es overfitting.
Tipos de aprendizaje, otra vez
| Señal disponible | Objetivo | Ejemplo |
|---|---|---|
| Etiquetas $y$ | Predecir $y$ | Supervisado: regresión/clasificación |
| Solo $x$ | Estructura | No supervisado: clustering, PCA |
| Recompensa | Política óptima | Refuerzo: juegos, robótica |
| Datos + pocas etiquetas | Predecir con bajo costo de etiquetado | Semi-supervisado |
| El propio dato | Representación | Auto-supervisado: LLMs, contrastivo |
Para predecir el precio de una vivienda, define: (a) los datos y la forma de cada ejemplo; (b) el espacio de hipótesis si usas una regresión lineal; (c) la pérdida; (d) el optimizador; (e) cómo medirás la generalización.
Orientación: (a) vector de features (superficie, habitaciones, distrito) y etiqueta continua; (b) $f_\theta(x)=w^\top x+b$; (c) MSE; (d) mínimos cuadrados o descenso del gradiente; (e) RMSE sobre un conjunto de prueba no utilizado durante el ajuste.