Atlasingeniería

Aprendizaje automáticoFundamentosTema 1

Qué significa que un modelo aprenda

Aprender no es memorizar los datos sino acertar en los que nunca vio. Toda la disciplina sale de esa distinción y de aceptar que no hay garantía sin supuestos.

Para este tema conviene tener claro:Estadística descriptiva y qué esconde un promedio

Un modelo que responde perfecto sobre los datos con los que se entrenó puede no haber aprendido nada: guardar una tabla con las respuestas logra exactamente eso. Lo que se quiere es otra cosa, y es más difícil de definir de lo que parece.

Aprender es generalizar, no memorizar

Aprender, acá, significa generalizar: acertar sobre ejemplos nuevos, que no estuvieron en el entrenamiento. El error que importa no es el que se mide sobre lo visto sino el esperado sobre todo lo que podría venir.

Ese error no se puede calcular, porque implicaría conocer todos los casos posibles. Se lo estima con datos apartados, y esa estimación es la única evidencia disponible. De ahí que separar datos no sea un trámite metodológico: es lo único que distingue aprender de memorizar.

Dos modelos entrenados sobre los mismos 1000 ejemplos. Empecemos por lo que se puede medir sobre lo que vieron.

1 / 6
Sobre los datos de entrenamiento, el segundo modelo es perfecto. La única columna que distingue aprender de memorizar es la de la derecha, y para tenerla hay que haber apartado datos antes de entrenar: después ya no se puede, porque el modelo los vio.

Antes de seguir, predecí

Un modelo acierta el 100 por ciento sobre los datos con los que entrenó. ¿Qué aprendió?

El supuesto sin el cual nada funciona

Hay un supuesto sin el cual nada de esto funciona: que los datos nuevos vienen de la misma distribución que los de entrenamiento. Si el mundo cambia, el modelo entrenado sobre el mundo viejo deja de valer, aunque su matemática siga siendo correcta.

Eso es el desplazamiento de distribución, y es la causa más común de que un modelo que funcionaba se degrade en producción sin que nadie haya tocado el código. Un modelo de demanda entrenado antes de una devaluación no está roto: está respondiendo sobre otro mundo.

Supervisado, no supervisado y por refuerzo

Los problemas se agrupan según qué información hay. Supervisado: cada ejemplo viene con su respuesta correcta, y se aprende a predecirla —clasificación si es una categoría, regresión si es un número—.

No supervisado: no hay respuestas, y se busca estructura: grupos, direcciones de variación, anomalías. Por refuerzo: no hay respuesta correcta sino una recompensa diferida, y hay que descubrir qué secuencia de acciones la maximiza. La mayoría de lo que se usa en la industria es supervisado, y su límite es conseguir datos etiquetados.

No hay almuerzo gratis

Hay un resultado incómodo que conviene conocer temprano: los teoremas de “no hay almuerzo gratis”. Promediando sobre todos los problemas posibles, ningún algoritmo es mejor que otro, ni que tirar una moneda.

La lectura correcta no es que da igual qué se use, sino que todo algoritmo funciona por los supuestos que trae incorporados. Una regresión lineal supone que la relación es aproximadamente lineal; una red convolucional supone que lo que importa es local y se repite. Elegir un modelo es elegir supuestos, y acierta el que los tenga adecuados al problema.

Familia, costo y algoritmo de búsqueda

En la práctica, montar un modelo es elegir tres cosas. La familia de funciones entre las que se busca. La función de costo que mide qué tan mal se está. Y el algoritmo de optimización que recorre la familia buscando el mínimo.

Casi todo lo que sigue en la materia es variar esas tres piezas. Y hay una cuarta que domina el resultado y no es matemática: los datos. Más datos bien etiquetados suelen rendir más que un modelo más sofisticado, y datos mal etiquetados ponen un techo que ningún algoritmo atraviesa.

Correlaciones, no causas

Conviene fijar expectativas desde el principio. Un modelo aprende correlaciones, no causas: puede predecir bien y ser inútil para decidir una intervención. Y reproduce lo que hay en los datos, incluidos los sesgos de quien los generó.

Por eso la pregunta inicial de cualquier proyecto no es qué modelo usar, sino qué se va a decidir con la predicción y cuánto cuesta cada tipo de error. De ahí sale todo lo demás, incluida la métrica.

Separar datos, bien y mal

from sklearn.model_selection import train_test_split

# Mal: con series de tiempo, partir al azar deja el futuro en entrenamiento
X_train, X_test = train_test_split(X, test_size=0.2, random_state=0)

# Bien: el corte es temporal, como va a ser en producción
cutoff = "2026-07-01"
train = data[data.fecha <  cutoff]
test  = data[data.fecha >= cutoff]

# Mal: normalizar antes de partir filtra información del test al entrenamiento
X = scaler.fit_transform(X)
X_train, X_test = train_test_split(X, test_size=0.2)

# Bien: el escalador aprende sólo con el entrenamiento
X_train, X_test = train_test_split(X, test_size=0.2)
X_train = scaler.fit_transform(X_train)
X_test  = scaler.transform(X_test)      # transform, no fit_transform

Los dos errores de la izquierda producen exactamente el mismo síntoma: métricas de validación buenísimas y un modelo que en producción anda mucho peor. Y los dos son invisibles, porque nada falla.

Lo que pasa después de entrenar

EtapaQué se mideQué sale mal
Entrenamientoerror sobre lo vistono dice nada sobre generalizar
Validaciónerror sobre datos apartadosse degrada al usarla muchas veces para elegir
Pruebaestimación finaldeja de servir apenas se la mira dos veces
Producciónel error realcambia con el tiempo aunque el modelo no cambie
La última fila es la que no aparece en ningún curso y es la que decide si un modelo sirve: el mundo cambia, y el modelo entrenado sobre el mundo viejo se desactualiza solo.

Cierre

Aprender es generalizar, no memorizar, y sólo se mide sobre datos apartados, suponiendo que la distribución no cambió. Ningún algoritmo gana en abstracto: gana el que trae los supuestos correctos. Familia de funciones, costo y optimizador son las piezas; los datos son el techo.

Autoevaluación

¿Lo entendiste?

¿Por qué separar datos no es un trámite metodológico?
¿Qué supuesto sostiene todo el andamiaje?
Un modelo de demanda empeora después de una devaluación, sin que nadie toque el código. ¿Qué pasó?
¿Qué es exactamente «generalizar»?