3 · Cold-start y dispersión
Los dos problemas que definen la ingeniería de recomendadores: una matriz casi vacía hace poco fiables las similitudes, y los usuarios/ítems nuevos no tienen datos en absoluto.
Dos problemas estructurales moldean todo recomendador: la dispersión (con <1% de entradas observadas, dos usuarios rara vez se solapan, así que las similitudes son ruidosas) y el cold-start (un usuario o ítem nuevo tiene cero interacciones, así que el filtrado colaborativo puro no puede decir nada).
Sin esto:
Ignóralos y tu recomendador funciona genial en una demo y se desmorona en producción — mudo ante ítems nuevos, poco fiable para usuarios casuales y dominado por unos pocos éxitos populares.
Dos problemas son tan fundamentales que el resto del campo es en gran medida una respuesta a ellos.
Dispersión. Las matrices reales tienen mucho menos del 1% de entradas llenas. La consecuencia es brutal para el filtrado colaborativo: para juzgar si dos usuarios son 'similares', comparas los ítems que ambos valoraron — pero con datos dispersos, dos usuarios pueden compartir solo uno o dos ítems (o cero), volviendo ruidosa o indefinida cualquier estimación de similitud. Los ítems populares se valoran mucho y dominan; la cola larga se queda sin señal. Gran parte del recsys (la factorización de matrices en especial) existe para extraer estructura fiable de esta casi-vacuidad.
Cold-start. El filtrado colaborativo aprende solo de interacciones pasadas — así que está indefenso cuando no hay ninguna:
- Usuario nuevo: alguien recién registrado no ha valorado nada. ¿A quién se parece? A nadie aún.
- Ítem nuevo: una película añadida hoy no tiene valoraciones. ¿Con qué gusto coincide? Desconocido.
- Sistema nuevo: un producto recién lanzado tiene una matriz vacía por completo.
Las salidas son justamente las otras familias: los métodos basados en contenido (Capítulo 2) esquivan el cold-start de ítems usando características del ítem (una película nueva igual tiene género y reparto), y la popularidad / onboarding maneja usuarios nuevos hasta que generan señal. Los sistemas de producción son híbridos precisamente porque ningún método único sobrevive a ambos problemas.
Abajo hacemos concreta la dispersión: a medida que ocultamos más de una matriz, el número de usuarios que comparten suficientes ítems para ser comparables se desploma — una medición directa de por qué el filtrado colaborativo ingenuo tiene dificultades.
Python (in browser)
Conforme la matriz se hace más dispersa, la proporción de pares de usuarios con solapamiento suficiente se desploma — la raíz cuantitativa del problema de cold-start/dispersión.
Python runs entirely in your browser via Pyodide (~6 MB on first Run, cached after).
Se añade una película nueva al catálogo con cero valoraciones. ¿Por qué el filtrado colaborativo puro no puede recomendarla, y qué lo soluciona?
- La dispersión (>99% faltante) hace diminutos los solapamientos usuario/ítem, así que las similitudes basadas en memoria son ruidosas o indefinidas.
- Cold-start: usuarios/ítems/sistemas nuevos no tienen interacciones, así que el filtrado colaborativo puro queda mudo.
- Las características basadas en contenido arreglan el cold-start de ítems; la popularidad/onboarding arregla a los usuarios nuevos; producción = híbridos.
Cada plataforma de streaming/e-commerce enfrenta cold-start a diario (estrenos, nuevos registros) e ingenia onboarding explícito + respaldos de contenido para ello.
Si lo quitas: Ignorar cold-start/dispersión produce un recomendador que solo funciona para usuarios avanzados en ítems populares — inútil para el crecimiento.