¿Qué es Personalizer?

Importante

A partir del 20 de septiembre de 2023, no podrá crear nuevos recursos de Personalizer. El servicio Personalizer se va a retirar el 1 de octubre de 2026.

Nota:

A partir de julio de 2023, los servicios de Azure AI engloban todo lo que antes se conocía como Cognitive Services y Azure Applied AI Services. No hay ningún cambio en los precios. Los nombres Cognitive Services y Azure Applied AI siguen utilizándose en las API de facturación, análisis de costes, listas de precios y precios de Azure. No hay cambios importantes en las interfaces de programación de aplicaciones (API) ni en los SDK.

Personalizador de Azure AI es un servicio de IA que ayuda a las aplicaciones a tomar decisiones más inteligentes a gran escala mediante el aprendizaje de refuerzo. Personalizer procesa información sobre el estado de la aplicación, el escenario o los usuarios (contextos) y un conjunto de posibles decisiones y atributos relacionados (acciones) para determinar la mejor decisión que se debe tomar. Los comentarios de la aplicación (recompensas) se envían a Personalizer para aprender a mejorar su capacidad de toma de decisiones casi en tiempo real.

Personalizer puede determinar las mejores acciones que se van a realizar en una variedad de escenarios:

  • Comercio electrónico: ¿qué producto se debe mostrar a los clientes para maximizar la probabilidad de una compra?
  • Recomendación de contenido: ¿qué artículo se debe mostrar para aumentar la tasa de clics?
  • Diseño de contenido: ¿dónde debe colocarse un anuncio para optimizar la involucración del usuario en un sitio web?
  • Comunicación: ¿cuándo y cómo se debe enviar una notificación para maximizar la posibilidad de obtener una respuesta?

Para empezar a trabajar con Personalizer, siga la guía de inicio rápido o pruebe Personalizer en el explorador con esta demostración interactiva.

Esta documentación contiene los siguientes tipos de artículos:

  • Las guías de inicio rápido proporcionan instrucciones paso a paso para guiarle por la configuración y el código de ejemplo a fin de empezar a realizar solicitudes de API al servicio.
  • Las guías paso a paso contienen instrucciones para usar características de Personalizer y capacidades avanzadas.
  • Los ejemplos de código muestran cómo usar Personalizer y le ayudan a conectar fácilmente la aplicación con el servicio.
  • Los tutoriales son guías más largas que implementan Personalizer como parte de una solución empresarial más amplia.
  • Los conceptos proporcionan más detalles sobre las características, capacidades y aspectos básicos de Personalizer.

Funcionamiento de Personalizer

Personalizer usa el aprendizaje de refuerzo a fin de seleccionar la mejor acción para un contexto determinado en todos los usuarios con el fin de maximizar una recompensa media.

  • Contexto: información que describe el estado de la aplicación, escenario o usuario que pueden ser relevantes para tomar una decisión.
    • Ejemplo: la ubicación, el tipo de dispositivo, la edad y los temas favoritos de los usuarios que visitan un sitio web.
  • Acciones: un conjunto discreto de elementos que se pueden elegir, junto con atributos que describen cada elemento.
    • Ejemplo: un conjunto de artículos de noticias y los temas que se tratan en cada artículo.
  • Recompensa: una puntuación numérica entre 0 y 1 que indica si la decisión fue mala (0) o buena (1).
    • Ejemplo: "1" indica que un usuario hizo clic en el artículo sugerido, mientras que "0" indica que el usuario no lo hizo.

Rank API y Reward API

Personalizer le capacita para aprovechar la eficacia y flexibilidad del aprendizaje de refuerzo con tan solo dos API principales.

La aplicación llama a RankAPI cada vez que se toma una decisión. La aplicación envía un JSON que contiene un conjunto de acciones, características que describen cada acción y características que describen el contexto actual. Cada llamada a API Rank se conoce como un evento y se indica con un id. de evento único. Después, Personalizer devuelve el id. de la mejor acción que maximiza la recompensa media total que determina el modelo subyacente.

La aplicación llama a RewardAPI cada vez que hay comentarios que pueden ayudar a Personalizer a saber si el identificador de acción devuelto en la llamada a Rank ha proporcionado un valor. Por ejemplo, si un usuario ha hecho clic en el artículo de noticias sugerida o ha completado la compra de un producto propuesto. Una llamada a Reward API puede realizarse en tiempo real (justo después de realizar la llamada a Rank) o retrasarse para adaptarse mejor a las necesidades del escenario. La puntuación de recompensa la determinan las métricas y objetivos empresariales, y se puede generar mediante un algoritmo o reglas en la aplicación. La puntuación es un número de valor real comprendido entre 0 y 1.

Modos de aprendizaje

  • Modo de aprendiz: al igual que un aprendiz aprende un oficio observando a un experto, el modo aprendiz permite a Personalizer aprender observando la lógica de decisión actual de la aplicación. Esto ayuda a mitigar el problema denominado "arranque en frío" con un nuevo modelo sin entrenar y le permite validar las características de acción y contexto que se envían a Personalizer. En el modo de aprendiz, cada llamada a Rank API devuelve la acción de línea base o la acción predeterminada, es decir, la acción que la aplicación habría realizado sin usar Personalizer. La aplicación envía esto a Personalizer en Rank API como primer elemento del conjunto de acciones posibles.

  • Modo en línea: Personalizer devolverá la mejor acción dado el contexto, tal como lo determina el modelo de RL subyacente, y explora otras acciones posibles que pueden mejorar el rendimiento. Personalizer aprende de los comentarios proporcionados en las llamadas a Reward API.

