200 likes | 369 Views
Uppsala Chart Processor - UCP. icke-deterministisk chartparser procedurell formalism versioner UCP-1, UCP2 UCP3 (light). UCP-1, UCP2. lisp bearbetningsmöjligheter lexikonsökning analys i stavelser morfologisk analys syntaktisk analys. Referenser till UCP-1, UCP2.
E N D
Uppsala Chart Processor - UCP • icke-deterministisk chartparser • procedurell formalism • versioner • UCP-1, UCP2 • UCP3 (light) @ Anna Sågvall Hein 2005
UCP-1, UCP2 • lisp • bearbetningsmöjligheter • lexikonsökning • analys i stavelser • morfologisk analys • syntaktisk analys @ Anna Sågvall Hein 2005
Referenser till UCP-1, UCP2 Carlsson. M., 1982, UCP2 System Documentation, Center for Computational Linguistics, Uppsala University. Sågvall Hein, A., Sågvall Hein, A. (1980). An overview of the Uppsala chart parser version 1 (ucp-1), Technical Report UCDL-R- 80-1, Uppsala University, Center for Computational Linguistics. Sågvall Hein, A. (1983). A parser for Swedish, status report for Sve.Ucp, Technical Report UCDL-R-83-2, Uppsala University, Center for Computational Linguistics. Sågvall Hein, A., 1984, Regelanrop i en parser för svenska. I: Sågvall Hein, A. (red.) Föredrag från de Nordiska datalingvistikdagarna 1983. Technical Report UCDL-R-84-1, Uppsala University, Center for Computational Linguistics. pp. 187-199. @ Anna Sågvall Hein 2005
UCP3 – UCP light • standard C • syntaktisk analys • Weijnitz, P., 2002, Uppsala Chart Parser Light. Improving Efficiency in a Chart Parser. Master’s thesis in Computational Linguistics. Language Engineering Programme. Uppsala University @ Anna Sågvall Hein 2005
Chart • den centrala datastrukturen i en chartparser är en chart • en chart är en riktad graf som består av noder (vertices) och bågar (edges) • bågarna är aktiva eller passiva • de aktiva bågarna representerar regler och partiellt analyserade konstituenter • de passiva bågarna representerar kompletta analysresultat @ Anna Sågvall Hein 2005
Task • bearbetningen sker genom ett samspel mellan de aktiva och de passiva bågarna • när en aktiv båge träffar på en passiv så bildas ett bearbetningssteg, en task • bearbetningsstegen förs till en agenda (scheduling) • från agendan hämtas de för exekvering (selecting) • utförandet av ett bearbetningssteg leder vanligen till nya bågar och nya bågkonstellationer, som genererar nya bearbetningssteg • när agendan är uttömd är parsningen avslutad • resultatet av en komplett parsning representeras av en passiv båge från första till sista vertex @ Anna Sågvall Hein 2005
Bågar i UCP • alla bågar i en UCP-chart innehåller uppgift om • ursprungstask (Creator) • start- och slutvertex • passiva bågar innehåller en särdragsstruktur (Features) med ett topp-särdrag ’*’ • aktiva bågar innehåller en särdragsstruktur (Features) med ett topp-särdrag ’&’ • aktiva bågar innehåller en LR-Action (regelsekvens el. lexikonpointer) • en initial aktiv båge går från och till sig själv @ Anna Sågvall Hein 2005
Exempel på en aktiv båge • 1--7 Creator: 78 • Features: (& = (PHR.CAT = CL • TYPE = MAIN • MODE = DECL • NP = (START = 1 • END = 7 • PHR.CAT = NP • NUMB = SING • GENDER = UTR • CASE = BASIC • DEF = DEF • HEAD = (LEM = SOL.NN • WORD.CAT = NOUN)))) • LR-Action: <* PHR.CAT> = 'VP, <* INFF> = 'FIN, <& VP> :=: <*>, STORE, MAJORPROCESS(SENT); @ Anna Sågvall Hein 2005
Exempel på en passiv båge • 7--13 Creator: 112 • Features: (* = (START = 7 • END = 13 • PHR.CAT = VP • VERB.TYPE = MAIN • INFF = FIN • TENSE = PRES • DIAT = ACT • VERB = (WORD.CAT = VERB • LEM = SKINA.VB))) @ Anna Sågvall Hein 2005
Processkontroll • Bearbetningen i en chartparser styrs av • tillståndet i charten • principer för scheduling • principer för selection @ Anna Sågvall Hein 2005
Uppbyggnad av charten • UCP bygger en initial passiv chart av inputsträngen och lägger in en aktiv båge från och till startvertex. • Fortsatt uppbyggnad av charten styrs av regler i språkbeskrivningen: lexikon och grammatik @ Anna Sågvall Hein 2005
Den procedurala formalismens uppgift • bygga strukturbeskrivningar i form av särdragsstrukturer • införa nya bågar i charten och därmed föra bearbetningen framåt @ Anna Sågvall Hein 2005
Operatorerna • test och tilldelning av attribut och värden • kontroll • införa nya bågar i charten @ Anna Sågvall Hein 2005
Test och tilldelning • unifiering (’:=:’) • test på likhet (’=’) @ Anna Sågvall Hein 2005
Kontroll • sekvens (’,’) • oberoende disjunktion (’//’) • beroende disjunktion (’/’) • if … then … else • subregel(arg) @ Anna Sågvall Hein 2005
Nya aktiva bågar • process(arg) • startar en ny process i ändpunkten på den aktiva bågen i aktuell task • majorprocess(arg) • startar en ny process i startpunkten på den aktiva bågen i aktuell task • advance(arg) • för pågående process vidare genom att lägga in en ny aktiv båge från startpunkten i den aktiva bågen i aktull task till slutpunkten i den inaktiva bågen @ Anna Sågvall Hein 2005
Nya inaktiva bågar • store(arg) • lagrar resultatet av bearbetningen i aktuell task genom att lägga in en ny inaktiv båge från startpunkten i den aktiva bågen i till slutpunkten i den inaktiva bågen; ”konsumerar” den inaktiva bågen • minorstore(arg) • lagrar resultatet av bearbetningen i aktuell task genom att lägga in en ny inaktiv båge från startpunkten i den aktiva bågen till dess slutpunkt @ Anna Sågvall Hein 2005
Procedurella formalismer • fördelar • nackdelar @ Anna Sågvall Hein 2005
Föregångare till UCP • General Syntactic Processor, GSP (Kaplan) • Augmented Transition Network (Woods) • Reversible grammar (Kay) @ Anna Sågvall Hein 2005
Chomsky (1965) • baskomponent • djupstruktur • Han köpte en cykel i går • transformationskomponent • ytstruktur • I går köpte han en cykel @ Anna Sågvall Hein 2005