VOOZH about

URL: https://www.geeksforgeeks.org/machine-learning/finding-the-word-analogy-from-given-words-using-word2vec-embeddings/

⇱ Finding the Word Analogy from given words using Word2Vec embeddings - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Finding the Word Analogy from given words using Word2Vec embeddings

Last Updated : 22 Jan, 2021

In many placement exam rounds, we often encounter a basic question to find word analogies. In the word analogy task, we complete the sentence "a is to b as c is to ___ ", which is often represented as a : b :: c : d and we have to find the word 'd'. A  sample question can be like: 'man is to woman as king is to ___'. 

The human brain can recognize that the blank must be filled with the word 'queen'. But for a machine to understand this pattern and fill the blank with the most appropriate word requires a lot of training to be done. What if we can use a Machine Learning algorithm to automate this task of finding the word analogy. In this tutorial, we will be using Word2Vec model and a pre-trained model named 'GoogleNews-vectors-negative300.bin' which is trained on over 50 Billion words by Google. Each word inside the pre-trained dataset is embedded in a 300-dimensional space and the words which are similar in context/meaning are placed closer to each other in the space.

Methodology to find out the analogous word:

In this problem, our goal is to find a word d, such that the associated word vectors va, vb, vc, vd are related to each other in the following relationship: 'vb - va = vd - vc'. We will measure the similarity between vb-va and vd-vc using cosine similarity.

Importing important libraries:

We need to install an additional gensim library, to use word2vec model, to install gensim use the command 'pip install gensim' on your terminal/command prompt.

Loading the word vectors using the pre-trained model:

Defining a function to predict analogous word:

Testing our model:

Comment
Article Tags: