Ultralytics YOLO27: Únete a la lista de espera.
Licencia YOLO
Volver al glosario de Ultralytics

Recommendation System

Un sistema de recomendación predice qué elementos interesarán a un usuario y los ordena por relevancia. Incluye filtrado colaborativo y basado en contenido, flujos de trabajo, retos y código.

Un sistema de recomendación, o recomendador, es un software que predice qué elementos puede interesarle a un usuario —como productos, vídeos, canciones, artículos o publicaciones— y los ordena para ese usuario. Aprende a partir de comentarios explícitos, como las valoraciones con estrellas, y, mucho más a menudo, de comentarios implícitos, como los clics, el tiempo de visualización y las compras, lo que lo convierte en una de las aplicaciones más extendidas del aprendizaje automático. Dos hitos marcaron este campo: la descripción de Amazon de 2003 del filtrado colaborativo entre elementos y el Premio Netflix (2006-2009), que pagó un millón de dólares al equipo que mejoró un 10 % las predicciones de Netflix sobre las valoraciones de películas.

Cómo funcionan los sistemas de recomendación#

El filtrado colaborativo utiliza únicamente el patrón de quién ha interactuado con qué. Los métodos basados en usuarios buscan usuarios con historiales similares; los métodos basados en elementos buscan elementos que gustan a los mismos usuarios, y la factorización de matrices, popularizada durante el Premio Netflix, aprende un vector para cada usuario y elemento cuyo producto escalar predice su interacción. En cambio, el filtrado basado en contenido describe los elementos mediante sus atributos, como el género, el texto procesado con procesamiento del lenguaje natural (NLP) o los embeddings de imágenes, y recomienda elementos similares a los que ya han gustado a un usuario. Esto también funciona con elementos con los que nadie ha interactuado todavía. Los sistemas híbridos combinan ambas señales para que las características del contenido puedan situar un elemento nuevo hasta que se acumulen suficientes interacciones.

Este ejemplo aplica filtrado colaborativo basado en elementos a una matriz pequeña de valoraciones y predice las valoraciones de las películas que un usuario no ha puntuado a partir de la similitud coseno entre las columnas de valoraciones de las películas:

import numpy as np

# Ratings from 4 users (rows) for 5 movies (columns); 0 means not rated
ratings = np.array(
    [
        [5, 4, 0, 1, 0],
        [4, 5, 1, 0, 1],
        [1, 0, 5, 4, 5],
        [0, 1, 4, 5, 0],
    ]
)

# Item-item cosine similarity between the movies' rating columns
norms = np.linalg.norm(ratings, axis=0)
item_sim = ratings.T @ ratings / np.outer(norms, norms)

# Predict user 3's rating of each movie as a similarity-weighted average of their own ratings
user = ratings[3]
rated = user > 0
scores = item_sim[:, rated] @ user[rated] / item_sim[:, rated].sum(axis=1)

for movie in np.flatnonzero(~rated):
    print(f"Movie {movie}: predicted rating {scores[movie]:.2f}")

El usuario 3, la última fila, ha valorado muy bien las películas 2 y 3 y mal la película 1, así que la película 4, cuyas valoraciones siguen el patrón de las películas 2 y 3, obtiene una valoración prevista de 4.10; la película 0, cuyas valoraciones siguen el patrón de la película 1, obtiene 2.09. El sistema recomienda la película 4.

Los recomendadores de aprendizaje profundo aprenden estas representaciones de principio a fin. Las redes de dos torres generan embeddings de usuarios y elementos por separado, de modo que recuperar candidatos se convierte en una búsqueda vectorial de los embeddings de elementos más cercanos al embedding de un usuario. Los modelos secuenciales, como los transformers, procesan el historial de un usuario en orden para predecir la siguiente interacción.

El proceso de varias etapas#

