Netflix desarrolló un nuevo algoritmo de aprendizaje automático basado en el aprendizaje por refuerzo para crear una lista óptima de recomendaciones teniendo en cuenta un presupuesto de tiempo finito para el usuario. En un caso de uso de recomendación, a menudo se ignora el factor de tiempo finito para tomar una decisión; Netflix añadió esta dimensión a su sistema de recomendaciones y en general a los problemas de decisión, además de la relevancia de las recomendaciones.
El problema de evaluación se puede medir en cantidad de tiempo, porque el usuario se toma un tiempo para elegir lo que quiere ver: leer tráilers, mostrar la vista previa, etc. y diferentes programas requieren diferentes cantidades de tiempo de evaluación. Este presupuesto de tiempo se puede considerar en el sistema de recomendación, por lo que el modelo de recomendación debe construir la lista de recomendaciones considerando la relevancia de los elementos y el costo de evaluación para el usuario. Es posible que el presupuesto de tiempo del usuario no sea directamente observable (como las preferencias), pero el objetivo del algoritmo de recomendación es construir la lista de recomendaciones que tiene una mayor probabilidad de participación para el usuario. El sistema de recomendación necesita conocer el presupuesto de tiempo del usuario además de las preferencias latentes del usuario.
Un sistema de recomendación típico funciona con un enfoque de estilo bandido para la construcción de listas y construye una lista de elementos K de la siguiente manera:
Fuente de la imagen: un sistema de recomendación de estilo bandido para la construcción de pizarra
El evaluador de ítems califica todos los N ítems disponibles y puede usar la lista construida hasta ahora como contexto adicional. Luego, las puntuaciones se pasan a través de un muestreador que selecciona un elemento de los elementos disponibles. Así es como el anotador y el paso de muestreo, los principales componentes de un sistema de recomendación, insertan un elemento en la ranura K de la pizarra.
El sistema de recomendación presenta una lista unidimensional de K elementos al usuario (en una configuración simplificada); el usuario tiene un presupuesto de tiempo modelado como un número real positivo. El problema se puede modelar con dos características: relevancia y costo. Cuando el usuario evalúa un ítem de la lista se consume el costo (tiempo) y cuando termina el presupuesto el usuario no puede evaluar otros ítems sugeridos. Cada elemento tiene una probabilidad entre 0 y 1 de ser consumido y la probabilidad de elegir un elemento depende no solo de la relevancia del elemento, sino también de la cantidad de elementos que el usuario puede examinar.
Un sistema de recomendaciones que intente maximizar el compromiso del usuario con la lista debe incluir tantos elementos relevantes como sea posible dentro del presupuesto del usuario, mediante un compromiso entre relevancia y costo .
El problema está relacionado con el problema de la mochila 0/1 en informática teórica: el objetivo es encontrar el subconjunto de elementos con la utilidad total más alta de modo que el costo total del subconjunto no sea mayor que el presupuesto. El problema de la mochila 0/1 es NP-Completo ; hay muchas soluciones aproximadas. Netflix propone modelar la recomendación con restricciones presupuestarias como un proceso de decisión de Markov y utilizar un aprendizaje de refuerzopara encontrar una solución. En el proceso de Decisión de Markov, el concepto clave es el estado actual y la acción tomada por el agente. En este problema, el sistema de recomendación es el agente y la interacción entre el usuario y el sistema de recomendación se modela como el entorno. El sistema de recomendación (agente) construye la lista de recomendaciones seleccionando repetidamente los k elementos que considera oportunos en cada slot. El entorno (interacción entre el usuario y el sistema de recomendación) se caracteriza por el presupuesto de tiempo y los elementos examinados en la lista en pasos particulares. En el mundo real. el presupuesto de tiempo del usuario es desconocido y se puede estimar mediante los datos históricos del usuario (por ejemplo, cuánto tiempo se desplazó el usuario antes de abandonar en los registros de datos históricos). El algoritmo de aprendizaje por refuerzo utilizado para este problema se basa en estimar el retorno,Aprendizaje de la diferencia temporal para estimar la función de valor.
La simulación es muy útil para estudiar y comprender mejor el problema. Con la simulación, se entrenan y comparan varios algoritmos de recomendación. Para evaluar las actuaciones, se utiliza una métrica simple como es el número promedio de éxito del estado generado denominado tasa de reproducción. Además de la tasa de reproducción, es importante considerar el tamaño efectivo de la pizarra: una de las formas de mejorar la tasa de reproducción es construir pizarras efectivas más tardías; esta métrica es importante para comprender el mecanismo de los algoritmos de recomendación.
Gracias a la flexibilidad de la simulación y la configuración de los parámetros de simulación, el equipo de Netflix aprendió a construir pizarras óptimas según la política utilizando el algoritmo SARSA . Comparando el modelo RL y el bandido contextual , las actuaciones son mucho mejores para el enfoque de aprendizaje por refuerzo tanto para el tamaño efectivo de la pizarra como para la tasa de reproducción. En particular, para la tasa de reproducción, el resultado es un aumento estadísticamente significativo en la tasa de reproducción para usuarios de presupuesto pequeño a mediano.
El aprendizaje sobre la política es fácil de simular, pero es difícil de ejecutar en configuraciones de recomendación realistas porque los datos son generados por una política diferente (política de comportamiento) y el objetivo es aprender una nueva (mejor) política a partir de estos datos. En este caso, el Q-learning es la técnica que permite la función de aprendizaje de valores óptimos en un entorno fuera de política.
Se comparan Q-learning y SARSA de configuración en política y el resultado es que Q-learning parece estar generando tamaños de pizarra efectivos muy grandes sin mucha diferencia en la tasa de reproducción. Este resultado es interesante y aún poco claro; es por eso que necesita más investigación para ser completamente entendido.