Tenga en cuenta que Personalizer usa información colectiva en todos los usuarios para aprender las mejores acciones en función del contexto actual. El servicio no realiza lo siguiente:

  • Conservar ni administrar la información de perfil de usuario Los id. de usuario únicos no deben enviarse a Personalizer.
  • Registrar las preferencias ni los datos históricos de usuarios individuales.

Escenarios de ejemplo

Estos son algunos ejemplos en los que se puede usar Personalizer para seleccionar el mejor contenido que se va a representar para un usuario.

Tipo de contenido Acciones {características} Características de contexto Identificador de acción de recompensa que se devuelve
(se muestra este contenido)
Artículos de noticias a. The president... {nacional, política, [texto]}
b. Premier League ... {global, deportes, [texto, imagen, vídeo]}
c. Hurricane in the ... {regional, información meteorológica, [texto, imagen]}
Country='USA',
Recent_Topics=('politics', 'business'),
Month='October'
a The president...
Películas 1. Star Wars {1977, [acción, aventuras, fantástico], George Lucas}
2. Hoop Dreams {1994, [documental, deportes], Steve James}
3. Casablanca {1942, [romántico, drama, guerra], Michael Curtiz}
Device='smart TV',
Screen_Size='large',
Favorite_Genre='classics'
3. Casablanca
Productos de comercio electrónico i. Product A (3 kg, $$$$, entrega en 1 día)
ii. Product B (20 kg, $$, entrega en 7 días)
iii. Product C (3 kg, $$$, entrega en 2 días)
Device='iPhone',
Spending_Tier='low',
Month='June'
ii. Product B

Requisitos del escenario

Use Personalizer cuando el escenario tenga lo siguiente:

  • Un conjunto limitado de acciones o elementos para seleccionar en cada evento de personalización. Se recomienda no más de unas 50 acciones en cada llamada a Rank API. Si tiene un conjunto más grande de acciones posibles, se recomienda usar un motor de recomendaciones u otro mecanismo para reducir la lista de acciones antes de llamar a Rank API.
  • Información que describa las acciones (características de acción).
  • Información que describa el contexto actual (características contextuales).
  • Un volumen de datos suficiente para permitir que Personalizer aprenda. En general, se recomienda un mínimo de unos 1000 eventos al día para que Personalizer aprenda de forma eficaz. Si Personalizer no recibe datos suficientes, el servicio tarda más en determinar las mejores acciones.

Uso responsable de la inteligencia artificial

En Microsoft, estamos comprometidos con el avance de la inteligencia artificial controlado por ciertos principios que antepongan a las personas. Los modelos de IA como los disponibles en el servicio Personalizer tienen importantes beneficios potenciales, pero sin un diseño cuidadoso y mitigación reflexiva, tales modelos tienen el potencial de generar contenido incorrecto o incluso dañino. Microsoft ha realizado importantes inversiones para ayudar a evitar el abuso y el daño involuntario, incorporar los principios de Microsoft para el uso de IA responsable, crear filtros de contenido para apoyar a los clientes y proporcionar orientación sobre la implementación de IA responsable a los clientes incorporados. Consulte la documentación sobre IA responsable de Personalizer.

Integración de Personalizer en una aplicación

  1. Diseñe y planifique las acciones y el contexto. Determine cómo interpretar los comentarios como una puntuación de recompensa.

  2. Cada recurso de Personalizer que cree se define como una ruta de aprendizaje. El bucle recibirá las llamadas a Rank y Reward para ese contenido o experiencia de usuario y entrenará un modelo de aprendizaje de refuerzo subyacente. Estas son

    Tipo de recurso Propósito
    Modo de aprendiz - E0 Entrene Personalizer para imitar la lógica de toma de decisiones actual sin afectar a la aplicación existente, antes de usar el modo en línea para aprender mejores directivas en un entorno de producción.
    Modo en línea: Estándar, S0 Personalizer usa RL para determinar las mejores acciones en producción.
    Modo en línea:: Gratis, F0 Pruebe Personalizer en un entorno limitado que no sea de producción.
  3. Agregue Personalizer a su aplicación, sitio web o sistema:

    1. Agregue una llamada Rank a Personalizer en su aplicación, sitio web o sistema para determinar la mejor acción.

    2. Use la mejor acción, tal como se ha especificado como identificador de acción de recompensa en su escenario.

    3. Aplique lógica de negocios a los datos de comportamiento o comentarios del usuario para determinar la puntuación de recompensa. Por ejemplo:

      Comportamiento Puntuación de recompensa calculada
      El usuario seleccionó un artículo de noticias que ha sugerido Personalizer. 1
      El usuario seleccionó un artículo de noticias que no ha sugerido Personalizer. 0
      El usuario dudó en seleccionar un artículo de noticias, se desplazó con indecisión por la pantalla y, al final, seleccionó el artículo de noticias que ha sugerido Personalizer. 0,5
    4. Agregue una llamada Reward para enviar una puntuación de recompensa entre 0 y 1

      • Inmediatamente después se ha recibido un comentario.
      • O en algún momento posterior, en escenarios en los que se esperan comentarios con retraso.
    5. Evalúe la ruta con una evaluación sin conexión después de un periodo de tiempo en el que Personalizer haya recibido datos significativos para tomar decisiones en línea. Una evaluación sin conexión permite probar y evaluar la eficacia del servicio Personalizer sin realizar cambios en el código o sin que afecte al usuario.

Pasos siguientes