Enfoque contextual Bandit para recomendaciones personalizadas de artículos de noticias

Enfoque contextual Bandit para recomendaciones personalizadas de artículos de noticias

Resumen

Los servicios web personalizados se esfuerzan por adaptar sus servicios (publicidad, artículos de noticias, etc.) a usuarios individuales utilizando tanto contenido como información del usuario. Hay dos desafíos para resolver este problema:

En primer lugar, los servicios web se caracterizan por cambios dinámicos en los grupos de contenidos, lo que hace que los métodos tradicionales de filtrado colaborativo sean inaplicables. En segundo lugar, la escala de la mayoría de los servicios web de interés práctico requiere soluciones que sean rápidas de aprender y de calcular.

Por lo tanto, modelamos la recomendación personalizada de artículos de noticias como un problema de bandido contextual, en el que el algoritmo de aprendizaje selecciona secuencialmente artículos para servir a los usuarios en función de la información contextual de los usuarios y los artículos, mientras ajusta la estrategia de selección de artículos en función de los comentarios de los clics del usuario para maximizar la Número total de clics del usuario.

Insertar descripción de la imagen aquí

introducir

Este artículo analiza el desafío de determinar el contenido web más apropiado para un usuario individual en el momento óptimo. Los filtros de noticias deben reconocer rápidamente la popularidad de las noticias de última hora y al mismo tiempo adaptarse al valor cada vez menor de las noticias existentes y obsoletas. A menudo resulta difícil modelar la popularidad y los cambios temporales basándose únicamente en la información del contenido. En la práctica, a menudo exploramos lo desconocido recopilando comentarios de los consumidores en tiempo real para evaluar la popularidad de nuevos contenidos mientras monitoreamos los cambios en su valor. Por ejemplo, puedes especificar una pequeña cantidad de tráfico para este tipo de exploración. Según las respuestas de los usuarios (como los clics) al contenido seleccionado aleatoriamente en esta pequeña porción de tráfico, el contenido más popular se puede identificar y aprovechar en el tráfico restante. Esta estrategia, que explora aleatoriamente una parte del tráfico y explota con avidez el resto, se denomina estrategia codiciosa. Necesitamos asignar más tráfico al contenido nuevo para conocer su valor más rápido y tener menos usuarios que sigan los cambios en el tiempo en el contenido existente.

Tanto los usuarios como el contenido están representados por un conjunto de características, las características del usuario pueden incluir actividad histórica a nivel agregado, así como información demográfica declarada, y las características del contenido pueden incluir información y categorías descriptivas. En este caso, la exploración y explotación debe desplegarse a nivel individual, ya que distintos usuarios pueden ver el mismo contenido de forma muy diferente. Debido a que puede haber una gran cantidad de opciones o acciones disponibles, resulta fundamental identificar puntos en común entre los elementos de contenido y transferir este conocimiento a todo el conjunto de contenidos.

En muchos escenarios basados ​​en la web, el mundo del contenido sufre cambios frecuentes y la popularidad del contenido cambia con el tiempo. Además, una gran cantidad de visitantes pueden ser nuevos y no tener registros históricos de consumo; esto se denomina situación de arranque en frío. Por lo tanto, cuando uno o ambos intereses y contenidos del usuario son nuevos, comprender la coincidencia entre ellos se vuelve esencial. Sin embargo, obtener dicha información puede ser costoso y reducir la satisfacción del usuario en el corto plazo, lo que plantea la cuestión de equilibrar de manera óptima dos objetivos en competencia: maximizar la satisfacción del usuario en el largo plazo y recopilar información sobre la coincidencia entre los intereses del usuario y el contenido. El problema anterior en realidad se denomina problema de exploración/explotación basado en características. En este artículo, lo formulamos como el problema del bandido contextual, que es un enfoque basado en principios en el que el algoritmo de aprendizaje selecciona secuencialmente artículos para servir a los usuarios en función de la información contextual de los usuarios y los artículos, mientras ajusta la estrategia de selección de artículos en función de los comentarios de los clics del usuario. para maximizar Maximice el número total de clics de usuarios a largo plazo. Definimos un problema de bandidos y luego revisamos algunos métodos existentes en la Sección 2. Luego proponemos un nuevo algoritmo, LinUCB, en la Sección 3, que tiene un análisis de arrepentimiento similar al de los algoritmos más conocidos y se utiliza para competir con los mejores predictores lineales con una menor sobrecarga computacional. También discutimos el tema de la evaluación fuera de línea en la Sección 4, mostrando que esto puede ser una suposición razonable para diferentes usuarios cuando las interacciones son independientes y se distribuyen de manera idéntica (es decir, es decir,). Luego probamos nuestro nuevo algoritmo y varios algoritmos existentes utilizando esta estrategia de evaluación fuera de línea en la Sección 5.

