Cada vez que alguien me pregunta por dónde empezar en Machine Learning, o qué tipo de algoritmo usar para “su proyecto”, mi primera respuesta siempre es la misma: depende. Y no, no es una excusa de consultor. Es que el 90% de la decisión se reduce a dos paradigmas fundamentales: ¿tienes etiquetas o no? Hablo, claro, del aprendizaje supervisado y no supervisado. No son rivales; son herramientas, y como buen carpintero, tienes que saber cuándo usar el martillo y cuándo el destornillador.
Aprendizaje Supervisado: Cuando sabes qué buscas
Para mí, el aprendizaje supervisado es como tener un jefe que te da ejemplos claros de lo que quiere. Tienes un conjunto de datos donde cada entrada ya tiene una “respuesta correcta” asociada. Si quiero que un modelo detecte perros en fotos, le doy miles de fotos y le digo “esto es un perro”, “esto no es un perro”. Con ese feedback, el modelo aprende a generalizar.
¿Cuándo lo uso? Lo saco a relucir cuando el problema es predecir un valor (regresión) o una categoría (clasificación). Por ejemplo:
- Predecir el precio de una casa basándose en sus características (regresión).
- Clasificar emails como spam o no spam (clasificación).
- Diagnosticar si un cliente va a darse de baja (churn) en el próximo mes.
Mi opinión: Funciona de maravilla cuando tienes muchos datos etiquetados de buena calidad. Pero ojo, esto es crucial. Si tus etiquetas son inconsistentes, erróneas o están sesgadas, tu modelo será una extensión glorificada de esos problemas. He librado mis batallas con el sesgo implícito en los datos más veces de las que me gustaría admitir. Además, etiquetar datos puede ser una agonía, un trabajo manual tedioso y costoso. Si no lo has vivido, créeme, te robará el alma. Es un compromiso, y si lo aceptas, las recompensas pueden ser enormes. Aquí es donde los modelos brillan de verdad, entendiendo la relación entre las entradas y las salidas esperadas.
Aprendizaje No Supervisado: Cuando quieres que la IA descubra patrones
El aprendizaje no supervisado es mi campo de juegos favorito cuando la información es escasa, o más bien, cuando no sé qué buscar. Aquí, no hay etiquetas. Le doy a la IA un montón de datos sin ninguna guía explícita, y le pido que encuentre estructuras, patrones o agrupaciones por sí misma. Es como soltar a un niño en un parque de bolas y esperar que él solo agrupe las bolas por color o tamaño, sin que le hayamos dicho nada.
¿Cuándo lo uso? Es mi opción por defecto para:
- Segmentación de clientes: Para entender qué tipos de usuarios tengo sin haberlos definido previamente.
- Detección de anomalías: Identificar transacciones fraudulentas o comportamientos inusuales en sistemas, donde no tengo etiquetas de “fraude” para cada caso posible.
- Reducción de dimensionalidad: Cuando tengo demasiadas características y quiero simplificar el problema, encontrando las más relevantes sin perder demasiada información. Esto me ayuda a combatir la maldición de la dimensionalidad y hacer que otros algoritmos sean más eficientes.
Mi opinión: El poder del no supervisado reside en su capacidad para revelar insights ocultos. La IA no está predispuesta por nuestras etiquetas humanas, lo que puede llevar a descubrimientos sorprendentes. La pega es que la interpretación de los resultados puede ser más subjetiva. Si un algoritmo me dice que tengo tres grupos de clientes, yo tengo que invertir tiempo en entender por qué esos clientes forman un grupo. No hay una métrica de “precisión” simple como en el supervisado. Es más una labor de exploración.
Mi regla de pulgar (y por qué a veces las mezclo)
Para mí, la elección no es una guerra, sino una secuencia lógica dictada por el problema y los recursos.
- ¿Tienes etiquetas fiables y suficientes para el problema que quieres resolver? Si la respuesta es un rotundo sí, casi siempre empiezo con aprendizaje supervisado. La dirección explícita que dan las etiquetas suele llevar a modelos más potentes y predecibles. Y si el problema es de clasificación o regresión pura, ahí no hay duda; ya escribí sobre la importancia de saber distinguir entre clasificación y regresión para entender el problema.
- Si no tienes etiquetas, o son escasas, o quieres entender mejor tus datos antes de definir un problema supervisado: Voy directo al aprendizaje no supervisado. A menudo, lo uso como una fase de pre-procesamiento o exploración. Por ejemplo, puedo usar clustering para encontrar grupos de clientes, y luego etiquetar manualmente ejemplos representativos de cada grupo para construir un dataset más pequeño y balanceado para un modelo supervisado posterior. Es un híbrido que me ha salvado de muchos quebraderos de cabeza y costes de etiquetado.
Al final, se trata de ser pragmático. No te cases con una técnica; cásate con el problema que intentas resolver. Entiende la naturaleza de tus datos, los recursos que tienes para etiquetar, y la pregunta que de verdad quieres responder. El ML es una caja de herramientas, y tanto el martillo supervisado como el destornillador no supervisado tienen su momento de brillar.