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