¿Por qué es jerárquico softmax mejor para palabras poco frecuentes, mientras que el muestreo negativo es mejor para palabras frecuentes?


Respuestas:


10

No soy un experto en word2vec, pero al leer Rong, X. (2014). Word2vec Parameter Learning Explicado y desde mi propia experiencia NN, simplificaría el razonamiento para esto:

  • Softmax jerárquico proporciona una mejora en la eficiencia del entrenamiento ya que el vector de salida está determinado por un recorrido en forma de árbol de las capas de red; una muestra de entrenamiento dada solo tiene que evaluar / actualizar las unidades de red , no . Esto esencialmente amplía los pesos para soportar un vocabulario amplio: una palabra dada está relacionada con menos neuronas y viceversa.O(log(N))O(N)
  • El muestreo negativo es una forma de muestrear los datos de entrenamiento, similar al descenso de gradiente estocástico, pero la clave es buscar ejemplos de entrenamiento negativos. Intuitivamente, entrena en función de los lugares de muestreo en los que podría haber esperado una palabra, pero no encontró una, lo que es más rápido que entrenar un corpus completo en cada iteración y tiene sentido para palabras comunes.

Los dos métodos no parecen ser exclusivos, teóricamente, pero de todos modos parece ser por eso que serían mejores para palabras frecuentes e infrecuentes.


1

Tengo entendido que esto se debe a la codificación Huffman utilizada al construir la jerarquía de categorías.

Softmax jerárquico utiliza un árbol de nodos sigmoides en lugar de un gran softmax, la codificación Huffman asegura que la distribución de los puntos de datos que pertenecen a cada lado de cualquier nodo sigmoide esté equilibrada. Por lo tanto, ayuda a eliminar la preferencia hacia categorías frecuentes en comparación con el uso de un gran softmax y muestreo negativo.


0

Softmax jerárquico construye un árbol sobre todo el vocabulario y los nodos de las hojas que representan palabras raras inevitablemente heredarán las representaciones vectoriales de sus antepasados ​​en el árbol, que pueden verse afectadas por otras palabras frecuentes en el corpus. Esto beneficiará el entrenamiento incremental para nuevos corpus.

El muestreo negativo se desarrolla en base a la estimación de contraste de ruido y muestrea aleatoriamente las palabras que no están en el contexto para distinguir los datos observados del ruido aleatorio generado artificialmente.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.