Modelado contextual de problemas de bandidos

El algoritmo observa a los usuarios: ut u_ttut​,臂:a ∈ A ta \in \mathcal{A}_taAt​, y los vectores propios de armas y acciones: X t , a X_{t,a}Xt , un(Agregar información sobre usuarios y armas se llama contexto)

A elige un brazo en ∈ A t a_t \in \mathcal{A}_t basándose en las recompensas observadas en ensayos anterioresatAt, y recibir el retorno rt, en r_{t,a_t}rt , unt, cuyo valor esperado depende de ut u_ttuten_tat

Según la nueva observación (X t , a , at , rt , at ) (X_{t,a},a_t,r_{t,a_t})( Xt , un,at,rt , unt) Estrategia de selección de brazos mejorada. Para el brazo abiertoa ≠ ata \ne a_ta=atSin comentarios rt , en r_{t,a_t}rt , unt

En el proceso anterior, el rendimiento total del ensayo T de A se define como: ∑ t = 1 T rt , en \sum_{t=1}^T r_{t,a_t}t = 1trt , unt, el rendimiento óptimo esperado de la prueba T se define como: E [ ∑ t = 1 T rt , at ∗ ] E[\sum_{t=1}^T r_{t,a^*_t}]mi [ t = 1trt , unt]en ∗ a^*_tatEste es el brazo con la mayor ganancia esperada en la prueba t.

Nuestro objetivo es diseñar un modelo que maximice los beneficios totales esperados anteriormente. De manera equivalente, podemos encontrar un algoritmo que minimice el arrepentimiento de la estrategia de selección de brazo óptima. Aquí, el arrepentimiento de la prueba T del algoritmo A RA ( T ) R_A(T)Run( T )​​正式定义为:
RA ( T ) = def E [ ∑ t = 1 T rt , en ∗ ] − E [ ∑ t = 1 T rt , en ] ( 1 ) R_A(T) \xlongequal{def } E[\sum_{t=1}^T r_{t,a^*_t}] - E[\sum_{t=1}^T r_{t,a_t}] \quad\quad\quad\quad ( 1)Run( T )def _ _ mi [t = 1trt , unt]mi [t = 1trt , unt]( 1 )
Según la definición de retorno, el retorno esperado de un artículo es su tasa de clics (CTR). Elegir un artículo con el CTR más grande equivale a maximizar el número esperado de clics del usuario, lo que a su vez es consistente con la fórmula del bandido maximizador El rendimiento total esperado es el mismo.

Debido al conocimiento impreciso de A, este brazo aparentemente óptimo puede en realidad ser subóptimo. Para evitar esta situación indeseable, A debe explorar seleccionando armas que parezcan subóptimas para poder recopilar más información sobre ellas. La exploración puede aumentar el arrepentimiento a corto plazo porque es posible que se seleccionen algunas armas subóptimas. Obtener información sobre la devolución promedio de un arma (puede mejorar la estimación de A sobre la devolución de un arma, reduciendo así el arrepentimiento a largo plazo).

Algoritmo LinUCB

Supongamos que el rendimiento esperado del brazo a está en un vector con coeficientes desconocidos θ a ∗ \theta^*_aiacaracterísticas d-dimensionales X t , a X_{t,a}Xt , unes lineal. Para todo t,
E [ rt , a ∣ X t , a ] = X t , a T θ a ∗ ( 2 ) E[r_{t,a}| }^T \theta^*_a \quad\quad\quad \quad\quad\quad\quad\quad(2)mi [ rt , un∣X _t , un]=Xt , untia( 2 )
Este tipo de modelo se denomina modelo disjunto y los parámetros no son compartidos por diferentes brazos. D a D_aDun:a m × dm\times d del experimento tmetro×Matriz de diseño de d (filas correspondientes a m contextos del artículo a observado anteriormente). ba ∈ R m b_a\in \mathbb{R}^mbunRm : Comentarios sobre si el usuario hizo clic o no. Datos de entrenamiento(D a , ca ) (D_a,c_a)( Dun,Cun)得到系数:
θ ^ a = ( D a T D a + I d ) − 1 D a T c a \hat{\theta}_a = (D^T_a D_a + I_d)^{-1} D^T_a c_a i^un=( DatDun+Ire)1D _atCun
HiceIrees d × dd\veces dd×La matriz identidad de d . ca c_aCunLos componentes de son D a D_aDunIndependientemente de la fila correspondiente en , la probabilidad es al menos 1 − δ ( δ > 0 ) 1-\delta(\delta>0)1re ( re>0 )

Insertar descripción de la imagen aquí

