11 Probabilistic Context Free Grammars

Podobne dokumenty
Gramatyki wykorzystywane w analizie języka naturalnego

Języki formalne i automaty Ćwiczenia 2

JAO - Wprowadzenie do Gramatyk bezkontekstowych

JAO - lematy o pompowaniu dla jezykow bezkontekstowy

2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego

Programowanie w Logice Gramatyki metamorficzne. Przemysław Kobylański na podstawie [CM2003] i [SS1994]

Języki formalne i automaty Ćwiczenia 1

Gramatyka operatorowa

Matematyczne Podstawy Informatyki

Metody Kompilacji Wykład 8 Analiza Syntaktyczna cd. Włodzimierz Bielecki WI ZUT

Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka

Wprowadzenie do analizy składniowej. Bartosz Bogacki.

Gramatyki rekursywne

Języki formalne i automaty Ćwiczenia 3

Metody Kompilacji Wykład 3

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Metody Kompilacji Wykład 7 Analiza Syntaktyczna

0.1 Lewostronna rekurencja

GRAMATYKI BEZKONTEKSTOWE

Parsery wykorzystywane w analizie języka naturalnego

3.4. Przekształcenia gramatyk bezkontekstowych

Zadanie 1. Czy prawdziwa jest następująca implikacja? Jeśli L A jest językiem regularnym, to regularnym językiem jest też. A = (A, Q, q I, F, δ)

Hierarchia Chomsky ego Maszyna Turinga

Efektywna analiza składniowa GBK

Definiowanie języka przez wyrażenie regularne(wr)

JIP. Analiza składni, gramatyki

Analizator syntaktyczny

Języki formalne i automaty Ćwiczenia 8

Języki formalne i automaty Ćwiczenia 4

Metody Kompilacji Wykład 13

Teoretyczne podstawy informatyki. Wykład 12: Gramatyki. E. Richter-Was 1

JĘZYKIFORMALNE IMETODYKOMPILACJI

Poprawność semantyczna

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Algorytmy stochastyczne, wykład 05 Systemy Liendenmayera, modelowanie roślin

Języki i gramatyki formalne

Efektywny parsing języka naturalnego przy użyciu gramatyk probabilistycznych

Rozdział 2: Metoda największej wiarygodności i nieliniowa metoda najmniejszych kwadratów

Podstawy Informatyki Gramatyki formalne

Wstęp do programowania

Wykład 5. Jan Pustelnik

Analiza semantyczna. Gramatyka atrybutywna

Obliczenia inspirowane Naturą

Lingwistyka Matematyczna Języki formalne i gramatyki Analiza zdań

Języki, automaty i obliczenia

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Opis wzorców polegający na na wykorzystaniu modelu definicji rekurencyjnych, nazywamy gramatyką bezkontekstową (ang. contex-free grammar).

Gramatyka TAG dla języka polskiego

Wprowadzenie. Teoria automatów i języków formalnych. Literatura (1)

Języki formalne i automaty Ćwiczenia 9

Drzewa BST i AVL. Drzewa poszukiwań binarnych (BST)

Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu

Wykład 10. Translacja sterowana składnią

Wprowadzenie: języki, symbole, alfabety, łańcuchy Języki formalne i automaty. Literatura

Wysokość drzewa Głębokość węzła

Matematyczna wieża Babel. 3. Gramatyki o językach bezkontekstowych materiały do ćwiczeń

Matematyczne Podstawy Informatyki

ALGORYTMY I STRUKTURY DANYCH

Analiza metodą zstępującą. Bartosz Bogacki.

Gramatyki grafowe. Dla v V, ϕ(v) etykieta v. Klasa grafów nad Σ - G Σ.

JĘZYKI FORMALNE I METODY KOMPILACJI

Zadanie 1. Liczba szkód N w ciągu roku z pewnego ryzyka ma rozkład geometryczny: k =

Wprowadzenie do programowania języki i gramatyki formalne. dr hab. inż. Mikołaj Morzy

Podstawy Informatyki. Metody dostępu do danych

KODY SYMBOLI. Kod Shannona-Fano. Algorytm S-F. Przykład S-F

Analiza leksykalna 1. Teoria kompilacji. Dr inż. Janusz Majewski Katedra Informatyki

Uproszczony schemat działania kompilatora

Jaki język zrozumie automat?

Wykład X. Programowanie. dr inż. Janusz Słupik. Gliwice, Wydział Matematyki Stosowanej Politechniki Śląskiej. c Copyright 2016 Janusz Słupik

PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

Indukcja reguł gramatyki j. polskiego

Algorytmy zwiazane z gramatykami bezkontekstowymi

Pierścień wielomianów jednej zmiennej

Hierarchia Chomsky ego

Gramatyki (1-2) Definiowanie języków programowania. Piotr Chrząstowski-Wachjtel

Języki, automaty i obliczenia

Maksymalne powtórzenia w tekstach i zerowa intensywność entropii

Podstawy programowania 2. Temat: Drzewa binarne. Przygotował: mgr inż. Tomasz Michno

Semantyka i Weryfikacja Programów - Laboratorium 6

