Łukasz Dębowski [email protected] ildebowsk/docs/seminaria/ppm_mutual_info.pdf · Tytuł Kod...

27
Uniwersalność kodu PPM i informacja wzajemna Lukasz Dębowski [email protected] Instytut Podstaw Informatyki Polskiej Akademii Nauk Seminarium ZAMS, 08.01.2018

Transcript of Łukasz Dębowski [email protected] ildebowsk/docs/seminaria/ppm_mutual_info.pdf · Tytuł Kod...

Uniwersalność kodu PPM i informacja wzajemna

Łukasz Dę[email protected]

iInstytut Podstaw InformatykiPolskiej Akademii Nauk

Seminarium ZAMS, 08.01.2018

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

1 Kod PPM

2 Słowa PPM i informacja wzajemna

3 Język naturalny

4 Konkluzje

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

1 Kod PPM

2 Słowa PPM i informacja wzajemna

3 Język naturalny

4 Konkluzje

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Model Markowa k-tego rzędu

Proces stochastyczny (Xi )∞i=1 na przestrzeni (Ω,J ,P).

Bloki zmiennych losowych X kj := (Xj ,Xj+1, ...,Xk).

(notacja z teorii informacji)

P-stwo warunkowe zależy tylko od k ostatnich zmiennych:

P(Xi |X i−11 ) = P(Xi |X i−1

i−k )

Estymacja największej wiarogodności

PMLE (Xi |X i−1i−k ) :=

N(X ii−k |xN1 )

N(X i−1i−k |x

N−11 )

,

gdzie— N(w |z) to liczba wystąpień podsłowa w w słowie z ,— ciąg xN1 = (x1, x2, ..., xN) to próba ucząca.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Kod PPM (Prediction by Partial Matching)

Cleary & Witten, 1984; Ryabko, 1984:

PPMk(xi |x i−11 ) :=

1

D, i ≤ k,

N(x ii−k |xi−11 ) + 1

N(x i−1i−k |xi−21 ) + D

, i > k,

PPMk(xn1 ) :=n∏i=1

PPMk(xi |x i−11 ),

PPM(xn1 ) :=6

π2

∞∑k=−1

PPMk(xn1 )

(k + 2)2.

Wielkość PPM(xn1 ) nazywa się p-stwem PPM napisu xn1 .

Zauważmy, że PPMk(xn1 ) = D−n dla k > L(xn1 ).

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Uniwersalność p-stwa PPM

Entropia bloku: H(X n1 ) := E

[− logP(X n

1 )]

Intensywność entropii: h := limn→∞

H(X n1 )

n

Twierdzenie

P-stwo PPM jest p-stwem uniwersalnym, tzn. zachodzi

E[− log PPM(X n

1 )]≥ H(X n

1 )

limn→∞

1

nE[− log PPM(X n

1 )]

= h

dla dowolnego procesu stacjonarnego (Xi )∞i=1 o skończ. alfabecie.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

P-stwo PPM a p-stwo PPMk

Mamy

− log PPMG (xn1 ) ≤ log PPM(xn1 )

≤ 1/2+ log(k + 2)− log PPMk(xn1 ),

gdzie rząd PPM G to najmniejsza liczba taka, że

− log PPMG (xn1 ) ≤ − log PPMk(xn1 ) dla każdego k ≥ −1.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Pomocnicze funkcje

log∗ n :=

0, n = 0

log n!− n log n + n, n ≥ 1

H(n1, ..., nl ) :=

∑l

i=1:ni>0ni log

(∑lj=1 nj

ni

), jeśli nj > 0 istnieje

0, inaczej

K(n1, ..., nl ) :=l∑

i=1

log∗ ni − log∗

(l∑

i=1

ni

)

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Dwa człony kodu PPMk

− log PPMk(xn1 ) = k logD − log PPM0k(xn1 )− log PPM1k(xn1 )

gdzie

