Características de los vectores de palabras en word2vec

9

Estoy tratando de hacer un análisis de sentimientos. Para convertir las palabras en vectores de palabras, estoy usando el modelo word2vec. Supongamos que tengo todas las oraciones en una lista llamada 'oraciones' y estoy pasando estas oraciones a word2vec de la siguiente manera:

model = word2vec.Word2Vec(sentences, workers=4 , min_count=40, size=300,   window=5, sample=1e-3)

Como soy novato con los vectores de palabras, tengo dos dudas.
1- Establecer el número de características en 300 define las características de un vector de palabras. Pero, ¿qué significan estas características? Si cada palabra en este modelo está representada por una matriz numpy 1x300, ¿qué significan estas 300 características para esa palabra?

2- ¿Qué hace en realidad el muestreo descendente representado por el parámetro 'muestra' en el modelo anterior?

Gracias por adelantado.

enterML
fuente

Respuestas:

10

1- El número de características: en términos de modelo de red neuronal, representa el número de neuronas en la capa de proyección (oculta). Como la capa de proyección se basa en hipótesis de distribución, el vector numérico para cada palabra significa su relación con sus palabras de contexto.

La red neuronal aprende estas características ya que este es un método sin supervisión. Cada vector tiene varios conjuntos de características semánticas. Por ejemplo, tomemos el ejemplo clásico V(King) -V(man) + V(Women) ~ V(Queen)y cada palabra representada por un vector de 300 d. V(King)tendrá características semánticas de Royality, reino, masculinidad, humano en el vector en cierto orden. V(man)tendrá masculinidad, humano, trabajo en un cierto orden. Por lo tanto, cuando V(King)-V(Man)se hace, la masculinidad, las características humanas se anularán y cuando se agregue con las V(Women)que tiene feminidad, se agregarán características humanas, lo que dará como resultado un vector muy similar aV(Queen). Lo interesante es que estas características están codificadas en el vector en un cierto orden para que los cálculos numéricos como la suma y la resta funcionen perfectamente. Esto se debe a la naturaleza del método de aprendizaje no supervisado en la red neuronal.

2- Hay dos algoritmos de aproximación. Hierarchical softmaxy negative sampling. Cuando se proporciona el parámetro de muestra, se toma un muestreo negativo. En el caso de softmax jerárquico, para cada vector de palabra, sus palabras de contexto reciben resultados positivos y todas las demás palabras del vocabulario reciben resultados negativos. El problema de la complejidad del tiempo se resuelve mediante muestreo negativo. Al igual que en el muestreo negativo, en lugar de todo el vocabulario, solo una parte muestreada del vocabulario recibe resultados negativos y los vectores se entrenan, lo que es mucho más rápido que el método anterior.

yazhi
fuente
Esta interpretación de las características de word2vec es engañosa. No hay una dimensión de masculinidad del espacio, ni un elemento de realeza en el vector. Si ese fuera el caso, entonces un espacio vectorial de 300 dimensiones solo podría representar 300 dicotomías semánticas independientes.
Dan Hicks
@DanHicks: nunca he mencionado cada característica como una dimensión del espacio. Acabo de decir que tales características semánticas están codificadas en el vector en cierto orden, de modo que las operaciones matemáticas son posibles.
yazhi
"Características" normalmente se refiere a las variables utilizadas para representar los casos, en este caso, los elementos de la palabra vectores / dimensiones del espacio vectorial. La pregunta de @ Nain claramente usa "características" de esta manera. Las "características semánticas" de las que habla son, en el mejor de los casos, una forma vaga de hablar sobre cómo word2vec maneja las analogías. No son en absoluto las características de los vectores de palabras.
Dan Hicks
1
tiene razón ... he editado "características semánticas" en "características semánticas", y las "características" en la respuesta representan solo las dimensiones del vector.
yazhi
0
  1. Según la hipótesis de distribución, la dimensión individual en el vector de la palabra no significa mucho sobre la palabra en el mundo real. Debe preocuparse por las dimensiones individuales. Si su pregunta es así, ¿cómo debo seleccionar el número de dimensiones? Se basa únicamente en el experimento para sus datos y puede ir de 100 a 1000. Para muchos experimentos donde el entrenamiento se realiza en texto wiki, la dimensión 300 en su mayoría da lo mejor resultado.
  2. El parámetro de muestra es el parámetro utilizado para podar las palabras que tienen alta frecuencia. Por ejemplo, "el" "es" "era", estas palabras vacías no se consideran en la ventana al predecir la palabra interna y el valor predeterminado funciona bien para identificar estas palabras vacías cuya frecuencia es mayor.
Trideep Rath
fuente