Inteligencia Artificial · Capítulo 3

Machine Learning: Cómo las Máquinas Aprenden de los Datos

Un recorrido riguroso por el corazón de la IA moderna: algoritmos que aprenden solos, sin que nadie les programe cada regla.


¿Qué es el Machine Learning?

En 1959, Arthur Samuel, un investigador de IBM, acuñó una definición que todavía resuena: el Machine Learning es el campo de estudio que da a las computadoras la capacidad de aprender sin ser explícitamente programadas. Hoy, esa frase tan concisa esconde una revolución técnica que subyace a casi todo lo que hace la IA moderna.

Definición formal: El Machine Learning (ML) es una rama de la inteligencia artificial que desarrolla algoritmos capaces de mejorar su rendimiento en una tarea determinada a partir de la experiencia (datos), sin necesidad de instrucciones explícitas para cada caso.

Para entender qué hace especial al ML, conviene compararlo con la programación tradicional. Piensa en cómo funciona un programa clásico para detectar correos no deseados (spam):

Programación tradicional vs. Machine Learning

En la programación clásica, un ingeniero analiza cientos de correos spam y escribe reglas manualmente: "Si el asunto contiene 'GANA DINERO GRATIS' Y el remitente está en lista negra Y hay más de tres signos de exclamación, entonces es spam." Este enfoque puede funcionar para patrones sencillos, pero falla en cuanto los spammers cambian sus tácticas. Además, requiere que alguien previamente humano identifique y codifique cada patrón.

En el enfoque ML, en cambio, el sistema recibe miles de correos etiquetados (spam / no spam) y aprende por sí mismo cuáles son las características que predicen la categoría correcta. Si los spammers cambian su vocabulario, el modelo puede reentrenarse con nuevos datos y adaptarse automáticamente.

PROGRAMACIÓN TRADICIONAL: Datos + Reglas → Respuestas MACHINE LEARNING: Datos + Respuestas → Reglas (modelo)

Esta inversión conceptual es profunda. En lugar de que los programadores codifiquen el conocimiento, los algoritmos lo extraen de los datos. Eso convierte al ML en una herramienta especialmente poderosa para problemas donde las reglas son demasiado complejas, demasiado numerosas, o simplemente desconocidas para nosotros.

Los Tres Tipos Principales de Machine Learning

1. Aprendizaje Supervisado

Es el tipo más común y el que produce la mayor parte de las aplicaciones prácticas actuales. El nombre viene de la idea de que el algoritmo aprende bajo la "supervisión" de etiquetas correctas. Se le proporciona un conjunto de ejemplos donde cada entrada (input) tiene asociada una salida conocida (label o etiqueta), y el modelo aprende a mapear una a la otra.

Ejemplos concretos:

Un concepto fundamental en el aprendizaje supervisado es la división de datos en conjuntos de entrenamiento (training set) y prueba (test set). El modelo aprende exclusivamente sobre el conjunto de entrenamiento (típicamente 70-80% de los datos) y luego se evalúa en el conjunto de prueba (20-30%) para estimar cuán bien generalizará con datos nunca antes vistos. Esta separación es fundamental: sin ella, no sabríamos si el modelo realmente aprendió algo útil o simplemente memorizó los ejemplos de entrenamiento.

2. Aprendizaje No Supervisado

Aquí no hay etiquetas. El algoritmo recibe datos crudos y debe encontrar por sí mismo la estructura oculta, los patrones, o las agrupaciones presentes en esos datos. Es un enfoque más cercano a cómo los seres humanos exploran datos desconocidos.

Clustering (agrupamiento): El algoritmo agrupa los datos en clusters (grupos) de forma que los elementos dentro de un mismo grupo se parezcan entre sí más que a los elementos de otros grupos.

El algoritmo más conocido para esto es k-means. Su funcionamiento es elegantemente simple:

Algoritmo K-Means: 1. El usuario define k (número de grupos deseados, ej: k=3) 2. Se colocan k centroides en posiciones aleatorias 3. Cada punto de datos se asigna al centroide más cercano 4. Se recalcula la posición de cada centroide como el promedio de todos los puntos asignados a él 5. Se repiten los pasos 3 y 4 hasta que los centroides no cambien (convergencia) Aplicaciones: - Segmentación de clientes (clientes similares en mismo grupo) - Compresión de imágenes (reducir colores similares a uno) - Detección de anomalías (puntos lejos de todos los clusters)