Logika Stosowana. Wykład 1 - Logika zdaniowa. Marcin Szczuka. Instytut Informatyki UW. Wykład monograficzny, semestr letni 2016/2017

Gramatyki regularne i automaty skoczone

MATEMATYKA DYSKRETNA, PODSTAWY LOGIKI I TEORII MNOGOŚCI

dr hab. Maciej Witek, prof. US MODELE UMYSŁU rok akademicki 2016/2017, semestr letni

1. Maszyna Turinga, gramatyki formalne i ONP

ALGORYTMY I STRUKTURY DANYCH

Sortowanie. Bartman Jacek Algorytmy i struktury

Wprowadzenie i pojęcia wstępne.

Metodologie programowania

Algorytmy mrówkowe. H. Bednarz. Wydział Informatyki Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Inteligentne systemy informatyczne

Wykład 2. Drzewa poszukiwań binarnych (BST)

wagi cyfry pozycje

(j, k) jeśli k j w przeciwnym przypadku.

Obliczenia na stosie. Wykład 9. Obliczenia na stosie. J. Cichoń, P. Kobylański Wstęp do Informatyki i Programowania 266 / 303

Języki formalne i automaty Ćwiczenia 7

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

Generatory analizatorów

Elementy kognitywistyki II: Sztuczna inteligencja. WYKŁAD IX: Agent przetwarza język naturalny

Modelowanie sieci złożonych

Języki programowania zasady ich tworzenia

Uproszczony schemat działania kompilatora

Transkrypt:

11 Probabilistic Context Free Grammars Ludzie piszą i mówią wiele rzeczy, a ich wypowiedzi mają zawsze jakąś określoną strukture i regularność. Celem jest znalezienie i wyizolowanie tego typu struktur. Syntaktyka pokazuje więcej niż tylko kolejność czy porządek słów w zdaniu, ukazuje jak grupy słów się łączą i jakie relacje wzajemne zachodzą między nimi. 11.1 PCFG Probabilistic Context Free Grammar są najprostrzymi i najbardziej naturalnymi modelami struktur drzewiastych. PCFG jest to gramatyka bezkontextowa (CFG) z dodanymi do reguł gramatycznych prawdopodobieństwami. Example: The velocity of the seismic waves rises to... PCFG Składa się z: zbioru znaków terminalnych: {w k }, k = 1,..., V zbioru znaków nieterminalnych: {N i }, i = 1,..., n ustalonego symbolu startowego: N 1 zbioru reguł {N i ς j }, gdzie ς j ciąg symboli terminalnych i nieterminalnych. P(N i ς j ) należy tutaj rozumieć jako prawdopodobieństwo warunkowe P(N i ς j N i ). Prawdopodobieństwa produkcji dołącza się w taki sposób, aby suma prawdopodobieństw reguł o tym samym poprzedniku wynosiła 1. i P (N i ς j N i ) = 1 j 1

Notacja {w 1,..., w m } - parsowane zdanie w ad - podłańcuch w a,..., w d N i ab N i - nieterminal dominujący nad podłańcuchem w a,..., w b yield(n j ) = w a,..., w b - poddrzewo z rootem N j dominującym tylko nad ciągiem w a,..., w b Prawdopodobieństwo drzewa parsingu Prawdopodobieństwo zdania P (w 1m ) = P (w 1m, t) = t P (t) {t:yield(t)=w 1m } gdzie t jest wyprowadzeniem zdania w 1m według reguł gramatyki G 2

Example: Przyjmując powyższą gramatykę zdanie [Astronomers saw stars with ears.] posiada dokładnie dwie poprawne metody parsowania. P(t 1 ) = 1.0 x 0.1 x 0.7 x 1.0 x 0.4 x 0.18 x 1.0 x 1.0 x 0.18 = 0.0009072 P(t 2 ) = 1.0 x 0.1 x 0.3 x 0.7 x 1.0 x 0.18 x 1.0 x 1.0 x 0.18 = 0.0006804 P(w 15 ) = P(t 1 ) + P(t 2 ) = 0.0015876 Założenia modelu Niezmienniczość miejsca Identyczne poddrzewa mają zawsze takie same prawdopodobieństwa niezależnie od tego w jakim miejscu znajdują się w drzewie syntaktycznym k P (N j k(k+c) ς) jest to samo 3

Bezkontekstowość Prawdopodobieństwo poddrzewa nie zależy od słów znajdujących się przed poddrzewem. P (N j kl ς slowa poza w k,..., w l ) = P (N j kl ς) Ancestor-free Zewnętrzne węzły poddrzewa nie mają wpływu na jego prawdopodobieństwo. Cechy PCFG P (N j kl ς ancestor nodes N j kl ) = P (N j kl ς) Podczas rozwijania gramatyk do dużych i urozmaiconych korpusów, gramatyki stają się bardzo niejednoznaczne. Wówczas PCFG dają pogląd na prawdopodobieństwo danego zdania. W przeciwieństwie do CFG PCFG może się uczyć. Odporny na błedy gramatyczne PCFG daje probabilistyczny model językowy języka angielskiego. W praktyce PCFG jest gorszym modelem dla języka angielskiego od modelu trigram Modele PCFG dopuszczają, żeby małe drzewa rozbioru były bardziej prawdopodobne Nieodpowiedni rozkład S rhubarbp (1/3) S SSP (2/3) rhubarb 1/3 rhubarb rhubarb 2/3x1/3x1/3 = 2/27 rhubarb rhubarb rhubarb (2/3) 2 x(1/3) 3 x2 = 8/243 P(L)=1/3 + 2/27 + 8/243 +... = 1/2 4

