Sistemas de recomendación

Desde pedidos de comida hasta video on demand y desde la reproducción de audio hasta la moda, los sistemas de recomendación potencian algunas de las aplicaciones más populares de la actualidad. Explora cómo compilar sistemas de recomendación listos para la producción con bibliotecas de código abierto y herramientas del ecosistema de TensorFlow.

Los sistemas de recomendación aumentan la participación del usuario en tu app y mejoran su experiencia mediante la presentación del contenido más deseado. Los recomendadores modernos son sistemas complejos que, por lo general, se encuentran segmentados en varias etapas para tener una latencia baja en la producción. Mediante las etapas de recuperación, clasificación y posible clasificación posterior, se filtran elementos irrelevantes de forma gradual a partir de un gran grupo de candidatos. Además, se presenta una lista de opciones con las que es más probable que interactúen los usuarios.

Comienza a compilar con TensorFlow Recommenders, un framework fácil de usar que posibilita el flujo de trabajo completo para compilar un sistema de recomendación, desde la preparación de los datos hasta la implementación.

Cuando termines de entrenar tus modelos, impleméntalos en la producción para entregar recomendaciones a los usuarios finales. TensorFlow Serving produce tus modelos para lograr una inferencia de alto rendimiento. Busca maximizar la capacidad de procesamiento de los modelos de aprendizaje automático y puede admitir grandes modelos de recomendación que requieran una deriva distribuida.

# Deploy the retrieval model with TensorFlow Serving
docker run -t --rm -p 8501:8501 \
  -v "RETRIEVAL/MODEL/PATH:/models/retrieval" \
  -e MODEL_NAME=retrieval tensorflow/serving &

# Retrieve top movies that user 42 may like
curl -X POST -H "Content-Type: application/json" \
  -d '{"instances":["42"]}'  \
  http://localhost:8501/v1/models/retrieval:predict

# Output
# {
#    "predictions":[
#       {
#          "output_1": [2.032, 1.969, 1.813],
#          "output_2": ["movie1”, “movie2”, “movie3”]
#       }
#    ]
# }

# Deploy the ranking model with TensorFlow Serving
docker run -t --rm -p 8501:8501 \
  -v "RANKING/MODEL/PATH:/models/ranking" \
  -e MODEL_NAME=ranking tensorflow/serving &

# Get the prediction score for user 42 and movie 3
curl -X POST -H "Content-Type: application/json" \
  -d '{"instances":[{"user_id":"42", "movie_title":"movie3"}]}' \
  http://localhost:8501/v1/models/ranking:predict

# Output:
# {"predictions": [[3.66357923]]}
code_blocks
Aprende a compilar e implementar un sistema de recomendación de pila completa con TensorFlow

Mejora las etapas de recuperación y clasificación de los motores de recomendaciones

Los sistemas de recomendación a gran escala requieren que se determinen los elementos más relevantes entre millones de candidatos mediante las etapas de recuperación y clasificación de forma eficaz y eficiente. Complementa los recomendadores de TensorFlow con los algoritmos de búsqueda de vanguardia del vecino más cercano aproximado (ANN) en la biblioteca ScaNN y las técnicas para aprender a clasificar (LTR) en la biblioteca TensorFlow Ranking a fin de mejorar las recomendaciones.

Google ScaNN

ScaNN es una biblioteca para la búsqueda de similitud de vectores a gran escala. Utiliza técnicas de vanguardia de ANN, como el hashing asimétrico y la cuantización anisotrópica, para acelerar la recuperación de los candidatos principales.

TensorFlow Ranking

TensorFlow Ranking es una biblioteca para modelos de desarrollo de LTR escalables y neuronales. Brinda funciones adicionales para clasificar elementos de los candidatos y maximizar la utilidad de la clasificación.

Optimiza incorporaciones grandes para el entrenamiento e inferencia de modelos

La operación de búsqueda de incorporación es un componente fundamental para los sistemas de recomendación de gran escala. Aprovecha la aceleración de hardware y la tecnología de incorporación dinámica para evitar atascos en el rendimiento durante la incorporación de tablas grandes.

TensorFlow TPUEmbedding

La API de capas TPUEmbedding facilita el entrenamiento y deriva de tablas de incorporación grandes en unidades de procesamiento tensorial (TPUs).

TensorFlow Recommenders Addons

TensorFlow Recommenders Addons es un proyecto con contribuciones de la comunidad que utiliza tecnología de incorporación dinámica, la cual es particularmente útil para el aprendizaje en línea.

Preservación de la privacidad del usuario

Los motores de recomendaciones tradicionales recopilan los registros de interacción de los usuarios y entrenan modelos de recomendación en función de la actividad del usuario sin procesar. Garantiza la privacidad de los datos de los usuarios con la incorporación de prácticas de desarrollo de IA responsable.

Recomendación integrada en el dispositivo de TensorFlow Lite

TensorFlow Lite brinda una solución de recomendación integrada en el dispositivo que logra recomendaciones de latencia baja y calidad alta mientras mantiene todos los datos del usuario en el dispositivo móvil.

Reconstrucción federada con TensorFlow Federated

TensorFlow Federated es un framework de aprendizaje federado y otros cálculos sobre datos descentralizados. La reconstrucción federada incorpora la factorización de matrices al entorno del aprendizaje federado y protege con mayor eficiencia la privacidad del usuario durante las recomendaciones.

Usa técnicas avanzadas para lograr recomendadores más sofisticados

Si bien los clásicos modelos de filtrado colaborativo se utilizan ampliamente en la industria, hay una tendencia creciente de adoptar técnicas avanzadas, como el aprendizaje por refuerzo y las redes neuronales de grafos (GNN), para compilar sistemas de recomendaciones.

TensorFlow Agents Bandits

TensorFlow Agents Bandits es una biblioteca integral de algoritmos de tragamonedas que pueden explorar el entorno del motor de recomendaciones y aprovecharlo de manera eficiente.

TensorFlow GNN

TensorFlow GNN es una biblioteca que puede facilitar de forma eficiente las recomendaciones de elementos en función de las estructuras de red y puede utilizarse junto con modelos de recuperación y clasificación.

IA generativa

Aprende a usar modelos grandes de lenguaje (LLM), como la API de PaLM, para aumentar tus sistemas de recomendación.

Consulta modelos de recomendación de vanguardia

Si quieres comparar el rendimiento de un modelo reconocido o compilar tus propios modelos de recomendación, consulta las implementaciones oficiales de TensorFlow de modelos populares, como NCF, DLRM y DCN v2, para acceder a prácticas recomendadas.

Recursos educativos

Obtén más información sobre la compilación de sistemas de recomendación con cursos paso a paso y videos.

Sistemas de recomendación del mundo real

Explora ejemplos y casos de éxito de sistemas de recomendación que potencian aplicaciones en todas las industrias.

Video en línea

Conoce cómo YouTube compila su poderoso sistema de recomendación con responsabilidad.

Comercio electrónico

Lee sobre cómo Digitec Galaxus entrena y distribuye millones de boletines informativos personalizados por semana con TFX y TensorFlow Agents.

Tienda de alimentos

Aprende cómo HarperDB usa TensorFlow.js para compilar un sistema de recomendación basado en el filtrado colaborativo para artículos de supermercado.

Reproducción de audio

Descubre cómo Spotify aprovechó el ecosistema de TensorFlow para diseñar un simulador sin conexión extensible y entrenar recursos de Agents de aprendizaje por refuerzo para generar recomendaciones de playlists.