− log PPM0k(xn1 ) :=∑u∈Xk

H(N(u1|xn1 ), ...,N(uD|xn1 )

)(warunkowa entropia rozkładu empirycznego)

− log PPM1k(xn1 ) :=∑u∈Xk

H(N(u|xn−11 ),D − 1

)−∑u∈Xk

K(N(u1|xn1 ), ...,N(uD|xn1 ),D − 1

)(poprawka na uniwersalność)

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Człon PPM0k

a entropia warunkowa

Entropia warunkowa: H(X1|X 0−k+1) = E[− logP(X1|X 0−k+1)

]Twierdzenie

Dla ergodycznego procesu stacjonarnego (Xi )∞i=1 o skończ. alf.,

limn→∞

1

n

[− log PPM0k(X n

1 )]

= H(Xk+1|X k1 ) pnp..

Dowód z twierdzenia ergodycznego.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Człon PPM1k

a subword complexity

Oznaczmy zbiór wszystkich podsłów długości m w napisie xn1 jako

V (m|xn1 ) :=ym1 : x t+m

t+1 = ym1 dla pewnego 0 ≤ t ≤ n −m.

Ogólnie zachodzi nierówność

cardV (k|xn1 ) ≤ minDk , n − k + 1

.

(subword complexity)

Twierdzenie

0 ≤ − log PPM1k(xn1 ) < D cardV (k|xn−11 ) (2+ log n)

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Uniwersalność raz jeszcze

Mamy

h := limn→∞

H(X n1 )

n= lim

k→∞H(Xk+1|X k

1 ).

Z poprzednich rozważań wynika następujący wynik:

Twierdzenie

Dla ergodycznego procesu stacjonarnego (Xi )∞i=1 o skończ. alf.,

lim supn→∞

1

n

[− log PPM(X n

1 )]≤ h pnp.,

− log PPM(X n1 ) ≤ 1/2+ n logD.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Wniosek z rozkładu ergodycznego i twierdzenia SMB

Twierdzenie

Niech Q będzie kodem, tzn. Q(xn1 ) ≥ 0 i∑

xn1Q(xn1 ) ≤ 1.

Jeżeli dla ergodycznych procesów stacjonarnych (Xi )∞i=1 o sk. alf.,

lim supn→∞

1

n

[− logQ(X n

1 )]≤ h pnp.,

− logQ(X n1 ) ≤ cn,

to dla dowolnego procesu stacjonarnego (Xi )∞i=1 o sk. alf.,

limn→∞

1

n

[− logQ(X n

1 )]

= hF pnp.,

limn→∞

1

nE[− logQ(X n

1 )]

= h.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

1 Kod PPM

2 Słowa PPM i informacja wzajemna

3 Język naturalny

4 Konkluzje

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Rząd PPM i słownik PPM

Rząd PPM G to najmniejsza liczba taka, że

− log PPMG (xn1 ) ≤ − log PPMk(xn1 ) dla każdego k ≥ −1.

Zbiór różnych słów PPM w napisie X n1 to zbiór wszystkich

podsłów długości G ,

VPPM(xn1 ) := V (G |xn1 ).

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Informacja wzajemna PPM i słowa PPM

IQ(u; v) := − logQ(u)− logQ(v) + logQ(uv)

Twierdzenie

IPPM0k(xn1 ; xn+m

n+1 ) ≤ 0

IPPM(xn1 ; xn+mn+1 ) ≤ 1+ 4 log

[GPPM(xn+m

1 ) + 2]

+[GPPM(xn+m

1 ) + 1]

logD

+ 2D cardVPPM(xn+m1 ) [2+ log(n + m)]

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Wykładnik Hilberga

Wykładnik Hilberga definiujemy jako

hilbn→∞

s(n) := lim supn→∞

log+ s(2n)

log 2n, log+ x =

log(x + 1), x ≥ 0,0, x < 0.

