Documento clásico de Youtube DNN
Después de revisarlo con mi jefe, descubrí que antes solo tenía un poco de conocimiento. Esta vez, al registrar la nueva comprensión de este documento, puede haber algunos errores.
Este artículo explica este modelo en dos etapas: retiro y disposición detallada:
Recuerdo:
Hablemos primero de las características: la incrustación de los videos, el usuario ha visto, incrustación de términos de búsqueda del usuario, información lateral de la ubicación geográfica y la edad del usuario, y características de edad de ejemplo que deben explicarse.
Luego está el modelo: DNN de tres capas.
Por último, la pérdida de entrenamiento: softmax para la clasificación.
Método de publicación: vecino más cercano
En realidad, hay muchas dudas aquí:
1.
Lo que dice esta columna de clics es el tiempo de entrenamiento: el momento en que se obtuvo esta muestra (tiempo de clic del video), pero creo que esto no expresa el concepto de "video nuevo" y no saber cómo usar la hora actual para saber qué significa la resta. La etiqueta se escribe en el momento de hacer clic, no durante el entrenamiento;
Así que creo que la edad en este ejemplo debería ser el tiempo de clic, el tiempo de publicación, que indica la preferencia del usuario por los videos recién subidos. Esta función se utiliza para capturar esta preferencia. Se puede configurar en 0 al servir comida para eliminar esta preferencia. Después de todo, esta es la etapa de recuperación y hay más cosas que recordar. (¿Esto es para eliminar la preferencia del usuario por videos nuevos?)
2. ¿Por qué necesitamos hacer una clasificación múltiple en lugar de predecir puntuaciones? Si hay muchos vídeos de varias categorías, ¿cómo se garantiza el rendimiento?
Realmente no entiendo por qué necesitamos hacer una clasificación múltiple en lugar de dar las incorporaciones de muestra a la red para su puntuación.
Softmax muestreado se utiliza para mejorar el rendimiento de clasificación múltiple de videos masivos; consulte /p/349908071. En términos generales, use Q(y|x) para muestrear un subconjunto, calcule el logit en el subconjunto y luego el logit en el conjunto de datos original se puede calcular usando el resultado F(x, y)-log(Q(y| x)) para expresar.
3. ¿Por qué no hacer una clasificación múltiple en 3. Etapa de servicio, pero sí el vecino más cercano?
Aquí primero debemos comprender qué son la incrustación de usuarios y la incrustación de videos en la etapa de servicio. user_embedding es el resultado después de la última capa de relu, como un vector de dimensión D. Luego, para obtener un vector de un millón de dimensiones (representado por d_N), debe pasar por una matriz d * d_N-dimensional. Cada columna de esta matriz es una incrustación de video después del entrenamiento; columna, luego Para calcular un softmax, dado que el denominador es el mismo y la operación de tomar el exponente también es la misma, entonces simplemente haga el producto escalar directamente.
Ordenar:
Hablemos primero de las funciones: la incrustación del video actualmente clasificado, la incrustación del video visto por el usuario, la incrustación del idioma del usuario y el video, la última vez que se vio fue cuando se vio el mismo. El tiempo del video del canal, la impresión anterior es la cantidad de veces que el usuario ha expuesto el video (aquí se introducen comentarios negativos).
Luego está el modelo: DNN de tres capas.
Por último, la pérdida de entrenamiento: lógica ponderada.
Método de servicio: e (wx+b)
También surgen algunas dudas:
1. ¿Cuál es la logística ponderada en el entrenamiento y por qué es E? (WX+B)?
Esto es lo que menos entendí cuando lo releí. Intentaré escribirlo primero. Primero, aclaremos qué es la logística ponderada. Entonces, revisemos el origen de la fórmula LR log(odds)= w * x * x; Odds=p/(1-p) aquí representa la probabilidad de muestras positivas/la probabilidad de muestras negativas en LR ponderado; pérdida La tasa se convertirá en W*p/(1-p), donde W es el peso dado a las muestras positivas.
En cuanto a por qué este es el caso, hay una explicación usando la proporción de muestras positivas y negativas, lo cual creo que no es muy razonable /P/4359122165438 pero si podemos aceptar esta probabilidad, entonces log(odds) = w*x; * x puede obtener las probabilidades = e^(wx), este es el objetivo del servicio;
Hablemos primero de qué es W*p/(1-p), donde es el peso de W la duración T de este video, entonces suma(Ti* pi) es el valor esperado en tiempo real de E(T), y la expansión de Taylor de E(T)/(1-p) es E(T) * (1 .
Se recomienda encarecidamente leer más columnas sobre los diez principales problemas de ingeniería, por ejemplo, extraer una cantidad igual de muestras de entrenamiento de cada usuario y configurar la incorporación de una gran cantidad de muestras de entrenamiento de larga duración. vídeos de cola a 0.