La desigualdad anterior proporciona un UCB razonable del rendimiento esperado del grupo a, del cual se puede derivar la estrategia de selección de brazo tipo UCB: en cada ensayo t, elija:

Insertar descripción de la imagen aquí

A a = def D a TD a + I d A_a \xlongequal {def} D^T_a D_a + I_dAundef _ _ DatDun+Ire

El criterio de selección de brazo en la ecuación (5) también puede verse como una compensación aditiva entre las estimaciones de ingresos y la reducción de la incertidumbre del modelo.

Modelado de modelos mixtos

La combinación de componentes compartidos y no compartidos puede ser más útil para la función del brazo. Agregue otro término lineal al lado derecho de la ecuación (2), usando el siguiente modelo mixto:
E [rt, a ∣ X t, a ] = Z t , a T β ∗ + X t , a T θ a ∗ ( 6 ) E[r_{t,a}| ^T \theta^*_a \quad\quad\quad\quad\quad\quad\ cuádruple\cuádruple(6)mi [ rt , un∣X _t , un]=zt , untb+Xt , untia( 6 )
其中Z t , a ∈ R k Z_{t,a}\in\mathbb{R}^kzt , unRk es la característica de la combinación usuario/artículo actual,β ∗ β^∗b es un vector de coeficientes desconocidos comunes a todos los brazos. Todos los brazos compartenβ ∗ β^∗b , no cooperaciónθ a ∗ \theta^*_aia。​

Debido a características compartidas, los intervalos de confianza para cada brazo no son independientes. Afortunadamente, existe una forma eficaz de calcular el UCB siguiendo la misma línea de razonamiento de la sección anterior. El proceso de derivación se basa en gran medida en técnicas de inversión de matrices de bloques. Proponemos un nuevo algoritmo de modelo híbrido LinUCB.

Insertar descripción de la imagen aquí

Proponemos un enfoque que es fácil de implementar, basado en datos de registro e imparcial.

Según el registro histórico actual ht − 1 h_{t-1}ht - 1, la política π selecciona el mismo brazo a que selecciona la política de registro, luego el evento se agrega al historial y se actualiza el retorno total. De lo contrario, si la política π selecciona un brazo diferente al utilizado por la política de registro, entonces el evento se ignorará por completo y el algoritmo continuará procesando el siguiente evento sin realizar ningún otro cambio en su estado. Tenga en cuenta que, dado que la política de registro selecciona cada brazo de forma aleatoria y uniforme, este algoritmo retiene cada evento con una probabilidad exactamente de 1/K, independientemente de todos los demás eventos. Esto significa que los eventos retenidos tienen la misma distribución que los eventos seleccionados por D. Por lo tanto, podemos demostrar que dos procedimientos son equivalentes: el primero evalúa la política frente a T eventos reales de D, y el segundo evalúa la política frente a un flujo de eventos registrados utilizando un evaluador de políticas.

Teorema 1:

Para todas las distribuciones D del contexto, todas las políticas π, todas T y todas las secuencias de eventos h T h_Tht:
Insertar descripción de la imagen aquí

donde S es el iid iid de la política de registro aleatorio uniforme y DFlujo de eventos dibujado por i.i.d. _ El número esperado de eventos obtenidos de la secuencia para recopilar un historial de longitud T esKT KTK T. _

Este teorema dice que en el mundo real, cada historia tiene la misma probabilidad que el evaluador de políticas. Por lo tanto, muchas de estas estadísticas históricas, como el retorno promedio RT/T RT/T devuelto por el Algoritmo 3R T / T , son todas estimaciones insesgadas del valor π del algoritmo. Además, el teorema establece que se espera queKT KTK T registró eventos para mantener el tamañoTTmuestra de t.

Cualquier aleatorización en la política es independiente de la aleatorización en el mundo, solo necesitamos demostrar que está condicionado a la historia −1 de que la distribución de cada proceso en el tésimo evento sea la misma. En otras palabras, debemos mostrar:

Insertar descripción de la imagen aquí

Desde arma arm \quad abrazo _ _a se elige uniformemente al azar en la política de registro, por lo que para cualquier política, cualquier historial, cualquier función y cualquier brazo, la probabilidad de que la calculadora de políticas salga del bucle interno es la misma, lo que significa que esto sucede en el último evento, el último. la probabilidad de un evento esP r D ( })P r D ( Xt , 1,,Xt , K,rt , un)

Dado que cada evento en la secuencia se retiene con una probabilidad exacta de 1/K, el número esperado de eventos necesarios para redefinirlo es exactamente KT.

Supongo que te gusta

Origin blog.csdn.net/perfectzxiny/article/details/119672275
Recomendado
Clasificación