Handling out-of-vocabulary word in word embedding

5 views (last 30 days)
Ismat Mohd Sulaiman
Ismat Mohd Sulaiman on 5 Jul 2021
I'm using FastText and my own word embedding on a set of documents. It is being used to detect abbreviations (Y/N) for each word token.
When testing, words that does not have vectors (out-of-vocabulary - OOV words), and discarded and not included in the performance measures (precision, recall, etc.) giving a false result. How do you handle this?
Would you replace all words with NaN values be included in the performance measure? Can the NaN values be replaced with a vector? How would you decide which vector?

Answers (1)

Prince Kumar
Prince Kumar on 16 Aug 2021
From my understanding your want to handle OOV(out-of-vocabulary) words for your abbreviations detection task. For now MATLAB fastTextWordEmbedding does not handle OOV words.
There are many ways to do it, following are the two popular ones:
  1. Use context around the OOV word. You can use the word embedding of the previous and next word to your current OOV word.
  2. Use synonyms or similar word to get the word embedding for your OOV word.
  1 Comment
Ismat Mohd Sulaiman
Ismat Mohd Sulaiman on 16 Aug 2021
Thank you! I have used the first approach. Excited to try or add on the 2nd approach.

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by