Los grandes servicios no pueden ejecutar un modelo pesado sobre millones de elementos en cada solicitud, así que generan recomendaciones por etapas. La generación de candidatos, o recuperación, reduce el catálogo a unos cientos de elementos mediante señales de bajo coste, como el filtrado colaborativo o la búsqueda de embeddings. Después, un modelo de clasificación asigna a cada candidato una puntuación a partir de características detalladas para predecir la probabilidad de un clic, una visualización o una compra; finalmente, una fase de reordenación añade diversidad, actualidad y reglas de negocio. YouTube describió este diseño de dos etapas en 2016. Cada recomendación mostrada también genera los comentarios que se utilizan para entrenar el siguiente modelo, por lo que el sistema aprende a partir de datos influidos por sus propias decisiones anteriores.

Los sistemas recientes escalan los modelos de clasificación y recuperación como los modelos de lenguaje. Los recomendadores generativos de Meta, publicados en ICML 2024, tratan las acciones de cada usuario como una secuencia, alcanzaron 1,5 billones de parámetros y mejoraron las métricas un 12,4 % en pruebas A/B en línea.

Recomendaciones visuales#

Los catálogos de moda, muebles y arte recomiendan por apariencia, así que las funciones de «más como esto» comparan embeddings de imágenes de fotos de productos, mientras que las funciones de «compra el look» primero utilizan la detección de objetos para recortar cada elemento de una foto de una escena y después buscan en el catálogo productos visualmente similares. La misma recuperación permite buscar datos de entrenamiento: Buscar imágenes similares en Ultralytics Platform muestra hasta 24 de las imágenes más cercanas de conjuntos de datos públicos y de equipos, cada una con una puntuación de similitud; omite las imágenes que ya están en el conjunto de datos y puede partir de las imágenes de validación con peores resultados de un modelo.

Aplicaciones#

  • Comercio minorista y comercio electrónico: Las páginas de productos muestran listas de «los clientes que compraron esto también compraron» y páginas de inicio personalizadas basadas en el historial de navegación y compras.
  • Contenido multimedia en streaming: Los servicios de vídeo y música ordenan títulos y generan listas de reproducción a partir del historial de visualización y escucha; Netflix también personaliza las imágenes que muestra para cada título.
  • Redes sociales y noticias: Las plataformas ordenan publicaciones, vídeos cortos y artículos según la interacción prevista y actualizan la clasificación cada vez que un usuario abre el feed.
  • Moda: La búsqueda por similitud visual sugiere prendas que encajan con el estilo, el color o el estampado de un elemento que el comprador ha visto o fotografiado.
  • Búsqueda: Un motor de búsqueda responde a una consulta explícita, mientras que un recomendador se anticipa a lo que quiere el usuario sin necesidad de una consulta; los sistemas modernos comparten sus componentes de recuperación y clasificación.
  • Búsqueda vectorial y bases de datos vectoriales: Encuentran los embeddings almacenados más cercanos a un embedding de consulta, el componente básico que utiliza un recomendador para recuperar elementos.
  • Modelos de reordenación: Modelos de segunda etapa que vuelven a puntuar con mayor precisión una lista breve de candidatos; desempeñan la función de clasificación en un recomendador.
  • Modelado predictivo: La etapa de clasificación es un modelo predictivo de la probabilidad de interacción, mientras que el recomendador completo también se ocupa de la recuperación, el orden y el ciclo de retroalimentación.

