Red de conocimientos turísticos - Conocimientos sobre calendario chino - Múltiples modelos de interés en la fase de recuperación - MIND

Múltiples modelos de interés en la fase de recuperación - MIND

El artículo "Red de múltiples intereses con enrutamiento dinámico para recomendación en Tmall" publicado por el equipo de Alibaba en CIKM en 2019 aplicó el algoritmo de enrutamiento dinámico de la red cápsula para construir una red de múltiples intereses para el retiro. etapa. Modelo--MENTE.

Este artículo es un trabajo en la fase de recuperación, con el objetivo de lograr una recuperación eficiente de los elementos de interés del usuario. Es muy importante establecer un "modelo de intereses de los usuarios" y "encontrar representaciones de intereses de los usuarios", pero debido a la "diversidad de intereses de los usuarios", esta no es una tarea fácil.

Algunos métodos de representación de intereses de los usuarios existentes:

1. Los métodos basados ​​en filtrado colaborativo representan los intereses de los usuarios a través de términos de interacción históricos o factores ocultos: hay escasez y problemas computacionales.

2.

2. Los métodos basados ​​en aprendizaje profundo representan los intereses de los usuarios a través de vectores de incrustación de baja dimensión:

El autor cree que esto es un cuello de botella en múltiples representaciones de intereses, debido a que toda la información relacionada con los múltiples intereses del usuario debe comprimirse en un vector de representación, toda la información de los múltiples intereses del usuario se mezcla, lo que resulta en una detección inexacta de elementos en la etapa de recuperación.

3. DIN agrega inteligencia de atención basada en la incrustación: sin embargo, cuando se usa el mecanismo de atención para cada elemento de destino, es necesario recalcular la representación del usuario, por lo que no se puede usar en la etapa de recuperación.

Acerca de la red de cápsulas:

Algoritmo de enrutamiento dinámico entre cápsulas, algoritmo de cápsula de enrutamiento dinámico, el núcleo del algoritmo radica en el método de actualización del parámetro b: al actualizar los parámetros, las características subyacentes y la salida se consideran características de cápsula de manera integral, porque ambos son vectores, cuando son homogéneos, es decir, tienen una alta similitud. Cuando ambos son vectores y cuando las dos direcciones son iguales, es decir, la similitud entre los dos es alta. La similitud entre los dos es alta y las características de bajo nivel actuales pueden reflejar mejor las características de la imagen. El producto es positivo y el peso de b aumenta, lo que significa que es más probable que la cápsula de bajo nivel actual sea aceptada por el. por el contrario, cuando las dos son opuestas, significa que las características de bajo nivel actuales. El grado de coincidencia con la cápsula de salida no es alto, el producto es negativo y el peso de b disminuye, lo que indica que el bajo actual. La cápsula de alto nivel es "rechazada" por la cápsula de alto nivel. "rechazar". Al actualizar los pesos de esta manera, se pueden establecer correlaciones entre las características de bajo nivel y las características de alto nivel, lo que permite que el modelo "comprenda" mejor la imagen.

Una "cápsula" es un grupo de pequeñas neuronas que se unen para generar un vector completo. El enrutamiento dinámico se utiliza para conocer los pesos de conexión entre "cápsulas" y mejorarlos mediante el algoritmo de maximización de expectativas (EM), que supera algunas deficiencias y logra una mayor precisión.

Contribuciones principales:

Este artículo se centra en el problema de los intereses múltiples del usuario en la etapa de recuperación y propone utilizar la red de intereses múltiples con enrutamiento dinámico (MIND) para aprender al usuario. representaciones.

La principal "innovación" es utilizar el algoritmo de enrutamiento dinámico de la red cápsula para obtener la representación de intereses múltiples del usuario agregando los comportamientos históricos del usuario en múltiples conjuntos de contenido de la colección, y utilizar aún más cada conjunto de comportamientos históricos para inferir y vector de representación del usuario correspondiente a intereses específicos. De esta manera, para un usuario específico, MIND generará múltiples vectores de representación, ****, que de manera similar representan los diferentes intereses del usuario. Los vectores de representación del usuario solo necesitan calcularse una vez y pueden usarse para recuperar elementos relevantes de elementos de mil millones de escala durante la etapa de comparación.

Objetivo de la tarea

El objetivo de la tarea de recuperación es recuperar miles de conjuntos de elementos para cada usuario de un grupo de elementos de mil millones de niveles que contienen elementos relevantes para los intereses del usuario.

Entrada del modelo

Para el modelo, la entrada de cada muestra se puede expresar como un triplete, que representa el conjunto de elementos con los que el usuario ha interactuado, es decir, el historial de comportamiento, atributos del usuario (como sexo, edad, etc.) y características del elemento de destino (como ID de artículo e ID de categoría).

