280 likes | 441 Views
Semantic Role Labeling. Abdul- Lateef Yussiff 20-01-2011. Table of Contents. Introduction & motivation Definition Semantic Role Application Areas Available corpus SRL Tasks. Introduction & Motivation.
E N D
Semantic Role Labeling Abdul-LateefYussiff 20-01-2011
Table of Contents • Introduction & motivation • Definition Semantic Role • Application Areas • Available corpus • SRL Tasks
Introduction & Motivation • Information extraction and dialogue understanding systems are usually based on domain-specific frame-and-slot templates • For natural language understanding tasks to proceed beyond domain dependent system, semantic understanding systems is needed.
Introduction & Motivation • Since 1999 CoNLL has organized several shared tasks exploring many NLP problems. • This research proposal focuses on the problem studied in the CoNLL 2004 and 2005 shared tasks – Namely Semantic Role labeling (SRL).
Definition • A semantic role is the underlying relationships that a participant has with the main verb in a clause. [www.sil.org] • SRL is detecting basic event structures such as who did what to whom, when and where[IE view] • SRL is identifying the arguments of a given predicate and assign them semantic labels describing the roles they play in the predicate [Computational linguistic view]
CoNLL Shared tasks • SRL is the relationship that a syntactic constituent has with a predicate. • Core arguments: Agent, Patient, Instrument etc. • Adjunctive arguments: Locative, Temporal, Manner, Cause, etc. • [http://www.lsi.uoc.edu/~srlconll]
Example S (S (NP (NNP Mary)) (VP (VBD hit) (NP (NNP John))) (. .))) • Mary hit John • John was hit by Mary NP VP NNP NNP VBD hit John Mary (ROOT (S (NP (NNP John)) (VP (VBD was) (VP (VBN hit) (PP (IN by) (NP (NNP Mary))))) (. .)))
Fundamental tasks in NLP • Semantic Role labeling is an essential step towards the final goal of natural language understanding. • Several fundamental tasks in NLP are based on recognizing phrases or constituents. • Noun phrases, Chunking, clause identification, name entity identification Syntactic analysis, etc.
Semantic Role • A variety of semantic role labels have been proposed, common ones are: • Agent: Actor of an action • Patient: Entity affected by the action • Instrument: Tool used in performing action. • Beneficiary: Entity for whom action is performed • Source: Origin of the affected entity • Destination: Destination of the affected entity
Application Areas • Question Answering • “Who” questions usually use Agents • “What” question usually use Patients • “How” and “with what” questions usually use Instruments • “Where” questions frequently use Sources and Destinations. • “For whom” questions usually use Beneficiaries • “To whom” questions usually use Destinations • Machine Translation Generation • Semantic roles are usually expressed using particular, distinct syntactic constructions in different languages.
Syntactic cues • Semantic role is indicated by a particular syntactic position (e.g. object of a particular preposition). • Agent: subject • Patient: direct object • Instrument: object of “with” PP • Beneficiary: object of “for” PP • Source: object of “from” PP • Destination: object of “to” PP
NP VP V NP NP PP Det A N Det A N Det A N bit Prep NP big ε ε ε girl dog Adj A a The with the boy SRL with Parse Trees • Assume that a syntactic parse is available. • For each predicate (verb), label each node in the parse tree as either not-a-role or one of the possible semantic roles S
SRL Corpus • FrameNet: Developed at University of California, Berkeley. Based on notion of frames • VerbNet • PropBank: Developed at University of Pennsylvania. Based on Treebank • Annotated over 1M words of WSJ text • 43, 594 sentences • 3,324 unique roles • 262,281 role assignments
Example of propBank frameset <!DOCTYPE frameset SYSTEM "frameset.dtd"> <frameset> <predicate lemma="abandon"> <rolesetframnet="" id="abandon.01" name="leave behind" vncls="51.2"> <roles> <role descr="abandoner" f="" n="0"> <vnrolevncls="51.2" vntheta="theme"/> </role> <role descr="thing abandoned, left behind" f="" n="1"> <vnrolevncls="51.2" vntheta="source"/> </role> <role descr="attribute of arg1" f="" n="2"/> <note/> </roles> <example name="typical transitive" src="" type=""> <text>And they believe the Big Board, under Mr. Phelan, has abandoned their interest.</text> <arg f="" n="0">the Big Board</arg> <arg f="" n="m">under Mr. Phelan</arg> <rel f="">abandoned</rel> <arg f="" n="1">their interest</arg> <note/> </example> <example name="with attribute" src="" type=""> <text>John abandoned his pursuit of an Olympic gold medal as a waste of time.</text> <arg f="" n="0">John</arg> <rel f="">abandoned</rel> <arg f="" n="1">his pursuit of an Olympic gold medal</arg> <arg f="" n="2">as a waste of time.</arg> <note/> </example> Roleset indicates different senses of the verb
SRL TASKS • I am proposing a two tasks for SRL • Arguments identification: • Parse the sentence into syntactic constituents • Binary classification of predicates (verb) • Use a binary classification to determine whether a constituents span a boundary or not • Argument classification into Semantic roles. • Assign appropriate semantic role to the identified semantic argument • This is a clearly a multi-class classification
System Architecture Parser Sentence labeled with Semantic Roles Raw Sentence POS & Tree Output input Argument Identification Role Classification
Baseline Features for SRL [Gildea and Jurafsky, 2002 ] • Phrase type: the syntactic label of the candidate role (e.g. NP) • Parse tree path: the path in the parse tree between the predicate and the candidate role • Position of the phrase type relative to the predicate • voice of the predicate (active or passive) • Head word of the phrase type
Challenges Bell, based in Los Angeles, makes and distributes electronic, computer and building products. Iterator <Tree> iterator = t.iterator(); while (iterator.hasNext()){ Tree node = iterator.next(); if(node.value().equalsIgnoreCase("NP")) System.out.println(node.getLeaves()); }//end of while iterator [Bell, ,, based, in, Los, Angeles, ,] [Bell] [Los, Angeles] [electronic, ,, computer, and, building, products]
(ROOT (S (NP (NP (NNP Bell)) (, ,) (VP (VBN based) (PP (IN in) (NP (NNP Los) (NNP Angeles)))) (, ,)) (VP (VBZ makes) (CC and) (VBZ distributes) (NP (UCP (JJ electronic) (, ,) (NN computer) (CC and) (NN building)) (NNS products))) (. .)))
Baseline Research Work • Gildea and Jurafsky (2002) • Parse the training corpus using Collin’s parser • Match frame elements into constituents • Extract features from the parse tree • Train probabilistic model on the model • 82% accuracy for presegmented constituents • 65% precision and 61% recall for segmentation and identification
Machine learning approaches • Maximum entropy • SVM • Enhanced perceptron • Decision Trees • Nearest neighbor • CRF
References • Gildea, Daniel and Daniel Jurafsky. 2002. Automatic labeling of semantic roles. Computational Linguistics 28(3):245–288 • Gildea, Daniel and Palmer, Martha. The necessity of parsing for predicate argument recognition. Proceeding of the 40th Annual Meeting of ACL 2002. pp239.246 • HaoXiong, HaitaoMi, Yang Liu and Qun Liu. Forest-based Semantic Role Labeling. The Association of Advancement of AI ,2010. • Klenner Manfred, Extracting predicate structures from parse Trees • HaciogluKadri. Semantic role labeling Using dependency Trees • Marquez L, Carreras X., Litkowski K.C., Stevenson Suzanne. Semantic Role Labeling: An Introduction to special issue. Association for Computational Linguistics 2008. • Surdeanu M., Marquez L., Carreras X. Comas P. Combination Strategies for Semantic Role Labeling. Journal of AI Research 29:105-151
Question ? THANK YOU FOR YOUR TIME