Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is word similarity in NLP?
Word similarity measures how close or related two words are in meaning, often using numbers to show how similar they are.
Click to reveal answer
beginner
How do word embeddings help find word similarity?
Word embeddings turn words into numbers (vectors) so we can use math to find how close words are, showing their similarity.
Click to reveal answer
intermediate
What is a common method to measure similarity between word vectors?
Cosine similarity measures the angle between two word vectors to find how similar their meanings are.
Click to reveal answer
beginner
Explain word analogies with an example.
Word analogies show relationships like 'king is to queen as man is to woman'. It means the difference between king and queen is like the difference between man and woman.
Click to reveal answer
intermediate
How can word embeddings solve analogies?
By using vector math: for example, vector('king') - vector('man') + vector('woman') is close to vector('queen'). This helps find the missing word in analogies.
Click to reveal answer
What does a high cosine similarity between two word vectors indicate?
AThe words appear in the same sentence
BThe words are spelled similarly
CThe words have similar meanings
DThe words have opposite meanings
✗ Incorrect
Cosine similarity measures how close two word vectors are in meaning, so a high value means similar meanings.
Which of these is an example of a word analogy?
A'cat' is to 'kitten' as 'dog' is to 'puppy'
B'cat' rhymes with 'hat'
C'cat' and 'dog' are both animals
D'cat' is spelled with three letters
✗ Incorrect
Word analogies show relationships between pairs of words, like parent to child.
What is the main purpose of word embeddings?
ATo translate words into another language
BTo count how many times a word appears
CTo check spelling mistakes
DTo convert words into numbers for math operations
✗ Incorrect
Word embeddings turn words into vectors so computers can understand and compare their meanings.
In the analogy 'man is to king as woman is to ?', which word fits best?
Alady
Bqueen
Cgirl
Dprince
✗ Incorrect
The relationship between man and king is similar to woman and queen.
Which metric is commonly used to measure similarity between word vectors?
ACosine similarity
BEuclidean distance
CJaccard index
DManhattan distance
✗ Incorrect
Cosine similarity measures the angle between vectors, which works well for word meaning comparison.
Describe how word embeddings help in finding word similarity and solving analogies.
Think about how numbers can represent words and how math can find relationships.
You got /4 concepts.
Explain the concept of word analogies with a simple example.
Use a real-life example comparing two pairs of related words.
You got /3 concepts.
Practice
(1/5)
1. What does word similarity measure in natural language processing?
easy
A. How close two words are in meaning using numbers
B. How often two words appear together in a sentence
C. The length difference between two words
D. The number of letters two words share
Solution
Step 1: Understand the concept of word similarity
Word similarity measures how close two words are in meaning, often represented by a number like cosine similarity.
Step 2: Differentiate from other word properties
Frequency or letter count does not capture meaning closeness, so those options are incorrect.
Final Answer:
How close two words are in meaning using numbers -> Option A
Quick Check:
Word similarity = meaning closeness [OK]
Hint: Similarity means meaning closeness, not letter or frequency count [OK]
Common Mistakes:
Confusing similarity with word frequency
Thinking similarity is about word length
Assuming similarity counts shared letters
2. Which of the following is the correct way to find the cosine similarity between two word vectors vec1 and vec2 in Python using NumPy?
easy
A. np.dot(vec1, vec2) / (np.linalg.norm(vec1) * np.linalg.norm(vec2))
B. np.dot(vec1, vec2) * (np.linalg.norm(vec1) + np.linalg.norm(vec2))
C. np.dot(vec1, vec2) - (np.linalg.norm(vec1) * np.linalg.norm(vec2))
D. np.dot(vec1, vec2) / (np.linalg.norm(vec1) + np.linalg.norm(vec2))
Solution
Step 1: Recall cosine similarity formula
Cosine similarity = dot product of vectors divided by product of their norms.
Step 2: Match formula to code
np.dot(vec1, vec2) / (np.linalg.norm(vec1) * np.linalg.norm(vec2)) matches the formula exactly using np.dot and np.linalg.norm.
Final Answer:
np.dot(vec1, vec2) / (np.linalg.norm(vec1) * np.linalg.norm(vec2)) -> Option A
Quick Check:
Cosine similarity = dot / (norm1 * norm2) [OK]
Hint: Cosine similarity divides dot product by product of norms [OK]
Common Mistakes:
Adding norms instead of multiplying
Subtracting norms from dot product
Multiplying dot product by sum of norms
3. Given the following word vectors:
king = [0.5, 0.8, 0.3]
queen = [0.45, 0.75, 0.35]
man = [0.6, 0.7, 0.2]
woman = [0.55, 0.65, 0.25]
What is the closest word to the vector king - man + woman?
medium
A. king
B. man
C. queen
D. woman
Solution
Step 1: Calculate the vector for king - man + woman
Subtract man from king: [0.5-0.6, 0.8-0.7, 0.3-0.2] = [-0.1, 0.1, 0.1]. Add woman: [-0.1+0.55, 0.1+0.65, 0.1+0.25] = [0.45, 0.75, 0.35].
Step 2: Compare result to known vectors
The resulting vector matches queen exactly: [0.45, 0.75, 0.35].
Final Answer:
queen -> Option C
Quick Check:
king - man + woman = queen [OK]
Hint: king - man + woman equals queen vector [OK]
Common Mistakes:
Not subtracting man vector before adding woman
Mixing up vector addition order
Choosing original words instead of analogy result
4. The following code tries to find the word most similar to king - man + woman but has a flaw:
import numpy as np
words = {'king': np.array([0.5, 0.8, 0.3]), 'queen': np.array([0.45, 0.75, 0.35]), 'man': np.array([0.6, 0.7, 0.2]), 'woman': np.array([0.55, 0.65, 0.25])}
result = words['king'] - words['man'] + words['woman']
max_word = None
max_sim = -1
for word, vec in words.items():
sim = np.dot(result, vec) / (np.linalg.norm(result) * np.linalg.norm(vec))
if sim > max_sim:
max_word = word
print(max_word)
What is the main flaw?
medium
A. The variable max_sim is initialized incorrectly
B. Division by zero occurs due to zero vector norm
C. The dot product is computed without normalizing vectors
D. The code does not exclude the original words from similarity search
Solution
Step 1: Analyze the similarity search loop
The loop compares the result vector to all words including 'king', 'man', and 'woman' which are part of the calculation.
Step 2: Understand why this is problematic
Including original words can cause the highest similarity to be the input words themselves, which is usually unwanted and can cause misleading results.
Final Answer:
The code does not exclude the original words from similarity search -> Option D
Quick Check:
Exclude input words to avoid bias [OK]
Hint: Exclude input words from similarity search to avoid bias [OK]
Common Mistakes:
Assuming zero division error without checking norms
Thinking max_sim initialization causes error
Ignoring normalization in dot product
5. You want to find the word that fits the analogy: Paris is to France as Tokyo is to ? Using pre-trained word vectors, which approach is best to find the answer?
hard
A. Calculate vector: France - Tokyo + Paris, then find closest word vector
B. Calculate vector: Tokyo - Paris + France, then find closest word vector
C. Calculate vector: Paris + France - Tokyo, then find closest word vector
D. Calculate vector: Tokyo + Paris - France, then find closest word vector
Solution
Step 1: Understand analogy vector arithmetic
Analogies use the formula: word2 - word1 + word3 to find the missing word. Here, Paris is word1, France is word2, Tokyo is word3.
Step 2: Apply formula to this analogy
Calculate Tokyo - Paris + France to get the vector representing the answer.
Final Answer:
Calculate vector: Tokyo - Paris + France, then find closest word vector -> Option B
Quick Check:
Analogy vector = word3 - word1 + word2 [OK]
Hint: Use analogy formula: word3 - word1 + word2 [OK]