Tarea principal

Aprenda una función que asigna instancias de elementos de usuario (características locales) a un conjunto de representaciones integradas de los intereses del usuario, como usuario, dimensión de incrustación y número de vectores (es decir, el representación vectorial de la cantidad de interés).

Si = 1, la representación de incrustación de otros modelos (como Youtube DNN), entonces la función de incrustación del elemento es: donde, representa la capa de incrustación y agrupación.

Resultado final

Recuperar los N mejores candidatos según la función de puntuación:

Recuperar según la función de puntuación: es decir, según el producto interno de el elemento de destino y el vector de representación del usuario El valor máximo sirve como base para la similitud, y la Atención DIN también se mide de esta manera.

La entrada a la capa de incrustación consta de tres partes: atributos del usuario, comportamiento del usuario y etiquetas de elementos de destino. Cada parte se compone de múltiples características de identificación y son datos dispersos de alta dimensión, por lo que se requiere tecnología de incrustación para mapearla en un vector denso de baja dimensión.

A diferencia de un único vector que representa los intereses del usuario, el autor utiliza múltiples vectores de representación para representar diferentes intereses del usuario respectivamente. Con este enfoque, los múltiples intereses del usuario se pueden considerar por separado durante la fase de recuperación, lo que da como resultado una recuperación de elementos más precisa para cada aspecto de interés.

Para aprender representaciones de múltiples intereses, los autores utilizan el enrutamiento dinámico aprendido mediante la representación de la red cápsula para clasificar los comportamientos históricos de los usuarios en múltiples grupos. Los elementos de un grupo deben estar estrechamente relacionados y de manera similar representar un aspecto específico de los intereses del usuario.

Enrutamiento dinámico

Las "cápsulas" son un nuevo tipo de neurona, representada por vectores en lugar de escalares utilizados en las redes neuronales ordinarias. Se espera que las cápsulas basadas en vectores representen diferentes atributos de entidades, donde la dirección de la cápsula representa el atributo y la longitud de la cápsula se utiliza para representar la probabilidad de existencia del atributo.

El enrutamiento dinámico es un algoritmo de aprendizaje iterativo en redes de cápsulas que obtiene la representación de cápsulas de alto nivel aprendiendo el logaritmo (número de rutas) entre cápsulas de bajo nivel y cápsulas de alto nivel.

Suponemos que la red de cápsulas tiene dos capas, a saber, cápsulas de bajo nivel y cápsulas de alto nivel. El número de cápsulas representa el número de neuronas (longitud del vector) en cada cápsula. El número de pares de enrutamiento se calcula y actualiza mediante: donde representa la matriz de mapeo bilineal que se va a aprender (llamada matriz de transformación en el texto original de las redes de cápsulas).

Calcule vectores candidatos para cápsulas de alto orden como una suma ponderada de todas las cápsulas de bajo orden calculando pares de enrutamiento:

Utilice múltiples vectores para agrupar el comportamiento histórico del usuario en múltiples cápsulas de interés para expresar los diferentes intereses de los usuarios. La lógica de implementación es la siguiente:

Entrada:

Salida:

Definición:

(1) Cápsula de interés dinámico

(2) Expresión de incrustación de vector de comportamiento de orden bajo: vector de comportamiento que representa el comportamiento del usuario (igual)

(3) Expresión de incrustación de vector de interés de orden superior: vector de interés que representa el vector de interés del usuario (igual)

(4) Enrutamiento logit entre el vector de comportamiento y el vector de interés:

(5) Matriz de mapeo bilineal:

Pasos:

( 1) Calcule el número de incorporaciones de interés

(2) Inicialización (inicializada con distribución normal)

(3) Recuento de iteraciones transversales.

(3.1) Para todas las rutas de comportamiento, calcular

(3.2) Para todas las rutas de interés, calcular y

(3.3) Actualizar iterativamente, donde ** * Sharing Matrix

A través de la capa de extracción de múltiples intereses, se pueden establecer múltiples cápsulas de intereses a partir de la incorporación del comportamiento del usuario. Durante la capacitación, diseñamos una capa de atención consciente de las etiquetas: permita que los elementos de etiqueta (objetivo) seleccionen cápsulas de interés usadas. Específicamente, para cada elemento de etiqueta, se calcula la similitud entre la cápsula de interés y la incrustación del elemento de etiqueta, y se calcula el peso de la cápsula de interés y el vector de representación del usuario como elemento objetivo. compatibilidad correspondiente.

Capacitación

Después de obtener el vector del usuario y la incrustación del elemento de anotación, calcule la probabilidad de interacción entre el usuario y el elemento de anotación:

script>