Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
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. Se recomienda migrar al código abierto microsoft/learning-loop.
Al implementar un nuevo recurso de Personalizer, se inicializa con un modelo sin entrenar o en blanco. Es decir, no ha aprendido de ningún dato y, por lo tanto, no funcionará bien en la práctica. Esto se conoce como el problema de "arranque en frío" y se resuelve con el tiempo mediante el entrenamiento del modelo con datos reales del entorno de producción. El modo de aprendiz es un comportamiento de aprendizaje que ayuda a mitigar el problema de "arranque en frío" y permite obtener confianza en el modelo antes de tomar decisiones en producción, todo ello sin necesidad de ningún cambio de código.
¿Qué es el modo Aprendiz?
De forma similar a la forma en que un aprendiz puede aprender una artesanía mediante la observación de un experto, el modo de aprendiz permite a Personalizer aprender observando las decisiones tomadas por la lógica actual de la aplicación. El modelo de Personalizer se entrena imitando la misma salida de decisión que la aplicación. Con cada llamada a Rank API, Personalizer puede aprender sin afectar a la lógica y los resultados existentes. Las métricas, disponibles en el portal de Azure y la API, le ayudan a comprender el rendimiento a medida que aprende el modelo. En concreto, la forma en que Personalize coincide con la lógica existente (también conocida como directiva de línea de base).
Una vez que Personalizer puede coincidir razonablemente con la lógica existente el 60-80% del tiempo, puede cambiar el comportamiento del modo Aprendiz al modo en línea. En ese momento, Personalizer devuelve las mejores acciones en el Rank API según lo determinado por el modelo subyacente y puede aprender a tomar mejores decisiones que la política base.
¿Por qué usar el modo aprendiz?
El modo de aprendiz proporciona una manera de que el modelo imite la lógica de decisión existente antes de tomar decisiones en línea usadas por la aplicación. Esto ayuda a mitigar el problema de arranque en frío mencionado anteriormente y le proporciona más confianza en el servicio Personalizer y asegurarse de que los datos enviados a Personalizer son valiosos para entrenar el modelo. Esto se hace sin arriesgar ni afectar a su tráfico en línea y a las experiencias de los clientes.
Las dos razones principales para usar el modo de aprendiz son:
- Mitigación de arranques en frío: El modo de aprendiz ayuda a mitigar el costo de entrenar un modelo "nuevo" en producción mediante el aprendizaje sin necesidad de tomar decisiones no informadas. El modelo aprende a imitar la lógica de la aplicación existente.
- Validar características de acción y contexto: las características de contexto y acción pueden ser inadecuadas, inexactas o suboptimalmente diseñadas. Si hay demasiados, demasiadas, características incorrectas, ruidosas o malformadas, Personalize tendrá dificultades para entrenar un modelo de buen rendimiento. La realización de una evaluación de características mientras está en el modo aprendiz le permite descubrir la eficacia de las características en el entrenamiento de Personalizer y puede identificar áreas para mejorar la calidad de las características.
¿Cuándo debe usar el modo aprendiz?
Use el modo aprendiz para entrenar Personalizer para mejorar su eficacia a través de los siguientes escenarios, al tiempo que deja la experiencia de los usuarios sin verse afectado por Personalizer:
- Va a implementar Personalizer en un nuevo escenario.
- Ha realizado cambios importantes en las características de contexto o acción.
Sin embargo, el modo de aprendiz no es una manera eficaz de medir el impacto que Personalizer puede tener al mejorar la recompensa media o los KPI empresariales. Solo puede evaluar el nivel en que el servicio está aprendiendo la lógica existente según los datos actuales que proporcione. Para medir la eficacia de Personalizer al elegir la mejor acción posible para cada llamada de clasificación, Personalizer debe estar en modo en línea, o puede usar evaluaciones offline durante un período de tiempo en el que Personalizer estaba en modo en línea.
¿Quién debe usar el modo aprendiz?
El modo de aprendiz es útil para desarrolladores, científicos de datos y responsables de la toma de decisiones empresariales:
Los desarrolladores pueden usar el modo aprendiz para asegurarse de que las API Rank y Reward se implementan correctamente en la aplicación y que las características que se envían a Personalizer están libres de errores y errores comunes. Obtenga más información sobre cómo crear buenas características de contexto y acción.
Los científicos de datos pueden usar el modo aprendiz para validar que las características son eficaces para entrenar los modelos de Personalizer. Es decir, las características contienen información útil que permite a Personalizer aprender la lógica de decisión existente.
Los responsables de la toma de decisiones empresariales pueden usar el modo de aprendiz para evaluar el potencial de Personalizer para mejorar los resultados (es decir, recompensas) en comparación con la lógica de negocios existente. En concreto, si Personalizer puede aprender de los datos proporcionados antes de entrar en modo en línea. Esto les permite tomar una decisión informada sobre cómo afectar a la experiencia del usuario, donde los ingresos reales y la satisfacción del usuario están en juego.
Comparación de comportamientos: modo de aprendiz y modo en línea
El aprendizaje cuando se encuentra en el modo aprendiz difiere del modo en línea de las maneras siguientes.
| Área | Modo de aprendiz | Modo en línea |
|---|---|---|
| Impacto en la experiencia del usuario | La experiencia de los usuarios y las métricas empresariales no cambiarán. Personalizer se entrena observando las acciones de línea base de la lógica de aplicación actual, sin afectarlas. | La experiencia de los usuarios puede cambiar ya que la decisión la toma Personalizer, y no la acción base. |
| Velocidad de aprendizaje | Personalizer aprenderá más lentamente cuando se encuentre en modo aprendiz en comparación con el aprendizaje en modo en línea. El modo de aprendiz solo puede aprender observando las recompensas obtenidas por la acción predeterminada sin exploración, lo que limita la cantidad de aprendizaje de Personalizer. | Aprende más rápido porque puede aprovechar la mejor acción del modelo actual y explorar otras acciones para obtener resultados potencialmente mejores. |
| Límite máximo de la eficacia del aprendizaje | Personalizer solo puede aproximarse y nunca superar el rendimiento de la lógica actual de la aplicación (la recompensa media total lograda por la acción de línea base). Es poco probable que Personalizer logre 100% coincidencia con la lógica de la aplicación actual y se recomienda que una vez que se logren 60%-80% coincidencia, Personalizer debe cambiar al modo en línea. | Personalizer debe superar el rendimiento de la lógica de la aplicación de referencia. Si el rendimiento de Personalizer se estanca con el tiempo, puede realizar evaluación sin conexión y evaluación de características para seguir mejoras adicionales. |
| Valor devuelto de la API de clasificación para rewardActionId | RewardActionId siempre será el identificador de la acción predeterminada. Es decir, la acción que envía como la primera acción en el JSON de solicitud de la API Rank. En otras palabras, el Rank API no hace nada visible para tu aplicación durante el modo de aprendiz. | El rewardActionId será uno de los identificadores proporcionados en la llamada a la API de Rank, según determine el modelo de Personalizer. |
| Evaluaciones | Personalizer mantiene una comparación de los totales de recompensa recibidos por la lógica de la aplicación actual y los totales de recompensas que Personalizer obtendría si estuviera en modo en línea en ese momento. Esta comparación está disponible para ver en la hoja Monitor del recurso de Personalizer en el portal de Azure. | Evalúe la eficacia de Personalizer mediante la ejecución de evaluaciones sin conexión, lo que le permite comparar el total de recompensas que Personalizer ha logrado con las posibles recompensas de la línea base de la aplicación. |
Tenga en cuenta que es poco probable que Personalizer logre una coincidencia de rendimiento de 100% con la lógica de línea base de la aplicación y nunca lo superará. La paridad de rendimiento del 60%-80% es suficiente para activar el modo en línea de Personalizer, donde Personalizer puede aprender a tomar mejores decisiones y superar el rendimiento de la lógica de línea de base de la aplicación.
Limitaciones del modo de aprendiz
El modo de aprendiz entrena el modelo de Personalizer intentando imitar la lógica de línea de base de la aplicación existente, mediante las características de contexto y acción presentes en las llamadas Rank. Los siguientes factores afectarán a la capacidad del modo de aprendiz para aprender.
Escenarios en los que el modo de aprendiz puede no ser adecuado:
Contenido elegido editorialmente:
En algunos escenarios como noticias o entretenimiento, un equipo editorial podría asignar manualmente el elemento de línea base. Esto significa que los seres humanos usan su conocimiento sobre el mundo más amplio, y la comprensión de lo que puede ser atractivo contenido, elegir artículos específicos o medios fuera de un grupo, y marcarlos como artículos "preferidos" o "héroes". Dado que estos editores no son un algoritmo, y los factores considerados por los editores pueden ser subjetivas y posiblemente no relacionadas con las características de contexto o acción. En este caso, el modo Aprendiz podría presentar dificultades para predecir la acción base. En estas situaciones, puede:
- Probar Personalizer en modo en línea: considere la posibilidad de colocar Personalizer en modo en línea durante el tiempo o en una prueba A/B si tiene la infraestructura y, a continuación, ejecutar una evaluación sin conexión para evaluar la diferencia entre la lógica de línea de base de la aplicación y Personalizer.
- Agregue consideraciones editoriales y recomendaciones como características: pregunte a los editores qué factores influyen en sus opciones y vea si puede agregarlas como características en el contexto y la acción. Por ejemplo, los editores de una empresa de medios pueden resaltar el contenido cuando una celebridad determinada suele aparecer en las noticias: Este conocimiento podría agregarse como una característica de contexto.
Factores que mejorarán y acelerarán el modo de aprendiz
Si el modo aprendiz está aprendiendo y logrando un rendimiento coincidente por encima de cero, pero el rendimiento mejora lentamente (no alcanza el 60% a 80% de recompensas coincidentes en un plazo de dos semanas), es posible que haya muy pocos datos enviados a Personalizer. Los pasos siguientes pueden ayudar a facilitar el aprendizaje más rápido:
- Agregar características diferenciadoras: puede realizar una inspección visual de las acciones en una llamada Rank y sus características. ¿La acción de línea base tiene características que se diferencian de otras acciones? Si se ven principalmente iguales, agregue más características que aumentarán la diversidad de los valores de características.
- Reducción de acciones por evento: Personalizer usará la configuración "% de llamadas de ranking para la exploración" para detectar preferencias y tendencias. Cuando una llamada Rank tiene más acciones, la probabilidad de que se elija una acción determinada para la exploración sea menor. Reducir el número de acciones enviadas en cada llamada rank a un número menor (inferior a 10) puede ser un ajuste temporal que puede indicar si el modo de aprendiz tiene o no datos suficientes para aprender.
Uso del modo de aprendiz para entrenar con datos históricos
Si tiene una cantidad significativa de datos históricos que desea usar para entrenar Personalizer, puede usar el modo aprendiz para reproducir los datos a través de Personalizer.
Configure el Personalizador en el modo de aprendiz y cree un script que llame a Rank con las acciones y características de contexto de los datos históricos. Llame a la API de Recompensas en función de los cálculos que realice sobre los registros de estos datos. Puede que necesite aproximadamente 50 000 eventos históricos para ver que Personalizer alcance un porcentaje de coincidencia del 60 al 80 % con la lógica base de la aplicación. Puede lograr resultados satisfactorios con menos o más eventos.
Cuando se entrena a partir de datos históricos, se recomienda que los datos enviados en [las características para el contexto y las acciones, su disposición en el JSON utilizado para las solicitudes de Rank y el cálculo de la recompensa en este conjunto de datos de entrenamiento] coincidan con los datos [características y cálculo de la recompensa] disponibles de su aplicación existente.
Los datos sin conexión e históricos suelen ser más incompletos y ruidosos y pueden diferir en formato del escenario en producción (o en línea). Aunque el entrenamiento con datos históricos es posible, los resultados de hacerlo pueden ser inconclusos y no son necesariamente un buen indicador de cómo Personalizer aprenderá en modo Online, especialmente si entre los datos históricos y el escenario actual varían las características.
Uso del Modo Aprendiz frente a pruebas A/B
Solo es útil realizar pruebas A/B de tratamientos de Personalizer una vez que se haya validado y esté aprendiendo en modo en línea, ya que en modo aprendiz, solo se usa la acción de línea base y se aprende la lógica existente. Esto significa que Personalizer devuelve la acción del brazo "control" de la prueba A/B, por lo que una prueba A/B en modo aprendiz no tiene ningún valor.
Una vez que tenga un caso de uso con Personalizer y aprendizaje en línea, los experimentos A/B pueden permitirle crear cohortes controladas y realizar comparaciones de resultados que pueden ser más complejas que las señales usadas para recompensas. Una pregunta de ejemplo que podría responder una prueba A/B es: "En un sitio web minorista, Personalizer optimiza un diseño y logra que más usuarios realicen una compra de manera más rápida, pero ¿esto reduce los ingresos totales por transacción?"
Pasos siguientes
- Más información sobre eventos activos e inactivos