¿Cómo calcula YouTube el algoritmo mencionado a continuación?

Esta no es la respuesta más correcta en términos científicos, pero intenta proporcionar una respuesta popular con terminología y conceptos interesantes para aprender. Supongo que está más interesado en la aplicación de Sistemas de Recomendación y no demasiado en las matemáticas hardcore detrás de Machine Learning (que también es importante, pero limita el alcance de la aplicación web).

Si bien el sistema de recomendación simple podría basarse en la similitud de Jaccard y tales construcciones, para optimizar realmente la duración de la sesión de visualización, necesitará un mecanismo de descubrimiento de Estrategias y Políticas. Por supuesto, puede elegir los videos que con mayor frecuencia participan en las listas de reproducción de largas sesiones de visualización y evaluar aquellos en los que necesitaría algo como …

Aprendizaje reforzado

Intentar que los usuarios se enganchen a ver videos es un problema clásico de explotación versus exploración común para los problemas de aprendizaje automático dentro del aprendizaje por refuerzo y la teoría de juegos . Los algoritmos tradicionales de aprendizaje iterativo a menudo caen en el equilibrio de Nash (John Nash, Game Theory, la película de Russel Crowe A Beautiful Mind).

Como usuario activo de YouTube, probablemente haya ingresado usted mismo al Equilibrio de Nash: es el momento exacto, cuando no elige inmediatamente el siguiente video, pero se detiene para pensar en las opciones proporcionadas y, en el peor de los casos, finaliza su sesión de visualización empezando a hacer algo más, como ver videos de otro Tube con chicas que tienen menos ropa en … ¡YouTube no quiere que hagas eso! Quieren tenerte solo … ¿eso es malo? Me dices Google!

Tradicionalmente, se evitan los equilibrios de Nash de baja recompensa agregando aleatoriedad a los algoritmos. Cuando el algoritmo aprende de manera efectiva, explota las iteraciones pasadas de manera efectiva, pero hace que exploren menos alternativas . Mejor palabra para aleatoriedad es probabilidad, porque … ya sabes, los matemáticos son así, les gustan las palabras que suenan más científicas. No puedo culparlos.

¿Alguna vez ha tenido abierto su navegador con múltiples pestañas que contienen contenido del mismo sitio web?

Las sesiones de visualización más largas ocurren con la navegación paralela. Con respecto al aprendizaje de refuerzo, la Recompensa de abrir un video a una nueva pestaña para verla más tarde debería ser enorme , porque es probable que el usuario elija otro video para ver dentro de la pestaña actual.

¿Qué crees que debería pasar con la aleatoriedad?

La tendencia a probar estados inesperados (el uso de una política o estrategia que no es óptima para la duración de la señal de recomendación actual, más sobre esto más adelante) debe ser dinámica y ajustada por las señales de comportamiento del usuario que indican que el usuario está aburrido por el flujo de recomendaciones. Esta es la situación en su propio comportamiento, cuando comienza a mirar videos que son similares sin pensar hasta que ya no puede hacerlo; en el momento en que dejas de entusiasmarte con las opciones que se te ofrecen. En el momento en que las recomendaciones se volvieron aburridas.

Si no ha abierto una nueva pestaña, el algoritmo debe equilibrarse con la probabilidad de que lo haga o continúe consumiendo el flujo de recomendaciones en el que se encuentra actualmente. Si ha abierto nuevas pestañas, el algoritmo puede intentar con mayor seguridad maximizar la duración de su estadía en la secuencia de recomendaciones actual, ya que es probable que continúe desde una secuencia de recomendaciones diferente después de que la actual se haya secado.

Para hacer las cosas más efectivas necesitas …

Aprendizaje sin supervisión

Debido a que los usuarios se comportan de manera diferente y las secuencias de video pueden afectar la forma en que percibe las recomendaciones, este no es un problema de aprendizaje supervisado, pero nuevamente es un caso de Feature Learning . Debe controlar al menos lo siguiente:

  • Cómo el usuario encontró el video inicial (enlace, búsqueda, Google, Facebook, incrustado en el blog, recomendación abierta en una nueva pestaña).
  • Secuencias de videos elegidos y el “tiempo de reflexión” del usuario entre videos agrupados por distribución gaussiana (clics inmediatos, el usuario tuvo que pensar clics, el usuario tuvo una fuga y un sándwich clics).
  • Casi todo lo demás que el usuario hace con la interfaz de usuario (por ejemplo, recomendaciones de desplazamiento durante el video)

A partir de estos, el algoritmo puede aprender acciones más fuertes, que solo el análisis de utilidad básico realizado por los algoritmos de Game Theory. Sus características pueden formar políticas , los patrones de acciones más fuertes tendrán probabilidades (valores de utilidad) y su eficiencia puede tratarse como otro problema de aprendizaje de refuerzo con principios de Entropía: desea minimizar el tamaño del mensaje formando sub-mensajes que son más probable que “aleatoriedad” o mensajes más detallados .

No estoy seguro, pero este tipo de sistema podría llamarse …

Red de aprendizaje profundo

Lo que sucede aquí es que tiene el objetivo de nivel de aplicación: aumentar la longevidad de la sesión del usuario, que para una máquina es un objetivo bastante humano.

El sistema de recomendación de nivel general elegiría videos basados ​​en recomendaciones de Estrategias (exploración vs explotación). Las estrategias se recomendarían en base a las Políticas de Q-Learning que nacen del aprendizaje de características ( aprendizaje no supervisado) y descubiertas por su reputación (recompensas por ser parte de una estrategia exitosa como en el aprendizaje por refuerzo).

Para que el aprendizaje de esta compleja escala del sistema necesite modificar el mecanismo de Recompensa de Aprendizaje por refuerzo y la evaluación de la Estrategia. No desea evaluar todas las Estrategias, pero desea explotar las Estrategias cercanas al contexto actual de los usuarios (principalmente Cómo el usuario encontró el video inicial y el historial pasado del usuario) y explorar nuevas Estrategias si proporcionan una mala satisfacción del usuario.

Esto generalmente se hace mediante el uso de datos de comportamiento del usuario de series de tiempo anteriores como un conjunto de aprendizaje (con parámetros iniciales persistentes) y usándolos para predecir el comportamiento reciente del usuario ya almacenado en el sistema. Si las predicciones se quedan muy atrás de las Recompensas máximas durante cierta cantidad de iteraciones, se agregan más Estrategias de otros contextos de usuario.