prezentacja PDF
Transkrypt
prezentacja PDF
Ograniczenie rozmiaru słownika uniwersalnych kodów gramatykowych Łukasz Dębowski [email protected] Instytut Podstaw Informatyki PAN Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Lingwistyczna motywacja problemu Rozpatrujemy teksty w języku naturalnym (np. w j. polskim): A — liczba różnych słów w tekście, N — długość tekstu w słowach. Wzór empiryczny („prawo Guirauda-Herdana-Heapsa”): A ∝ Nα , gdzie α waha się między 0.5 a 1 w zależności od zbioru tekstów. Władysław Kuraszkiewicz, Józef Łukaszewicz (1951), Pierre Guiraud (1954), Gustav Herdan (1964), H. S. Heaps (1978). Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Przełożenie na problem z teorii informacji Słowa w tekście to w znacznej części powtarzające się napisy: liczba różnych słów ⇒ liczba napisów powtarzających się. Modelowanie probabilistyczne tekstu wg hipotezy Hilberga (1990): tekst w języku naturalnym ⇒ tekst wylosowany z rozkładu stacjonarnego scharakteryzowanego parametrem globalnej zależności, którym jest informacja wzajemna. Problem Ograniczyć w terminach informacji wzajemnej oczekiwaną liczbę powtórzeń w tekście wylosowanym z rozkładu stacjonarnego. Metoda Wykorzystać problem najmniejszej gramatyki (CFG) dla tekstu. Wstęp Idea Kod uniwersalny Modelowanie języka 1 Wstęp 2 Zasadniczy pomysł 3 Komplikacje dla kodowania uniwersalnego 4 Związki z modelowaniem j. naturalnego 5 Bibliografia Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka 1 Wstęp 2 Zasadniczy pomysł 3 Komplikacje dla kodowania uniwersalnego 4 Związki z modelowaniem j. naturalnego 5 Bibliografia Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Gramatyka bezkontekstowa generująca jeden tekst G= A1 A2 A3 A4 A5 A6 A7 A8 A9 → → → → → → → → → A2 A2 A4 A9 A4 A3 A7 A5 A6 A9 A6 A3 A9 A7 A8 ,A5 Jeszcze raz A8 nam. Sto lat Niech żyje ! Sto lat! Sto lat! Niech żyje, żyje nam. Sto lat! Sto lat! Niech żyje, żyje nam. Jeszcze raz! Jeszcze raz! Niech żyje, żyje nam. Niech żyje nam. Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Rozmiar słownika i długość gramatyki Skrócony zapis A1 → A2 → G= ..., An → gramatyki: α1 , V[G] := n (rozmiar słownika), α2 , , P |G| := i |αi | (długość gramatyki). αn Symbol A1 ustalony jako symbol startowy. Najmniejsza gramatyka dla tekstu to G o najmniejszym |G|, generująca ten tekst jako jedyną produkcję. Moses Charikar, Eric Lehman, ..., Abhi Shelat (2005), Wojciech Rytter (2003), John C. Kieffer, Enhui Yang (2000). Wstęp Idea Kod uniwersalny Modelowanie języka Przybliżenie algorytmicznej informacji wzajemnej Minimalna transformacja gramatykowa: Γ : w ∈ X∗ → Γ(w), gdzie Γ(w) to najmniejsza gramatyka dla w. |Γ(w)| — przybliżenie złożoności algorytmicznej napisu w. Przybliżenie algorytmicznej informacji wzajemnej między u i v: |Γ(u)| + |Γ(v)| − |Γ(uv)| . | {z } nadwyżka długości gramatyki Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Ograniczenie rozmiaru słownika (Dębowski 2006) Dla minimalnej transformacji gramatykowej zachodzi nierówność: 0 ≤ |Γ(u)| + |Γ(v)| − |Γ(w)| ≤ V[Γ(w)]L(w), (1) gdzie w = uv zaś L(w) := max s,x,y,z∈X∗ : w=xsysz |s|, to długość najdłuższego powtórzenia w napisie w. W dalszej części interesować nas będą uogólnienia nierówności (1) w przypadku kompresji procesu stochastycznego. Wstęp Idea Kod uniwersalny Modelowanie języka 1 Wstęp 2 Zasadniczy pomysł 3 Komplikacje dla kodowania uniwersalnego 4 Związki z modelowaniem j. naturalnego 5 Bibliografia Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Stacjonarny proces stochastyczny Ciąg zmiennych losowych: (..., X−1 , X0 , X1 , X2 , ...), Xi : Ω → X. Rozkład prawdopodobieństwa niezmienniczy względem przesunięć: P(Xi+1 = x1 , Xi+2 = x2 , ..., Xi+n = xn ) = P(x1 x2 ...xn ), gdzie P : X∗ → R. Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Kody jednoznacznie dekodowalne Kod C : X∗ → X∗ nazywa się jednoznacznie dekodowalnym, gdy jego rozszerzenie (na skończone konkatenacje) C∗ : (X∗ )∗ 3 (u1 , ..., uk ) 7→ C(u1 )...C(un ) ∈ X∗ jest przekształceniem wzajemnie jednoznacznym. Kod jest j.d., jeżeli jest bezprzedrostkowy, tzn. żaden napis z jego obrazu nie jest przedrostkiem innego napisu z obrazu. Dla dowolnego j.d. kodu C i każdego rozkładu p-stwa P zachodzi X X P(u) |C(u)| ≥ H(n) := − P(u) log|X| P(u) (entropia). u∈X∗ n u∈Xn Wstęp Idea Kod uniwersalny Modelowanie języka Entropia a kodowanie arytmetyczne Dla każdego dyskretnego rozkładu p-stwa P : Xn → R istnieje bezprzedrostkowy kod C : Xn → X∗ taki, że l m |C(u)| = − log|X| P(u) + 1. Dla tegoż kodu mamy X 0≤ P(u) |C(u)| − H(n) ≤ 2. u∈Xn Kod j.d. nazywa się uniwersalnym, gdy asymptotycznie optymalnie kompresuje on dowolny proces stacjonarny. Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Kody uniwersalne Ponieważ H(n)/n jest nieujemne i maleje z n, istnieje granica h = lim H(n)/n n→∞ (intensywność entropii). Mówimy, że kod j.d. C jest uniwersalny, gdy spełnia X lim P(u) |C(u)| /n = h n→∞ u∈Xn dla dowolnego rozkładu stacjonarnego P. Przykładem kod uniwersalnego jest kod Lempela-Ziva. Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Informacja wzajemna (Dębowski 2006) E(n) = 2H(n) − H(2n) (entropia nadwyżkowa), X EC (n) = P(uv) [|C(u)| + |C(v)| − |C(uv)|] . {z } | n u,v∈X nadwyżka długości kodu Jeżeli C jest uniwersalny, to h i lim sup EC (n) − E(n) ≥ 0. n→∞ Jeśli C i C0 są uniwersalne oraz |C(·)| ≥ |C0 (·)|, to h i 0 lim sup EC (n) − EC (n) ≥ 0. n→∞ Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Transformacja gramatykowa a kod uniwersalny Nie istnieje kod uniwersalny o długości równej długości najmniejszej gramatyki dla napisu u, gdyż ta ma długość O(|u| / log |u|). Intuicja Nie można zakodować nieskończonej liczby symboli nieterminalnych za pomocą pojedynczych symboli (lub słów ustalonej długości) nad skończonym alfabetem. Mimo to istnieje kod uniwersalny, który koduje gramatykę minimalną w uogólnionym sensie, i którego nadwyżka długości jest mniejsza od iloczynu rozmiaru słownika i długości najdłuższego powtórzenia. Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Konstrukcja kodu B : G → X+ nazywam lokalnym koderem gramatykowym, gdy B(G) = BS (BN (G)), gdzie BN : G → ({0} ∪ N)∗ koduje gramatykę G = {A1 → α1 , A2 → α2 , ..., An → αn } jako ciąg liczb BN (G) = F1 (α1 )DF2 (α2 )D...DFn (αn )(D + 1), Fi (x) := x, x ∈ X = {0, 1, ..., D − 1} , Fi (Aj ) := D + 1 + j − i, Fi (βγ) = Fi (β)Fi (γ), zaś BS : ({0} ∪ N)∗ → X∗ spełnia BS (βγ) = BS (β)BS (γ). Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Uogólnienie minimalnej transformacji gramatykowej Dla kodera gramatykowego B, transformację gramatykową Γ oraz kod B(Γ(·)) nazywam B-minimalnymi, jeżeli |B(Γ(w))| ≤ |B(G)| dla każdej gramatyki G generującej słowo w. Twierdzenie (Dębowski 2007) Niech BS będzie koderem bezprzedrostkowym zaś |BS (·)| będzie funkcją rosnącą i spełnia lim sup |BS (n)|/ logD n = 1. n→∞ Jeżeli kod C jest BS (BN (·))-minimalny, to jest uniwersalny. Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Główne twierdzenie Twierdzenie (Dębowski 2007) Dla lokalnego kodera gramatykowego B = BS (BN (·)), oznaczmy Wm := max 0≤n≤D+2+m |BS (n)|. Jeżeli kod C = B(Γ(·)) jest B-minimalny, to |C(u)| + |C(v)| − |C(w)| ≤ W0 V[Γ(w)](1 + L(w)), gdzie w = uv dla u, v ∈ X+ . (— Tudzież kod ten ma kilka innych przyjemnych własności.) Wstęp Idea Kod uniwersalny Modelowanie języka 1 Wstęp 2 Zasadniczy pomysł 3 Komplikacje dla kodowania uniwersalnego 4 Związki z modelowaniem j. naturalnego 5 Bibliografia Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Entropia języka naturalnego Spróbujmy wyobrazić sobie proces tworzenia tekstów w języku naturalnym jako proces stacjonarny (Xk )k∈Z : Xi — pojedyncze litery tekstu (X skończone), (Xi )m≤i≤n — konkretne teksty tworzone przez ludzi. W oparciu o pomiary entropii warunkowej (Shannon 1950) sformułowano hipotezę (Hilberg 1990), że proces ten ma √ entropię nadwyżkową E(n) n. W. Hilberg, (1990). Frequenz, 44:243–248. Ł. Dębowski, (2006). On Hilberg’s law and its links with Guiraud’s law. Journal of Quantitative Linguistics, 13:81–109. Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Hipoteza Jeżeli tekst długości N liter opisuje w sposób niesprzeczny Nβ losowych niezależnych faktów o świecie, a proces generowania tekstu jest dostatecznie losowy, to tekst ten zawiera co najmniej Nβ / log N różnych słów (rozumianych jako symbole nieterminalne najkrótszej gramatyki). Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Pewien wyidealizowany proces stochastyczny Rozważmy proces (Xi )i∈Z o zmiennych losowych Xi := (Ki , ZKi ), gdzie niezależne procesy IID (Ki )i∈Z oraz (Zk )k∈N spełniają P(Ki = k) > 0 dla k ∈ N oraz P(Zk = z) = 21 dla z ∈ {0, 1}. Interpretacja quasi-lingwistyczna Proces (Xi )i∈Z jest ciągiem losowych stwierdzeń Xi niesprzecznie opisujących stan „wcześniej” wylosowanego obiektu (Zk )k∈N przyjmującego nieprzeliczalnie wiele wartości. Stwierdzenie Xi = (k, z) orzeka, że k-ty bit obiektu (Zk )k∈N ma wartość z, w taki sposób, że można ustalić zarówno k jak z. Dla stwierdzeń Xi = (k, z) i Xj = (k0 , z0 ) nie wiadomo, które bity opiszą i jakie wartości im przypiszą, ale jeżeli k = k0 , to z = z0 . Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Dolne ograniczenie entropii nadwyżkowej E(n) można ograniczyć przez liczbę bitów procesu (Zk )k∈N , które można przewidzieć dostatecznie dobrze na podstawie X1:n : k ∈ N : P fnk (Xi )1≤i≤n = Zk ≥ δ . HU δ (n) := Twierdzenie (Dębowski 2007) Dla HI (n) := I (Xi )1≤i≤n ; (Zk )k∈N mamy limn HI (n)/n = 0 oraz E(n) ≥ 2HI (n) − HI (2n), HI (n) ≥ HU δ (n) · log 2+δ log δ+(1−δ) log(1−δ) . log|X| β −1/β ), to Zatem jeżeli HU δ (n) ≥ B · n (np. dla P(Ki = k) ∼ k h i lim sup E(n) − B0 · nβ ≥ 0. n→∞ Wstęp Idea Kod uniwersalny Modelowanie języka Procesy nieprzeliczalnego opisu Twierdzenie z poprzedniego slajdu obowiązuje też dla p.n.o. Proces stacjonarny (Xi )i∈Z nazywam p.n.o., jeżeli istnieją zmienne (Zk )k∈N ∼ IID, P(Zk = z) = 1 2 dla z ∈ {0, 1}, i funkcje fnk : Xn → {0, 1} takie, że P fnk (Xi )j+1≤i≤j+n = Zk nie zależy od j ∈ Z, limn P fnk (Xi )j+1≤i≤j+n = Zk = 1. Są to procesy nieergodyczne. Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Procesy o skończonej energii Proces stacjonarny (Xi )i∈Z nazywa się p. o s.e., jeżeli P(uv)/P(u) ≤ K exp [−c |v|] , u, v ∈ X+ . Przykładem p. o s.e. jest ciąg zmiennych Xi ≡ Yi + Ui (mod D), gdzie proces (Yi )i∈Z jest ergodyczny zaś (Ui )i∈Z ∼ IID. Twierdzenie (Shields 1997) Jeżeli (Xi )i∈Z jest p. o s.e., to długość najdłuższego powtórzenia jest ograniczona nierównością lim inf K0 log n − L (Xi )1≤i≤n ≥ 0 prawie na pewno. n→∞ Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Składając wszystko razem Twierdzenie Jeżeli kod C = B(Γ(·)) jest B-minimalny dla lokalnego kodera B, zaś (Xi )i∈Z jest p. o s.e., to " # X E(n) P(w)V[Γ(w)] − 0 lim sup ≥ 0. K log n n→∞ n w∈X Jeżeli (Xi )i∈Z jest p.n.o. takim, że k ∈ N : P fnk (Xi )1≤i≤n = Zk ≥ δ ≥ B · nβ , to h i lim sup E(n) − B0 · nβ ≥ 0. n→∞ Niestety lim supn (an + bn ) ≥ lim supn an + lim inf n bn . Wstęp Idea Kod uniwersalny Modelowanie języka 1 Wstęp 2 Zasadniczy pomysł 3 Komplikacje dla kodowania uniwersalnego 4 Związki z modelowaniem j. naturalnego 5 Bibliografia Bibliografia Wstęp Idea Kod uniwersalny Modelowanie języka Bibliografia Moje prace Ł. Dębowski, (2007). On vocabulary size of grammar-based codes. http://xxx.lanl.gov/abs/cs.IT/0701047. (ISIT 2007, Nicea) Ł. Dębowski, (2006). Ergodic decomposition of excess entropy and conditional mutual information. Prace IPI PAN nr 993. Ł. Dębowski, (2006). On Hilberg’s law and its links with Guiraud’s law. Journal of Quantitative Linguistics, 13:81–109. www.ipipan.waw.pl/~ldebowsk