Syntaktisk analys
Transcription
Syntaktisk analys
Yvonne Adesam Syntaktisk analys Syntaktisk analys Parsning Ambiguitet Utvärdering References Yvonne Adesam 2014 Outline Yvonne Adesam Syntaktisk analys Syntaktisk analys Parsning Ambiguitet Parsning Utvärdering References Ambiguitet Utvärdering Min bakgrund Yvonne Adesam Syntaktisk analys I Parsning Disputerade 2012 I Ambiguitet Utvärdering References I I Avhandling om att skapa högkvalitativa parallella trädbanker Flerspråkiga parallella trädbanken Smultron Forskare på Språkbanken I I Historiska resurser (MAÞiR 2014-2016) Högkvalitativ korpusannotering (Koala 2014-2016) Korpuslingvistik Yvonne Adesam Varför korpusar för språkforskning? Syntaktisk analys I Faktiska språkliga belägg Parsning I Storskaliga empiriska språkstudier Ambiguitet Utvärdering References Trädbanker A treebank is “a linguistically annotated corpus that includes some grammatical analysis beyond the part-of-speech level” (Nivre et al., 2005; Nivre, 2008). I Annotering hjälper oss vaska fram guldkornen I I utökar (bok, boken, böcker, böckerna, Bok, BOKEN etc.) begränsar (Caesar=subjekt + besegra) Vad är ett träd? Yvonne Adesam Syntaktisk analys Varje mening mappas till en graf som representerar dess hierarkiska syntaktiska struktur. Parsning S Ambiguitet SB Utvärdering HD MO MO PD AVP References MO NP HD CC AVP AVP NK HD En människa DT NN NP HD HD var väl ända någonting VBFIN AB AB PN CM NK HD mer än en maskin ? AB PR DT NN DL DT NNP IN NNP THE GARDEN OF EDEN NP Konstituenter och dependenser Yvonne Adesam I Konstituenter Syntaktisk analys I Parsning I I Ambiguitet I Utvärdering References I fraser strukturella kategorier möjligen funktionella kategorier orden byggklossar i större enheter Dependenser I I I I I relationer mellan huvuden funktionella kategorier syntaktiska funktioner möjligen strukturella kategorier (ordklasser) ords relation till varandra o make use ure 2, the corresponding dependency tree produced Konstituenter och dependenser versions of by P ENN 2M ALT. emantically SBARQ PRN of the artiS verting conYvonne SQ Adesam VP VP We then deSBJ SBAR SBJ CLR PRP WHADVP heSyntaktisk previous PP NP SBARQ ADVP NP analys NP mall experiParsning Why , they wonder 0 *T* , should it belong to the EC *T* ? new format Ambiguitet dependency Utvärdering Figure 1: A constituent tree from the Penn Treebank. wReferences represen. dency ased on the parse tree a uent’s chile toy gram- *T* *T* ROOT VMOD P SUB VMOD P P VMOD SUB PMOD VMOD NMOD Why , they wonder , should it belong to the EC ? Figure 2: Dependency tree by P ENN 2M ALT. Figurer från Johansson and Nugues (2007). The history of treebanks Yvonne Adesam Syntaktisk analys I I Penn Treebank (English; Phase 1: 1989-1992) Forerunners: I Parsning I Ambiguitet I Utvärdering I I References I Talbanken (Swedish; Lund 1970s) Ellegård (English; Gothenburg 1978) Tosca (English; Nijmegen 1980s) LOB (Lancaster-Oslo-Bergen) Treebank (Engl.; late 1980s) SynTag (Swedish; Gothenburg 1986-1989) Followers I I I I NEGRA / TIGER Treebanks (German; 1997-2000s) Prague Dependency Treebank (Czech; 2000s) Svensk trädbank (Swedish; 2007) Bulgarian, Danish, Dutch, French, Chinese, Japanese, Arab, Hebrew, Turkish . . . Penn treebank Penn Treebank Example from 1991 Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References ( bd0011sx .) ( (S (NP *) (VP Show (NP me) (NP (NP all) the nonstop flights (PP (PP from (NP Dallas)) (PP to (NP Denver))) (ADJP early (PP in (NP the morning))))) .) ) The Swedish Treebank I Yvonne Adesam I Developed in Uppsala and Växjö Harmonizing two resources: I Syntaktisk analys Parsning Ambiguitet Utvärdering I References Talbanken: Swedish written and transcribed spoken language from the 1970s, manually annotated with syntactic information according to a traditional Scandinavian analysis tradition (cf. Diderichsen’s field analysis) SUC (Stockholm Umeå Corpus), a morphosyntactically annotated (part-of-speech and lemma), balanced corpus of published Swedish written language from the 1990s I Talbanken annotated with SUC morphosyntactic in a semi-automatic process I Both Talbanken and SUC automatically syntactically annotated with phrase structure version of Talbanken’s original syntax analysis The Swedish Treebank Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Varför automatisk syntaktisk analys? Yvonne Adesam Syntaktisk analys Parsning I Ambiguitet I Utvärdering References Manuell annotering tidskrävande Vi vill ha stora mängder annoterad text I I I träningsmaterial för NLP-system möjliggör mer detaljerade sökningar grammatikforskning CFG Yvonne Adesam Context-free grammar Syntaktisk analys Parsning I Ambiguitet I Utvärdering References Formell grammatik Regler I I S→s G = (N, T , R, S) 1. 2. 3. 4. N: mängden icke-terminaler T : mängden terminaler R: relation från N till (N ∪ T )∗ (regler, produktioner) S: startsymbol, del av mängden N CFG Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Jag ser det glada barnet. CFG Yvonne Adesam Jag ser det glada barnet. Syntaktisk analys I pn → ’jag’ Parsning I vb → ’ser’ Ambiguitet I dt → ’det’ I adj → ’glada’ I nn → ’barnet’ Utvärdering References CFG Yvonne Adesam Jag ser det glada barnet. Syntaktisk analys I pn → ’jag’ Parsning I vb → ’ser’ Ambiguitet I dt → ’det’ I adj → ’glada’ I nn → ’barnet’ I S → NP VP I NP → pn | (dt) (adj)* nn I VP → vb (NP)* Utvärdering References CFG Jag ser att det glada barnet sjunger. Yvonne Adesam Syntaktisk analys I pn → ’jag’ Parsning I vb → ’ser’ Ambiguitet I dt → ’det’ I adj → ’glada’ I nn → ’barnet’ I S → NP VP I NP → pn | (dt) (adj)* nn I VP → vb (NP)* Utvärdering References Parsning Yvonne Adesam Syntaktisk analys Parsning Ambiguitet I Parsning: söka igenom alla möjliga träd för en given mening I För att söka igenom alla möjliga träd måste vi skapa dem Utvärdering References Parsers Yvonne Adesam Syntaktisk analys I Parser: program som tar sträng som input och återskapar strukturen i form av träd Ambiguitet I Utvärdering I Alla parsers läser input från vänster till höger Olika sätt att skapa trädstrukturen Parsning References I I bottom-up: börja med löven (kan ge träd utan toppnod S) top-down: börja med toppnoden (kan ge träd som inte motsvarar input) Dynamic Programming Yvonne Adesam Syntaktisk analys Parsning I Divide and conquer Lös ett problem genom att dela upp det i delproblem, lös varje delproblem och kombinera lösningarna. I Memo-isering Lös varje delproblem en gång, mellanlagra lösningen, återanvänd som dellösning i större problem. Ambiguitet Utvärdering References CYK Yvonne Adesam Syntaktisk analys Cocke-Younger-Kasami I Bottom-up för kontextfri grammatik I Regler maximalt binära: (Chomsky normal form!) Parsning Ambiguitet Utvärdering I References I I A → a eller A → BC Finns i många variationer... Skapa triangelformad parsningstabell I I I Varje cell [i,j] innehåller alla icke-terminaler för position i-j Börja med strängar av längd 1, sedan längd 2 osv. Hitta alla alternativ upp till toppnoden CYK Exempelgrammatik Yvonne Adesam Syntaktisk analys Parsning I I I I Ambiguitet Utvärdering References I I I I I I I I S → NP VP VP → V NP VP → VP PP NP → DT N NP → NP PP PP → P NP V → ’äter’ NP → ’flickan’ NP → ’strössel’ N → ’glass’ P → ’med’ DT → ’en’ Flickan äter en glass med strössel. CYK Yvonne Adesam Syntaktisk analys Flickan äter en glass med strössel [0,1] [0,2] [0,3] [0,4] [0,5] [0,6] [1,2] [1,3] [1,4] [1,5] [1,6] [2,3] [2,4] [2,5] [2,6] [3,4] [3,5] [3,6] [4,5] [4,6] Parsning Ambiguitet Utvärdering References [5,6] CYK Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Flickan NP [0,1] äter en glass med strössel [0,2] V [1,2] [0,3] [0,4] [0,5] [0,6] [1,3] DT [2,3] [1,4] [1,5] [1,6] [2,4] N [3,4] [2,5] [2,6] [3,5] P [4,5] [3,6] [4,6] NP [5,6] CYK Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Flickan NP [0,1] äter en glass med strössel [0,2] V [1,2] [0,3] [0,4] [0,5] [0,6] [1,3] DT [2,3] [1,4] NP [2,4] N [3,4] [1,5] [1,6] [2,5] [2,6] [3,5] P [4,5] [3,6] PP [4,6] NP [5,6] CYK Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Flickan NP [0,1] äter en [0,2] V [1,2] [0,3] [1,3] DT [2,3] glass S [0,4] VP [1,4] NP [2,4] N [3,4] med strössel [0,5] [0,6] [1,5] [1,6] NP [2,6] [2,5] [3,5] P [4,5] [3,6] PP [4,6] NP [5,6] CYK Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Flickan NP [0,1] äter en [0,2] V [1,2] [0,3] [1,3] DT [2,3] glass S [0,4] VP [1,4] NP [2,4] N [3,4] med strössel [0,5] [0,6] VP [1,6] NP [2,6] [1,5] [2,5] [3,5] P [4,5] [3,6] PP [4,6] NP [5,6] CYK Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Flickan NP [0,1] äter en [0,2] V [1,2] [0,3] [1,3] DT [2,3] glass S [0,4] VP [1,4] NP [2,4] N [3,4] med [0,5] [1,5] [2,5] [3,5] P [4,5] strössel S [0,6] VP [1,6] NP [2,6] [3,6] PP [4,6] NP [5,6] Earley Yvonne Adesam Syntaktisk analys CYK har nackdelar: I begränsad grammatik Ambiguitet I följer inte lingvistisk teori Utvärdering I använder inte top-down-information Parsning References Earley-algoritmen I har inte ovanstående nackdelar I men är komplicerad (framför allt med sannolikheter) Earley Yvonne Adesam Syntaktisk analys Parsning Parsning i ett steg vänster till höger I Börja med startsymbolen S I Skapa alla möjliga expansioner för den vänstraste icke-terminalen (predictor) I Om nästa led i regeln är en terminal, matcha mot input (scanner) I När regeln inte längre kan expanderas, fortsätt med nästa subträd (completer) I Delprocessade regler markeras med punkt A→a•b Ambiguitet Utvärdering References Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys I 1 prefer 2 a 3 morning 4 flight 5 S [0, 0] Parsning Ambiguitet Predict the rule S → • NP VP Utvärdering References Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys I 1 prefer 2 a 3 morning 4 flight 5 S → • NP VP Parsning NP S [0, 0] [0, 0] Ambiguitet Utvärdering References Predict the rule NP → • Pro Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. VP Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys Parsning I 1 prefer 2 a 3 morning 4 flight 5 S → • NP VP NP → • Pro NP [0, 0] Pro [0, 0] S [0, 0] Ambiguitet Utvärdering References Predict the rule Pro → • I Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. VP Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys Parsning I 1 prefer 2 a 3 morning 4 flight 5 S → • NP VP NP → • Pro NP [0, 0] Pro → • I Pro [0, 0] I [0, 0] S [0, 0] Ambiguitet Utvärdering References Scan this word Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. VP Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys Parsning I 1 prefer 2 a 3 morning 4 flight 5 S → • NP VP NP → • Pro NP [0, 0] Pro → • I Pro [0, 0] I [0, 1] S [0, 0] VP Ambiguitet Utvärdering References Update the dot Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys Parsning I 1 prefer 2 a 3 morning 4 flight 5 S → • NP VP NP → • Pro NP [0, 0] Pro → I • Pro [0, 1] I [0, 1] S [0, 0] VP Ambiguitet Utvärdering References The predicted rule is complete. Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys I 1 prefer 2 a 3 morning 4 flight 5 S → NP • VP Parsning NP [0, 1] Pro [0, 1] I [0, 1] S [0, 1] Ambiguitet Utvärdering References Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. VP Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys I 1 prefer 2 a 3 morning 4 flight 5 S → NP • VP S [0, 1] Parsning Ambiguitet Utvärdering References NP [0, 1] Pro [0, 1] I [0, 1] Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. VP [1, 1] Earley The Earley algorithm Example run Yvonne Adesam 0 Syntaktisk analys I 1 prefer 2 a 3 morning 4 flight 5 S → NP • VP S Update the dot [0, 5] Parsning Ambiguitet Utvärdering References NP [0, 1] Pro [0, 1] Verb [1, 2] I [0, 1] prefer [1, 2] VP [1, 5] NP Det a [2, 5] [2, 3] Nom [3, 5] [2, 3] Nom [3, 4] Noun [4, 5] Noun [3, 4] flight [4, 5] morning Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. [3, 4] Earley The Earley algorithm Example run Yvonne Adesam 0 I 1 prefer 2 a 3 morning 4 flight 5 Syntaktisk analys S [0, 5] Parsning Ambiguitet Utvärdering References NP [0, 1] Pro [0, 1] Verb [1, 2] I [0, 1] prefer [1, 2] VP [1, 5] NP Det a [2, 5] [2, 3] Nom [3, 5] [2, 3] Nom [3, 4] Noun [4, 5] Noun [3, 4] flight [4, 5] morning Montag, 3. Dezember 12 Exempel från Marco Kuhlmann, Uppsala. [3, 4] PCFG Yvonne Adesam Probabilistic context-free grammar Syntaktisk analys Parsning I Varje regel får en sannolikhet Ambiguitet I Sannolikheten för regler med samma vänstersida summeras till 1 I Sannolikheten för ett träd är produkten av sannolikheterna för de regler som använts I Varje del i trädet pekar till de delar som det byggdes av, för att minnas hur det mest sannolika trädet såg ut Utvärdering References Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References I Inkrementell: från vänster till höger i ett svep I Bottom-up Shift-reduce I I I I I Kö (’först in först ut’) Stack (’sist in först ut’) Shift: flytta ett ord från kö till stack Reduce: Flytta ett ord från stacken Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Exempel från Richard Johansson. S Q <D> Then we met the cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Shift S <D> Q Then we met the cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Shift S <D> Then Q we met the cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Shift S <D> Then we Q met the cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Arc S <D> Then Q met the we cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Arc S <D> Q met the Then we cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Arc S <D> met Then we Q the cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Shift S <D> met the Then we Q cat . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Arc S <D> met Then we Q cat the . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Arc Parsning Ambiguitet Utvärdering References <D> met Then we the S cat Q . Dependens (Nivre) Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Reduce S <D> met Utvärdering References Then we cat the Q . Dependens (Nivre) Yvonne Adesam Arc Syntaktisk analys Parsning Ambiguitet <D> met Utvärdering References Then we cat the Done! S . Q Ambiguitet Yvonne Adesam Syntaktisk analys Språket är flertydigt Parsning Ambiguitet Utvärdering I I Lexical ambiguity Structural ambiguity References I I I Attachment ambiguity Coordination ambiguity NP bracketing ambiguity Attachment ambiguity Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Jag såg mannen med kikaren. Coordination ambiguity Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Där dansade stora pojkar och flickor. Treebank Quality Yvonne Adesam Syntaktisk analys I Well-formedness I Consistency I Soundness Parsning Ambiguitet Utvärdering References Treebank Quality Yvonne Adesam Syntaktisk analys I Well-formedness Each token and each non-terminal node is part of a sentence-spanning tree, and has a label. I Consistency The same sequence (of tokens/part-of-speechs/constituents) is annotated the same way given the same context. I Soundness Conform to sound linguistic principles. Parsning Ambiguitet Utvärdering References Utvärdering av parsning Yvonne Adesam Syntaktisk analys Parsning I Frasstruktur Ambiguitet I Utvärdering I References I Parseval Leaf-ancestor Dependensstruktur I Attachment och accuracy Parseval Yvonne Adesam Syntaktisk analys Parsning I I Ambiguitet I Utvärdering References Beräknar precision och recall för konstituenter I correct items Precision: found found items found correct items Recall: correct items Labelled parseval I korrekt konstituent: dominerar samma terminaler med samma etiketter (POS och fras) Leaf-ancestor I Jämför ’lineage’, icke-terminalerna från varje ord till trädets rot Syntaktisk analys I Använder markörer för ytterkanten på fraser Parsning I Jämför med guldstandard via Levenshtein/edit distance I Fungerar inte för frasträd med korsande kanter Yvonne Adesam Ambiguitet Utvärdering The Multilingual Forest References R R P P w1 w2 w1 w2 w3 P P P P w3 ( ) R R R w1 ) w1 w2 w3 w2 P P P w3 ( R R R ) Figure 7.3: Example gold standard and automatically parsed trees and their LeafAncestor lineages. Dependensevaluering Yvonne Adesam Syntaktisk analys I LAS: labelled attachment score, % ord med rätt huvud och relation I UAS: unlabelled attachment score, % ord med rätt huvud I LAcc: labelled accuracy score, % ord med rätt relation Parsning Ambiguitet Utvärdering References Kan också användas för frasstruktur, men kräver konvertering. Why manual work? Yvonne Adesam Syntaktisk analys Accuracy of most annotation tools depend on I set of labels I training data I language Parsning Ambiguitet Utvärdering References Part-of-speech tagging: accuracy normally above 95-96%. Example: HunPoS 97% accuracy when trained on SUC (Megyesi, 2009) An error in every second sentence! Parsing: accuracy varies considerably across languages Example: CoNLL shared task 2007: LAS 84-90: Catalan, Chinese, English, Italian LAS 76-80: Arabic, Basque, Czech, Greek, Hungarian, Turkish Summary Yvonne Adesam Syntaktisk analys I Trädbanker är korpusar med grammatisk analys Ambiguitet I Stora textmängder kräver automatiska metoder Utvärdering I Parsning kan göras top-down eller bottom-up I Några algoritmer: CYK, Earley, Nivre I Utvärdering behövs Parsning References Referenser I Yvonne Adesam Syntaktisk analys Parsning Ambiguitet Utvärdering References Megyesi, B. (2009). The open source tagger HunPoS for Swedish. In Jokinen, K. and Bick, E., editors, Proceedings of the Nordic Conference on Computational Linguistics (Nodalida), volume 4 of NEALT Proceedings Series, pages 239–241, Odense, Denmark. Nivre, J. (2008). Treebanks (Article 13). In Lüdeling, A. and Kytö, M., editors, Corpus Linguistics. An International Handbook. Mouton de Gruyter. Nivre, J., de Smedt, K., and Volk, M. (2005). Treebanking in Northern Europe: A white paper. In Holmboe, H., editor, Nordisk Sprogteknologi. Årbog for Nordisk Sprogteknologisk Forskningsprogram 2000-2004. Museum Tusculanums Forlag, Copenhagen.