Amazon Personalize
Servicio que proporciona personalización en tiempo real mediante aprendizaje automático (recomendaciones, ranking personalizado)
Descripción general
Amazon Personalize es un servicio de aprendizaje automático completamente gestionado que proporciona recomendaciones personalizadas en tiempo real. Permite a los desarrolladores crear sistemas de recomendación sin experiencia previa en ML, utilizando los mismos algoritmos de personalización que usa Amazon.com. Soporta casos de uso como recomendaciones de productos, ranking personalizado de contenido y segmentación inteligente de usuarios.
Diseño de grupos de datasets y esquemas
Personalize organiza los datos en grupos de datasets que contienen tres tipos de datasets: Interactions (historial de interacciones usuario-ítem), Items (catálogo de ítems con metadatos) y Users (perfiles de usuario con metadatos). El dataset de Interactions es obligatorio y contiene eventos como clics, compras y visualizaciones con marcas de tiempo. Los esquemas definen la estructura de cada dataset usando formato Avro, especificando campos obligatorios y opcionales. Un diseño de esquema efectivo incluye campos de metadatos que capturen atributos relevantes para la personalización: categorías de productos, géneros de contenido, demografía de usuarios. La calidad y volumen de datos de interacciones impacta directamente en la calidad de las recomendaciones, requiriendo un mínimo de 1000 interacciones de 25 usuarios únicos.
Selección de recetas y entrenamiento de versiones de solución
Las recetas son algoritmos preconfigurados optimizados para diferentes casos de uso. USER_PERSONALIZATION genera recomendaciones personalizadas por usuario, POPULAR_COUNT recomienda ítems populares, y RELATED_ITEMS encuentra ítems similares. Las recetas avanzadas como Trending-Now y Next-Best-Action abordan escenarios específicos. Una versión de solución es un modelo entrenado con una receta y datos específicos. El entrenamiento puede ser completo (reentrenamiento desde cero) o incremental (actualización con nuevos datos). Los hiperparámetros como HPO (Hyperparameter Optimization) automatizan la búsqueda de la configuración óptima. Las métricas de evaluación offline (precision@K, NDCG, coverage) ayudan a comparar recetas antes del despliegue.
Despliegue de campañas e inferencia en tiempo real
Una campaña es un endpoint de inferencia desplegado que sirve recomendaciones en tiempo real. Se configura con una versión de solución y un throughput mínimo provisionado (TPS). Las campañas escalan automáticamente para manejar picos de tráfico. La API GetRecommendations devuelve ítems recomendados para un usuario, mientras GetPersonalizedRanking reordena una lista de ítems según las preferencias del usuario. Los eventos en tiempo real (PutEvents API) actualizan el contexto del usuario inmediatamente, mejorando las recomendaciones sin reentrenamiento. Los filtros permiten excluir ítems ya comprados, fuera de stock o de categorías específicas. La integración con EventBridge permite automatizar el reentrenamiento periódico cuando se acumulan suficientes nuevas interacciones.