Retos#

  • Problema del arranque en frío: Los usuarios y elementos nuevos no tienen historial de interacciones, por lo que los sistemas recurren a la popularidad, las preguntas de incorporación o las características del contenido.
  • Dispersión: Cada usuario interactúa con una fracción ínfima de un catálogo amplio, por lo que la mayor parte de la matriz de usuarios y elementos está vacía.
  • Sesgo de popularidad y ciclos de retroalimentación: El entrenamiento con interacciones registradas favorece los elementos que ya se mostraban con frecuencia, lo que limita lo que ven los usuarios y puede crear burbujas de filtros.
  • Evaluación: Las métricas sin conexión, como precisión@k y NDCG sobre datos históricos, a menudo no coinciden con las pruebas A/B en línea, que miden lo que hacen realmente los usuarios con las recomendaciones nuevas.
  • Privacidad: Los perfiles detallados de comportamiento son datos personales protegidos por la legislación de protección de datos de la UE y otras jurisdicciones.
  • Regulación: El Reglamento de Servicios Digitales de la UE exige a las plataformas en línea y los motores de búsqueda de muy gran tamaño que ofrezcan, para cada sistema de recomendación, al menos una opción que no se base en la elaboración de perfiles.

Explora las soluciones

Visión artificial en el deporte

Visión artificial en el deporte

Descubre cómo Ultralytics YOLO impulsa la visión artificial en el deporte con el seguimiento de jugadores y balones, analíticas de rendimiento, información útil para entrenadores y rehabilitación de deportistas.
Más información
Visión artificial para imágenes aéreas

Visión artificial para imágenes aéreas

Convierte imágenes aéreas y de drones en información útil en tiempo real para la agricultura, la acuicultura, la conservación y el análisis geoespacial con Ultralytics YOLO.
Más información
Visión artificial en el sector aeroespacial

Visión artificial en el sector aeroespacial

Aplica la visión artificial en el sector aeroespacial con Ultralytics YOLO para inspeccionar aeronaves, detectar objetos extraños en pistas, gestionar operaciones en tierra y detectar defectos en materiales compuestos.
Más información
Visión artificial en seguridad

Visión artificial en seguridad

Protege todas tus instalaciones con los modelos Ultralytics YOLO. La IA visual permite supervisar perímetros, detectar amenazas, reconocer matrículas y mejorar la seguridad laboral.
Más información
Visión artificial en robótica

Visión artificial en robótica

Potencia máquinas más inteligentes con los modelos Ultralytics YOLO. La IA visual en robótica impulsa la navegación autónoma, la percepción, el seguimiento de objetos y el control en tiempo real.
Más información
Visión artificial en logística

Visión artificial en logística

Agiliza la logística con modelos Ultralytics YOLO. La IA visual permite inspeccionar paquetes, clasificarlos, realizar el seguimiento de vehículos y supervisar la seguridad del almacén en tiempo real.
Más información
Visión artificial en el comercio minorista

Visión artificial en el comercio minorista

Reinventa el comercio minorista con modelos Ultralytics YOLO. La IA visual permite realizar el seguimiento del inventario, supervisar estanterías, gestionar colas y obtener información más útil sobre los clientes.
Más información
Visión artificial en el sector sanitario

Visión artificial en el sector sanitario

Desarrolla soluciones sanitarias con modelos Ultralytics YOLO. La IA visual en el sector sanitario permite acelerar el diagnóstico por imagen, mejorar los diagnósticos y supervisar a los pacientes.
Más información
Visión artificial en la fabricación

Visión artificial en la fabricación

Optimiza la fabricación con modelos Ultralytics YOLO. La IA visual mejora el control de calidad, la detección de defectos, el cumplimiento de las normas de uso de EPI y la automatización de las líneas de montaje.
Más información
Visión artificial en la automoción

Visión artificial en la automoción

Aplica la visión artificial al sector de la automoción con modelos Ultralytics YOLO. La IA visual mejora la seguridad vial, la asistencia al conductor y la automatización de vehículos para lograr carreteras más inteligentes.
Más información
Visión artificial en la agricultura

Visión artificial en la agricultura

Incorpora la IA de visión a la agricultura inteligente con modelos Ultralytics YOLO. Impulsa la monitorización de cultivos, el seguimiento del ganado y la agricultura de precisión para obtener cosechas más abundantes e inteligentes.
Más información

¡Construyamos juntos el futuro de la IA!

Inicia tu recorrido hacia el futuro del aprendizaje automático