11.2 Zadania dla PCFG Nadanie prawdopodobieństwa każdemu zdaniu w 1m zgodnemu z gramatyką G P (w 1m G) Wyznacza najbardziej prawdopodobne drzewo rozbioru dla danego zdania. argmax t P (t w 1m, G) Zoptymalizowanie reguł danej gramatyki w celu maksymalizacji prawdopodobieństwa zdania Chomsky Normal Form N i N j N k N i w j argmax G P (w 1m G) dla j=1,...,n P (N j N r N s ) + r,s k P (N j w k ) = 1 Gramatyka regularna (PRG) N t w j N k N i w j PCFG i PRG vs HMM HMM - prawdopodobieństwo Stringu o określonej długości n w 1n P (w 1n ) = 1 PCFG i PRG - prawdopodobieństwo zbioru stringów należących do języka L generowanego przez gramatykę G P (w) = 1 w L 5

Example: P (John decide to bake a) Wysokie prawdopodobieństwo w HMM natomiast bardzo nieskie w PCFG i PRG, ponieważ nie jest to kompletne zdanie. Prawdopodobieństwo zewnętrzne Całkowite prawdopodobieństwo generowania ciągu słów poczynając od N 1 do N j pq i wszystkich słów poza w p,..., w q α j (p, q) = P (w 1(p 1), N 1 pq, w (q+1)m G) Prawdopodobieństwo wewnętrzne Całkowite prawdopodobieństwo generowania ciągu słów w p,..., w q wychodząc z nieterminala N j β j (p, q) = P (w pq N j pq, G) 11.3 Prawdopodobieństwo stringu Prawdopodobieństwo wewnętrzne Obliczanie prawdopodobieństwa stringu poprzez liczenie i sumowanie wszystkich prawdopodobieństw rozbioru gramatycznego jest nieefektywne. Efektywnym sposobem na liczenie prawdopodobieństwa jest tzw. algorytm wewnętrzny bazujący na prawdopodobieństwach wewnętrznych. P (w 1m G) = P (N 1 = w 1m G) = β 1 (1, m) 6

Przypadek podstawowy Szukamy β j (k, k) - prawdopodobieństwo reguły N j w k β j (k, k) = P (w k N j kk, G) = P (N j w k G) Indukcja Szukamy β j (p, q) dla p q j, 1 p < q m Example: β V P (2, 5) = P (V P V NP )β v (2, 2)β NP (3, 5)+P (V P V P P P )β v (2, 3)β NP (4, 5) 7

Prawdopodobieństwo zewnętrzne k 1 k m Przypadek podstawowy α 1 (1, m) = 1 α j (1, m) = 0 dla j 1 Indukcja Nieterminal N j pq może pojawić się po lewej jak i prawej stronie gałęzi węzłą rodzica. Sumujemy dwie możliwości przy założeniu, że w pierwszej sumie g j 8

Iloczyn prawdopodobieństwa wewnętrznego i zewnętrznego α j (p, q)β j (p, g) = P (w 1(p 1), Npq, j w (q+1)m G)P (w pq Npq, j G) = P (w 1m, Npq j G) Stąd P (w 1m, N pq G) = α j (p, q)β j (p, g) j 9

Viterbi Algorithm - Wyznaczanie najlepszego drzewa parsingu ϱ i (p, q) - największe wewnętrzne prawdopodobieństwo poddrzewa N i pq Krok. 1 - Inicjalizacja Krok. 2 - Indukcja ϱ i (p, p) = P (N i w p ) Krok. 3 - Odczytanie wyznaczonego drzewa Dla każdego nieterminala poczynając od N 1 1m rekurencyjnie czytamy Ψ i (p, q) = (j,k,r) i wyznaczamy gałęzie: left(&) = N j pr, right(&) = N k (r+1)q Training PCFG Szukamy gramatyki maksymalizującej prawdopodobieństwo danych treningowych. 11.4 Inside-Outside - problemy wolny - każda iteracja O(m 3 n 3 ), gdzie m = w i=1 m i, a n - liczbą nieterminali w gramatyce. problem z lokalnymi maximami - Charniak dla każdego testu otrzymywał różne maxima lokalne (algorytm jest bardzo wrażliwy na dane początkowe) potrzebne jest dużo więcej nieterminali, niż teoretycznie potrzebne do stworzenia dobrej gramatyki, aby otrzymać dobrą gramatyke do nauki. nie ma żadnych gwarancji, że nieterminale, których będzie się uczył algorytm będą miały pokrycie z nieterminalami używanymi podczas analizy językowej. 10