Reducción de dimensionalidad: Técnicas como el Análisis de Componentes Principales (PCA, por sus siglas en inglés) comprimen datos de alta dimensión a una representación más compacta, preservando la máxima cantidad de información posible. Si tienes datos con 100 variables, PCA puede reducirlos a 2 o 3 dimensiones que capturen el 95% de la variación original, permitiendo visualizarlos y procesarlos más eficientemente.

3. Aprendizaje por Refuerzo

Este paradigma es radicalmente diferente. En lugar de aprender de un conjunto de datos fijo, el agente aprende interactuando con un entorno, tomando acciones y recibiendo recompensas (o penalizaciones). El objetivo es aprender una política de comportamiento que maximice la recompensa acumulada a lo largo del tiempo.

Los tres elementos del Aprendizaje por Refuerzo:

Los ejemplos más famosos son los videojuegos y el ajedrez. En 2016, DeepMind entrenó AlphaGo con aprendizaje por refuerzo para jugar Go, el complejo juego de mesa asiático, y derrotó al campeón mundial Lee Sedol con un marcador de 4-1. Lo revolucionario fue que AlphaGo descubrió movimientos que ningún jugador humano había considerado en miles de años de historia del juego. En la robótica, este enfoque permite que los robots aprendan a caminar, manipular objetos o volar drones mediante miles de horas de simulación antes de interactuar con el mundo físico.

4. Aprendizaje Semi-Supervisado

Una variante práctica que combina una pequeña cantidad de datos etiquetados con una gran cantidad de datos no etiquetados. Es valioso porque etiquetar datos es costoso y lento (requiere expertos humanos), mientras que recolectar datos crudos suele ser barato. Los modelos de lenguaje modernos como GPT usan este enfoque: primero aprenden de enormes cantidades de texto sin etiquetar, luego se refinan con pequeñas cantidades de datos cuidadosamente etiquetados por humanos.

El Pipeline del Machine Learning

Cualquier proyecto de ML real sigue una secuencia de pasos que los profesionales llaman el "pipeline" o flujo de trabajo. Conocer este proceso es esencial para entender por qué el ML es mucho más que entrenar un modelo.

  1. Recolección de datos: Definir qué datos se necesitan y cómo obtenerlos (bases de datos, APIs, scraping, sensores, encuestas). Es la fase más subestimada y la que más determina el éxito.
  2. Preprocesamiento: Limpiar los datos: manejar valores faltantes, eliminar duplicados, corregir errores. En proyectos reales, esto ocupa entre el 60% y el 80% del tiempo total.
  3. Ingeniería de características (Feature Engineering): Transformar los datos brutos en características informativas que el modelo pueda utilizar. Por ejemplo, a partir de una fecha, extraer el día de la semana, el mes, si es festivo, etc.
  4. Selección del modelo: Elegir el tipo de algoritmo apropiado según el problema (¿clasificación? ¿regresión? ¿clustering?), el tamaño de los datos y los recursos disponibles.
  5. Entrenamiento: Ajustar los parámetros del modelo utilizando el conjunto de entrenamiento. El algoritmo minimiza una función de pérdida que mide cuánto se equivoca.
  6. Evaluación: Medir el rendimiento en el conjunto de prueba con métricas apropiadas. Esta evaluación honesta determina si el modelo es útil.
  7. Despliegue (Deployment): Integrar el modelo en un sistema de producción donde pueda hacer predicciones sobre datos reales en tiempo real o por lotes.

Sobreajuste y Subajuste: El Dilema Central

Uno de los conceptos más importantes de todo el ML es la distinción entre sobreajuste (overfitting) y subajuste (underfitting). Entenderlos es fundamental para construir modelos que realmente funcionen en el mundo real.

Sobreajuste (Overfitting): El modelo aprende los datos de entrenamiento demasiado bien, incluyendo el ruido y las excepciones aleatorias. Funciona perfectamente en entrenamiento pero falla en datos nuevos. Es como un estudiante que memoriza las respuestas exactas del examen de práctica pero no puede responder preguntas ligeramente distintas.