Na przykład hilbn→∞

nβ = β.

Twierdzenie

Niech J(n) := 2G(n)−G(2n). Jeżeli limn→∞G(n)/n = g, to

hilbn→∞

(G(n)− ng) ≤ hilbn→∞

J(n),

gdzie równość zachodzi, gdy J(n) ≥ 0.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Twierdzenie o słowach i informacji wzajemnej

Informacja wzajemna Shannona dla procesu stacjonarnego:

I (X n1 ;X 2nn+1) := H(X n

1 ) + H(X 2nn+1)− H(X 2n1 )

= 2H(X n1 )− H(X 2n1 )

Twierdzenie (informacja wzajemna i słowa PPM)

Dla dowolnego procesu stacjonarnego (Xi )∞i=1 o skończ. alfabecie

hilbn→∞

I (X n1 ;X 2nn+1) ≤ hilb

n→∞E IPPM(X n

1 ;X 2nn+1)

≤ hilbn→∞

E[GPPM(X n

1 ) + cardVPPM(X n1 )].

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

1 Kod PPM

2 Słowa PPM i informacja wzajemna

3 Język naturalny

4 Konkluzje

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Prawo Heapsa (liczba różnych słów ortograficznych)

1

10

100

1000

10000

100000

1x106

1 10 100 1000 10000 100000 1x106

num

ber

of w

ord

type

s V

number of word tokens N

Shakespearerandom permutation

Kuraszkiewicz i Łukaszewicz 1951; Herdan 1964; Heaps 1978:

V ∝ Nγ, γ < 1

V — liczba różnych słów w tekście (typów/types).N — liczba wszystkich słów tekście (okazów/tokens).

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Hipoteza Hilberga dla entropii Shannona (1990)

H(X ) := E [− logP(X )] H(X |Y ) := E [− logP(X |Y )]

H(Xn|X n−11 ) ≈ Bnβ−1 + h, β ≈ 1/2, n ≤ 100

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Prawa potęgowe dla entropii i informacji wzajemnej

Hipoteza Hilberga:

H(Xn|X n−11 ) ≈ Bnβ−1 + h

H(X n1 ) =

n∑i=1

H(Xi |X i−11 ) ≈ B ′nβ + hn

⇓I (X n1 ;X 2nn+1) ≈ B ′′nβ

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Rząd PPM na wykresie

-2

-1

0

1

2

3

1 10 100 1000 10000 100000 1x106 1x107

PP

M o

rder

input length [characters]

Shakespeare"unigram_ppm.txt"

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Moc słownika PPM na wykresie

1

10

100

1000

10000

100000

1 10 100 1000 10000 100000 1x106 1x107

card

inal

ity o

f the

PP

M v

ocab

ular

y

input length [characters]

Shakespearerandom permutation

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Wykładnik Hilberga dla mocy słownika PPM

Dla procesów Markowa k-tego rzędu nad skończonym alfabetem

limn→∞

GPPM(X n1 ) ≤ k, czyli hilb

n→∞cardVPPM(X n

1 ) = 0.

Dla języka naturalnego mamy prawdopodobnie

hilbn→∞

cardVPPM(X n1 ) = β, β ∈ (0, 1).

Czyli język naturalny nie jest procesem Markowa.

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

1 Kod PPM

2 Słowa PPM i informacja wzajemna

3 Język naturalny

4 Konkluzje

Tytuł Kod PPM Słowa PPM i MI Język naturalny Konkluzje

Konkluzje

Kod PPM jest praktycznym algorytmem kompresji danych, alema też ciekawe własności teoretyczne:

Może służyć jako test niemarkowskości procesustochastycznego.Odwołując się do niego można udowodnić twierdzenieShannona-McMillana-Breimana dla procesów nieergodycznychi asymptotycznie średnio stacjonarnych (AMS).

Możliwe jest, że język naturalny spełnia hipotezę Hilberga.