INF2820 Datalingvistikk V2011 Jan Tore Lønning & Stephan Oepen CHARTPARSING (SEKSJ 13.4) FORMELLE EGENSKAPER VED SPRÅK (KAP. 16) 8. mars 2011 2 I dag Oppsummering fra sist: Dynamisk programmering CKY-algoritmen Chartparsing: Algoritmen(e) Bottom-up strategi Top-down strategi Formell språkteori Chomsky-hierarkiet Språk som ikke er kontekstfrie Er naturlige språk kontekstfrie? 8. mars 2011 3 Dynamic Programming DP search methods fill tables with partial results and thereby Avoid doing avoidable repeated work Solve exponential problems in polynomial time (well, no not really) Efficiently store ambiguous structures with shared sub-parts. Vi skal se på: CKY Chartparsing (Earleys algoritme svarer til en variant av chartparsing) 4 Example Example 5 6 1
CKY Algorithm Chart alternativ datastruktur (S, [0, 1]) (VP, [0,1]) (Det, [1,2]) (Nom, [2,3]) (N, [2,3]) (NP, [1, 3]) (S, [0,5]) S, VP, X2 NP S, VP, X2 Nom NP PP S, VP, V, Nom, N Det Nom, N P NP, PN 0 book 1 the 2 flight 3 through 4 Houston 5 7 8. mars 2011 8 Begrensninger i CKY 1. Grammatikken må være på CNF 2. Det foreslås strukturer som holder lokalt, men ikke globalt: Løsninger baserer seg på å kombinere TD og BU Hjelp for begge problemene å innføre dotted d items 8. mars 2011 9 I dag Oppsummering fra sist: Dynamisk programmering CKY-algoritmen Chartparsing: Algoritmen(e) Bottom-up strategi Top-down strategi Formell språkteori Chomsky-hierarkiet Språk som ikke er kontekstfrie Er naturlige språk kontekstfrie? 8. mars 2011 10 States/Locations Chart alternativ datastruktur NP Det Nom S VP [0,0] NP Det Nominal [1,2] VP V NP [0,3]. A VP is predicted at the start of the sentence An NP is in progress; the Det goes from 1 to 2 A VP has been found starting at 0 and ending at 3 11 Det NP Nom Nom PP PP P NP Nom, N P NP, PN 0 book 1 the 2 flight 3 throughh 4 Houston 5 NP Det Nom Nom Nom PP NP Det Nom Nom Nom PP PP P NP PP P NP Partielt snapshot 8. mars 2011 12 2
Fundamentalregelen NP Det Nom Nom Nom PP 0 book 1 the 2 flight 3 through 4 Houston 5 NP Det Nom Fra (A B, [i,k] ) + (B, [k, j] ) Kan vi lage (A B, [i,j] ) Chart-parsing To datastrukturer: Chart Agenda Hovedstruktur: Fjern en kant k fra agenda Hvis k ikke alt finnes i chartet: Legg k til chartet For alle aktuelle kanter m i chartet: Prøv å matche k mot m m/fundamentalregelen: Hvis de matcher, legg resultatet i agenda Gjenta til agenda er tom I tillegg må vi tenke på: Initialisering: for w ordet på plass n og alle leksikalske regler B w, for en B, skal (B w, [n-1,n] ) legges til agenda (/chart) på et tidspkt. Innfør aktive kanter: Legg de nødvendige aktive kanter på formen (B, [k,k]) til agenda. Hold styring på rekkefølge Ulike strategier for Rekkefølge Og dermed hvilke aktive kanter som er nødvendige for å få et fullstendig parse. 8. mars 2011 13 8. mars 2011 14 Bottom-up Make-predictions, fig. 13.17 Legg de nødvendige aktive kanter på formen (B, [k,k]) til agenda : Når inaktiv/komplett kant (B, [m, n] ) flyttes til chartet: Finn alle A, s.a. A B er en regel, og Legg kanten (A B, [m, n]) til agenda. (kunne alternativt lagt (A B, [m, m]) til agenda: Kan være hensiktsmessig Gjør sammenlikning med TD-strategi lettere) 8. mars 2011 15 8. mars 2011 16 Chart-algoritme, fig. 13.16 Top-down Legg de nødvendige aktive kanter på formen (B, [k,k]) til agenda (/chart) : Initialiser: Legg ( S, [0, 0]) i agenda Når aktiv/inkomplett kant (A B, [m, n] ) flyttes til chartet: Finn alle regler på formen (B ) for en eller annen, og legg kanten (B, [n, n]) til agenda. 8. mars 2011 17 8. mars 2011 18 3
Make-predictions, fig. 13.17 Eksempel Parse: gi jenta fisk med BU og TD-strategi S VP VP IV VP TV NP VP DTV NP NP NP N IV fisk sov TV fisk kjøp DTV gi N jenta fisk 8. mars 2011 19 8. mars 2011 20 Egenskaper Merk Unære regler Mer enn to symb. på høyreside Dette går fint Venstrerekursjon ikke noe problem Tomme prod. OK ved TD-strategi, Problem ved BU Earleys algoritme Som presentert av J&M Tilsvarer en chart-parser med: TD innføring av aktive/inkomplette kanter Streng venstre mot høyre Litt egen rutine for leksikalske oppslag Dermed behøver en bare bruke fundamentalregelen når en legger til inaktive/komplette kanter (og ser mot venstre) De aktive som ser mot høyre vil ikke se noen inaktive kanter Når en legger til aktive, må en lage nye aktive 8. mars 2011 21 8. mars 2011 22 Earleys algoritme Som presentert av J&M Fig. 13.13 har en løkke som begynner for each state in chart[i] do og som modifiserer chart[i] Dette kan kreve litt omskrivning ved programmering 8. mars 2011 23 I dag Oppsummering fra sist: Dynamisk programmering CKY-algoritmen Chartparsing: Algoritmen(e) Bottom-up strategi Top-down strategi Formell språkteori Chomsky-hierarkiet Språk som ikke er kontekstfrie Er naturlige språk kontekstfrie? 8. mars 2011 24 4
Figure 16.2 Figure 16.1 Er naturlige språk regulære? Jfr. forelesning 3 Pumpelemma for regulære språk Eks.: a n b n ikke regulært Matche ( og ) ikke regulært: ((( ) ( ))( )((( ) ( ))( ))( )) Regulært Ikke regulært 8. mars 2011 27 Kontekstfrie språk Ikke kontekstfrie: a n b n c n a m b n c m d n ww Noen fakta: Hvis L1 og L2 er kontekstfrie, behøver ikke L1 L2 være kontekstfritt. Hvis L1 er kontekstfritt og L2 er regulært, så må L1 L2 være kontekstfritt. Hvis L1 er kontekstfritt, så er f[l1] kontekstfritt. (Fins et liknende pumpelemma for CF-språk, men ikke ta detaljene her.) 8. mars 2011 28 Er naturlige språk kontekstfrie? Figure 16.5 En slik struktur kan avbildes på ww og kan derfor ikke være kontekstfri. Finnes slike strukturer i naturlig språk? 8. mars 2011 29 5
Sveitsertysk Argumentet Rekursivt: Viktig: Ordstilling Kasus Høytysk: wir dem Hans das Haus anstreichen halfen. 8. mars 2011 31 L2 (regulært) ST L2 F[ST L2] = a m b n c m d ner ikke kontekstfritt. Da kan ikke ST L2 være kontekstfritt. 8. mars 2011 32 Siden L2 er regulært og ST L2 ikke er CF, kan ikke ST være CF Er dette viktig? Viktig fordi Chomsky innførte CFG men argumenterte mot dem for naturlige språk (NL) og lagde andre typer grammatikker Men det har vist seg vanskelig å vise at NL ikke er kontekstfrie. Vi har gode parsingalgoritmer for CFG er Mindre viktig fordi Kraftigere grammatikkformalismer, som LFG og HPSG: Hensiktsmessige for å beskrive NL Langt oppe i Chomskyhierarkiet, men effektive algoritmer for å prosessere dem 8. mars 2011 33 6