17-Transition Based Dependency Parsing-13-09-2024
17-Transition Based Dependency Parsing-13-09-2024
Dependency Parsing
• Formalizing dependency trees
• Configuration
• Stack
• Input buffer of words
• Set of dependency relations
• Goal of parsing
• find a final configuration where
• all words accounted for
• Relations form dependency tree
Transition operators
• Transitions: produce a new • Start state
configuration given current • Stack initialized with ROOT node
configuration • Input buffer initialized with words
in sentence
• Dependency relation set = empty
• Parsing is the task of
• Finding a sequence of transitions
• That leads from start state to
• End state
desired goal state • Stack and word lists are empty
• Set of dependency relations = final
parse
Arc Standard Transition System
• Defines 3 transition operators [Covington, 2001; Nivre 2003]
• LEFT-ARC:
• create head-dependent rel. between word at top of stack and 2nd word (under
top)
• remove 2nd word from stack
• RIGHT-ARC:
• Create head-dependent rel. between word on 2nd word on stack and word on
top
• Remove word at top of stack
• SHIFT
• Remove word at head of input buffer
• Push it on the stack
Arc standard transition systems
• Preconditions
• ROOT cannot have incoming arcs
• LEFT-ARC cannot be applied when ROOT is the 2nd element in stack
• LEFT-ARC and RIGHT-ARC require 2 elements in stack to be applied
Transition-based Dependency Parser
• Assume an oracle
• Parsing complexity
• Linear in sentence
length!
• Greedy algorithm
• Unlike Viterbi for POS
tagging
Transition-Based Parsing Illustrated
Where to we get an oracle?
• Multiclass classification problem
• Input: current parsing state (e.g., current and previous configurations)
• Output: one transition among all possible transitions
• Q: size of output space?
• Given
• A current config with stack S, dependency relations Rc
• A reference parse (V,Rp)
• Do
Let’s try it out
Features
• Configuration consist of stack, buffer, current set of relations
• Typical features
• Features focus on top level of stack
• Use word forms, POS, and their location in stack and buffer
Features example
• Given configuration • Example of useful features
Dependency Parsing
• Formalizing dependency trees