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 dependency parsing in natural language processing?
Dependency parsing is the process of analyzing the grammatical structure of a sentence by establishing relationships between "head" words and words that modify those heads, called "dependents." It helps understand how words connect to each other.
Click to reveal answer
beginner
What is a head word in dependency parsing?
A head word is the main word in a phrase or sentence that other words depend on. For example, in "eats an apple," "eats" is the head because "an" and "apple" depend on it.
Click to reveal answer
intermediate
What does a dependency relation represent?
A dependency relation shows the type of connection between a head word and its dependent, like subject, object, or modifier. It explains the role of the dependent word in the sentence.
Click to reveal answer
intermediate
How does dependency parsing differ from constituency parsing?
Dependency parsing focuses on word-to-word relationships, showing how words depend on each other. Constituency parsing breaks sentences into nested groups or phrases. Dependency parsing is often simpler and more direct for understanding sentence structure.
Click to reveal answer
advanced
Name a common algorithm used for dependency parsing.
The arc-standard and arc-eager algorithms are popular for dependency parsing. They build the dependency tree step-by-step by adding arcs between words.
Click to reveal answer
In dependency parsing, what does a 'dependent' word do?
AIt is the main word that others rely on
BIt modifies or depends on a head word
CIt forms a phrase with other words
DIt is always a noun
✗ Incorrect
A dependent word depends on a head word and modifies or relates to it.
Which of these is a typical dependency relation?
ASentence
BParagraph
CSubject
DChapter
✗ Incorrect
Subject is a common dependency relation showing the doer of an action.
What is the output of a dependency parser?
AA tree showing word dependencies
BA list of words only
CA summary of the text
DA translation of the sentence
✗ Incorrect
Dependency parsing produces a tree structure showing how words depend on each other.
Which parsing method focuses on phrases rather than word-to-word links?
ADependency parsing
BSemantic parsing
CLexical parsing
DConstituency parsing
✗ Incorrect
Constituency parsing breaks sentences into nested phrases.
Which algorithm is commonly used in dependency parsing?
AArc-standard
BK-means
CDecision tree
DNaive Bayes
✗ Incorrect
Arc-standard is a popular algorithm for building dependency trees.
Explain in your own words what dependency parsing is and why it is useful.
Think about how words in a sentence connect to each other.
You got /3 concepts.
Describe the difference between dependency parsing and constituency parsing.
One looks at connections between words, the other at groups of words.
You got /3 concepts.
Practice
(1/5)
1. What is the main purpose of dependency parsing in Natural Language Processing?
easy
A. To show how words in a sentence are connected
B. To translate sentences into another language
C. To count the number of words in a sentence
D. To generate new sentences automatically
Solution
Step 1: Understand dependency parsing
Dependency parsing analyzes sentence structure by showing relationships between words.
Step 2: Compare options
Only To show how words in a sentence are connected correctly describes this purpose; others describe different NLP tasks.
Final Answer:
To show how words in a sentence are connected -> Option A
Quick Check:
Dependency parsing = word connections [OK]
Hint: Dependency parsing = word connection map [OK]
Common Mistakes:
Confusing parsing with translation
Thinking it counts words only
Mixing with sentence generation
2. Which of the following is the correct way to access the dependency label of a token using spaCy in Python? doc = nlp('I love cats')
easy
A. doc[1].dep_
B. doc.dep_[1]
C. doc[1].dependency
D. doc.dep[1]
Solution
Step 1: Recall spaCy token attributes
In spaCy, each token has a dep_ attribute accessed by doc[index].dep_.
Step 2: Check options for correct syntax
Only doc[1].dep_ uses correct attribute and indexing syntax.
Final Answer:
doc[1].dep_ -> Option A
Quick Check:
Token dependency label = doc[index].dep_ [OK]
Hint: Use token.dep_ to get dependency label [OK]
Common Mistakes:
Using wrong attribute name like dep or dependency
Trying to index dep_ attribute
Confusing token and doc object
3. Given the code below, what will be the output?
import spacy
nlp = spacy.load('en_core_web_sm')
doc = nlp('She eats an apple')
for token in doc:
print(f'{token.text} -> {token.dep_}')
medium
A. She -> det
eats -> dobj
an -> nsubj
apple -> ROOT
B. She -> dobj
eats -> nsubj
an -> ROOT
apple -> det
C. She -> ROOT
eats -> nsubj
an -> dobj
apple -> det
D. She -> nsubj
eats -> ROOT
an -> det
apple -> dobj
Solution
Step 1: Understand dependency roles in sentence
In 'She eats an apple', 'eats' is the main verb (ROOT), 'She' is subject (nsubj), 'an' is determiner (det), 'apple' is direct object (dobj).
Step 2: Match roles to output
She -> nsubj
eats -> ROOT
an -> det
apple -> dobj correctly matches each word to its dependency label.
Final Answer:
She -> nsubj
eats -> ROOT
an -> det
apple -> dobj -> Option D
Quick Check:
Subject = nsubj, Verb = ROOT, Object = dobj [OK]
Hint: Main verb is ROOT; subject is nsubj; object is dobj [OK]
Common Mistakes:
Mixing subject and object labels
Confusing determiner with object
Assuming first word is ROOT
4. Identify the error in this spaCy dependency parsing code:
import spacy
nlp = spacy.load('en_core_web_sm')
doc = nlp('Dogs bark loudly')
for token in doc:
print(token.dep)
medium
A. Incorrect model name in spacy.load
B. doc should be a list, not a spaCy Doc object
C. Missing underscore in token.dep_ attribute
D. print statement syntax is wrong
Solution
Step 1: Check token attribute usage
spaCy tokens use dep_ (with underscore) to get dependency label as string; dep without underscore returns an integer ID.
Step 2: Verify code correctness
Code uses token.dep which prints integer IDs, not readable labels; likely intended to print labels, so underscore is missing.
Final Answer:
Missing underscore in token.dep_ attribute -> Option C
Quick Check:
Use token.dep_ for labels, not token.dep [OK]
Hint: Use token.dep_ (with underscore) for readable labels [OK]
Common Mistakes:
Using token.dep instead of token.dep_
Assuming doc is wrong type
Thinking print syntax is incorrect
5. You want to extract all verbs and their direct objects from a sentence using dependency parsing. Which approach is best?
hard
A. Use only token text without parsing dependencies
B. Find tokens with POS tag 'VERB' and check their children with dependency label 'dobj'
C. Extract tokens with POS tag 'NOUN' ignoring dependencies
D. Select tokens with dependency label 'nsubj' only
Solution
Step 1: Understand task requirements
We want verbs and their direct objects, so we need to find verbs and check which tokens depend on them as direct objects (dobj).
Step 2: Evaluate options
Find tokens with POS tag 'VERB' and check their children with dependency label 'dobj' correctly finds verbs and their dobj children. Others ignore dependencies or focus on subjects or nouns only.
Final Answer:
Find tokens with POS tag 'VERB' and check their children with dependency label 'dobj' -> Option B
Quick Check:
Verbs + dobj children = correct extraction [OK]
Hint: Look for verbs and their dobj children in dependency tree [OK]