Subajuste (Underfitting): El modelo es demasiado simple para capturar los patrones reales de los datos. Funciona mal incluso en entrenamiento. Es como un estudiante que no estudió nada.

La solución está en el balance sesgo-varianza (bias-variance tradeoff). Los modelos muy simples tienen alto sesgo (underfitting); los muy complejos tienen alta varianza (overfitting). Se busca el punto de complejidad óptima que minimize ambos.

Técnicas para combatir el sobreajuste:

Métricas de Evaluación

Elegir la métrica correcta es crucial: optimizar la métrica equivocada puede llevar a modelos que son tecnicamente "buenos" en papel pero inútiles o peligrosos en la práctica.

Métrica Fórmula Cuándo usarla
Exactitud (Accuracy) Correctos / Total Clases balanceadas; cuando los errores tienen el mismo costo
Precisión (Precision) VP / (VP + FP) Cuando los falsos positivos son costosos (spam: no marcar emails legítimos como spam)
Recall (Sensibilidad) VP / (VP + FN) Cuando los falsos negativos son costosos (cáncer: no perder casos reales)
F1 Score 2×(P×R)/(P+R) Balance entre precisión y recall; clases desbalanceadas
ROC-AUC Área bajo la curva ROC Comparar modelos independientemente del umbral de decisión
RMSE √(Σ(pred-real)²/n) Regresión; penaliza más los errores grandes

Los Algoritmos Más Importantes (Explicados Intuitivamente)

Regresión Lineal

El algoritmo más antiguo y fundamental. Encuentra la línea recta que mejor representa la relación entre variables. Si graficas el precio de las casas contra su tamaño, la regresión lineal traza la línea que minimiza la suma de las distancias verticales al cuadrado entre los puntos y la línea. La pendiente de esa línea te dice "por cada metro cuadrado adicional, el precio sube X pesos".

Regresión Logística

A pesar del nombre, se usa para clasificación. En lugar de predecir un número continuo, predice una probabilidad entre 0 y 1 usando la función sigmoide. Es el estándar en medicina para modelos de riesgo (ej: probabilidad de infarto cardíaco dado conjunto de factores de riesgo).

Árboles de Decisión

Aprenden una serie de preguntas if-then que dividen el espacio de datos. Imagina un árbol donde cada nodo hace una pregunta ("¿Ingreso anual > $50,000?") y cada rama lleva a más preguntas hasta llegar a una hoja con la predicción final. Son altamente interpretables (se pueden visualizar y explicar) pero tienden al sobreajuste cuando son muy profundos.

Random Forest (Bosque Aleatorio)

Construye cientos o miles de árboles de decisión, cada uno entrenado en una muestra aleatoria de los datos y con un subconjunto aleatorio de características. La predicción final es la mayoría de votos (clasificación) o el promedio (regresión) de todos los árboles. Al combinar muchos modelos débiles, el conjunto es mucho más robusto que cualquier árbol individual. Este concepto se llama ensemble learning.

Support Vector Machine (SVM)

Encuentra el hiperplano (línea en 2D, plano en 3D, hiperplano en dimensiones superiores) que separa las clases con el margen máximo posible. Los puntos más cercanos al hiperplano de decisión se llaman "vectores de soporte" y son los únicos que importan para definir la frontera. Los SVM pueden manejar datos no linealmente separables usando el "truco del kernel", que proyecta los datos a un espacio de dimensión superior donde sí son separables.

K-Vecinos Más Cercanos (k-NN)

Uno de los algoritmos más simples conceptualmente: para clasificar un nuevo punto, encuentra los k puntos más cercanos en el conjunto de entrenamiento y asigna la clase mayoritaria entre ellos. No hay fase de entrenamiento real; toda la "inteligencia" está en los datos almacenados. El valor de k es crucial: k=1 es muy sensible al ruido; k muy grande puede ignorar patrones locales.

Aplicaciones en la Vida Diaria

El Machine Learning está presente en decenas de momentos de tu día, aunque no lo percibes:

Resumen del Capítulo