Introducción
Los sistemas recomendadores son algoritmos de filtrado de información que predicen las preferencias de un usuario y sugieren ítems relevantes (películas, productos, canciones, artículos). Son uno de los sistemas de IA más impactantes económicamente: la recomendación personalizada es responsable de una fracción significativa de los ingresos de las mayores plataformas digitales del mundo.
- Amazon: el 35% de sus ventas proviene de recomendaciones
- YouTube: el 70% del tiempo de visionado viene de recomendaciones
- Netflix: el 75% de lo que se ve proviene del sistema de recomendación
Tema 1: Tipos de Sistemas Recomendadores
1.1 Popular Based (Basado en popularidad)
El sistema más simple: recomienda los ítems más populares globalmente (los más vistos, comprados o valorados). No requiere datos del usuario y es efectivo para nuevos usuarios (cold start).
- Ventajas: simple, no necesita datos del usuario, muy escalable
- Limitaciones: no personalizado, tiende a recomendar siempre los mismos ítems populares, ignora el nicho
- Casos de uso: secciones "Tendencias", "Los más vistos esta semana"
1.2 Content-Based Filtering (Filtrado por contenido)
Recomienda ítems similares a los que el usuario ha consumido o valorado positivamente. La similitud se calcula sobre los atributos del ítem (género, director, tags, descripción...).
El proceso típico es: representar cada ítem como un vector de características (usando TF-IDF, embeddings, etc.), calcular similitud coseno entre ítems, recomendar los K más similares a los que le gustaron al usuario.
- Ventajas: no necesita datos de otros usuarios, buena explicabilidad ("te recomendamos esto porque viste X")
- Limitaciones: sobrespecialización (el usuario queda atrapado en sus gustos actuales), no descubre ítems de categorías nuevas
1.3 Collaborative Filtering (Filtrado colaborativo)
Recomienda ítems basándose en el comportamiento de usuarios similares. La hipótesis es que si dos usuarios han valorado muchos ítems de forma similar en el pasado, seguirán teniendo gustos similares en el futuro.
Existen dos variantes principales:
- User-User CF: "usuarios que se parecen a ti también vieron esto"
- Item-Item CF: "los que vieron esto también vieron aquello"
- Ventajas: descubre ítems nuevos fuera del perfil de contenido, efecto serendipia
- Limitaciones: problema del cold start (nuevos usuarios/ítems), escalabilidad con millones de usuarios
1.4 Hybrid Systems (Sistemas Híbridos)
Combinan múltiples enfoques para aprovechar sus fortalezas y mitigar sus debilidades. Netflix, por ejemplo, combina Collaborative Filtering con Content-Based y con datos contextuales (hora del día, dispositivo, etc.).
| Tipo | Basado en | Problema cold start | Personalización |
|---|---|---|---|
| Popular Based | Popularidad global | No aplica | Ninguna |
| Content-Based | Atributos del ítem | Usuarios nuevos solo | Media |
| Collaborative | Comportamiento de usuarios | Ambos (usuarios e ítems) | Alta |
| Hybrid | Combinación | Mitigado | Muy alta |
Tema 2: El Fenómeno Long Tail
2.1 Distribución de popularidad
La popularidad de los ítems en plataformas digitales sigue una distribución de ley de potencias (similar a la ley de Zipf): unos pocos ítems concentran la mayoría de las interacciones, mientras que la gran mayoría tienen muy pocas.
La Long Tail es la "cola larga" de esta distribución: los miles de ítems nicho con poca popularidad individual pero que en conjunto representan un volumen enorme. Amazon y Netflix descubrieron que la suma de las ventas de ítems de nicho supera las ventas de los blockbusters.
2.2 Implicaciones para los sistemas recomendadores
- Un buen sistema recomendador debe ser capaz de recomendar ítems de la Long Tail (diversidad)
- Los sistemas basados solo en popularidad refuerzan los hits y matan el nicho
- El Collaborative Filtering y los modelos de factores latentes son buenos para explorar la Long Tail
- Se busca el equilibrio entre relevancia (dar lo que al usuario le gustará) y diversidad (ampliar sus horizontes)
Tema 3: Entradas del Sistema Recomendador
3.1 Rating Matrix (Matriz de valoraciones)
La fuente de datos principal es la Rating Matrix U×I: una matriz donde las filas son usuarios, las columnas son ítems, y las celdas contienen la valoración (explícita: 1-5 estrellas; implícita: click, visualización, compra). Esta matriz es extremadamente sparse (dispersa): la mayoría de las celdas están vacías porque cada usuario solo ha interactuado con una fracción mínima del catálogo.
3.2 Catalog (Catálogo de ítems)
Los metadatos de los ítems: título, género, director, actores, descripción, precio, categoría, etiquetas, etc. Son la base del Filtrado por Contenido.
3.3 User Data (Datos del usuario)
Información demográfica y de perfil del usuario: edad, género, ubicación, historial de compras, preferencias declaradas. Útil para el arranque en frío y para personalización.
3.4 Context (Contexto)
Información sobre el contexto de la interacción: hora del día, día de la semana, dispositivo usado, ubicación geográfica, evento (Black Friday, Navidad). Los sistemas conscientes del contexto mejoran significativamente la relevancia.
Tema 4: Memory-Based vs Model-Based
4.1 Memory-Based (Basado en memoria)
Trabaja directamente con la Rating Matrix sin aprender un modelo. Calcula similitudes en tiempo real usando todos los datos disponibles.
- Algoritmo: KNN (K-Nearest Neighbors) con similitud coseno o correlación de Pearson
- Ventajas: simple, interpretable, no requiere entrenamiento previo
- Limitaciones: no escala bien (O(U·I) en espacio, O(U²) en tiempo), problemas con sparse matrices
4.2 Model-Based (Basado en modelo)
Aprende un modelo compacto de las preferencias a partir de los datos, que luego se usa para hacer predicciones. La técnica más importante es la factorización matricial.
Matrix Factorization (SVD / Factores Latentes)
La Rating Matrix R ≈ P · Qᵀ se aproxima como el producto de dos matrices de menor rango: P (usuarios × k factores latentes) y Q (ítems × k factores latentes). Los factores latentes capturan preferencias abstractas no explicitadas (por ejemplo, "le gustan las comedias románticas independientes").
Se minimiza el error sobre los valores conocidos de R con regularización:
Ventajas del Model-Based
- Escala bien a millones de usuarios e ítems
- Maneja bien la sparsity de la Rating Matrix
- Los factores latentes pueden capturar patrones sutiles de preferencia
- Permite añadir información adicional (side information)
4.3 Deep Learning para recomendación
Las redes neuronales profundas permiten aprender representaciones no lineales de usuarios e ítems. Modelos como Neural Collaborative Filtering (NCF), Wide & Deep (Google) o las redes de atención (Transformer-based recommenders) representan el estado del arte actual.