Teoria Informacji i Metody Kompresji Danych 1
Materiały wykładowe (fragmenty) 2
Robert Susmaga Instytut Informatyki ul. Piotrowo 2 Poznań kontakt mail owy Robert.Susmaga@CS.PUT.Poznan.PL kontakt osobisty Centrum Wykładowe, blok informatyki, pok. 7 3
Wyłączenie odpowiedzialności Prezentowane materiały, będące dodatkiem pomocniczym do wykładów, z konieczności fragmentarycznym i niedopracowanym, należy wykorzystywać z pełną świadomością faktu, że mogą nie być pozbawione przypadkowych błędów, braków, wypaczeń i przeinaczeń :-) Autor
... 5
Funkcja f(x) = x x problematyczna nazwa wykładnicza?... potęgowa?...... dziedzina x > 0: ok.! x = 0:?» 0 0 = 1 x < 0:???» ( 0.5) 0.5 =? (2 0.5 i)» ( 1) 1 = 1» ( 1.5) 1.5 =? ( (2/3) 1.5 i)» ( 2) 2 = 0.25»...
Funkcja f(x) = x x problematyczna pochodna wstępne przekształcenie funkcji f(x) = x x ln(f(x)) = ln(x x ) ln(f(x)) = x ln(x) e ln(f(x)) = e x ln(x) f(x) = e x ln(x) czyli f(x) = e g(x), gdzie g(x) = x ln(x) wtedy f (x) = (e g(x) ) = e g(x) g (x) = e g(x) g (x) = e g(x) (x ln(x)) = e x ln(x) (x ln(x))» ale (x ln(x)) = 1 ln(x) + x (1/x) = ln(x) + 1 ostatecznie f (x) = e x ln(x) (ln(x) + 1)
Funkcja f(x) = x x fundamentalne właściwości przebiegu dla x 0 dziedzina: [0,+ ) przeciwdziedzina: [(1/e) 1/e, + ) odwrotnie unimodalna*, minimum lokalne (1/e) 1/e w x = 1/e (1/e) 1/e 0.6922 1/e 0.3679 szybko (szybciej niż x!) rosnąca dla x > 1/e 1 1 = 1 2 2 = 4 3 3 = 27 4 4 = 256 5 5 = 3125 6 6 = 46656... * (klasyczna) unimodalność funkcji F([x 1,..., x i,..., x m ]) względem x i : F([x 1,..., x i,..., x m ]) jest rosnąca dla x i < x 0 i malejąca dla x i > x 0 * odwrotna unimodalność funkcji F(x): funkcja F(x) jest (klasycznie) unimodalna
Funkcja f(x) = x x wykres dla x 0
Funkcja g(x) = log 2 (f(x)) = log 2 (x x ) wykres dla x 0
... 11
Aksjomatyka rozkładu prawdopodobieństwa dyskretny rozkład prawdopodobieństwa w odróżnieniu od pojedynczego prawdopodobieństwa, które dotyczy jakiegoś jednego, wybranego zdarzenia dotyczy ustalonego zbioru rozłącznych i wyczerpujących zdarzeń tzn. stanowiących podział tzw. przestrzeni zdarzeń elementarnych i reprezentowany jest przez zestaw prawdopodobieństw
Aksjomatyka rozkładu prawdopodobieństwa w praktyce: wektor [p 1, p 2,..., p m ] m liczb rzeczywistych p 1, p 2,..., p m spełniających warunki nieujemność wszystkich poszczególnych elementów: i=1..m p i 0 suma wszystkich elementów równa 1: i=1..m p i = 1» konsekwencja: gdy istnieje tylko jedno takie prawdopodobieństwo (m = 1), to musi ono musi wynosić 1 (p 1 = 1) posiadających interpretacje probablistyczno-dziedzinowa: zestaw częstości występowania zdarzeń algebraiczno-geometryczna: zestaw współczynników kombinacji wypukłej
Aksjomatyka rozkładu prawdopodobieństwa przykładowy wektor [p 1, p 2,..., p m ] m liczb rzeczywistych p 1, p 2,..., p m dla m = 1: [1/1] dla m = 2: [1/2, 1/2] [1/3, 2/3], [1/4, 3/4],..., [0, 1] [2/3, 1/3], [3/4, 1/4],..., [1, 0] dla m = 3: [1/3, 1/3, 1/3] [0, 1/3, 2/3], [0, 1/4, 3/4],..., [0, 0, 1] [0, 2/3, 1/3], [0, 3/4, 1/4],..., [0, 1, 0] [1/3, 0, 2/3], [1/4, 0, 3/4],..., [0, 0, 1] [2/3, 0, 1/3], [3/4, 0, 1/4],..., [1, 0, 0] [1/3, 2/3, 0], [1/4, 3/4, 0],..., [0, 1, 0] [2/3, 1/3, 0], [3/4, 1/4, 0],..., [1, 0, 0] [1/3, 1/6, 3/6], [1/3, 1/12, 7/12],..., [1/3, 0, 2/3] [1/3, 3/6, 1/6], [1/3, 7/12, 1/12],..., [1/3, 2/3, 0]...
x y L x + y = L
x y L x + y = 1 gdy L = 1
x y L jeżeli x + y = L > 0, to x/l + y/l = L/L = 1 także gdy L 1 ( uznajemy L za 100% )
H a 90 o y x 90 o z 90 o x + y + z = H (twierdzenie Vivaniego)
H a 90 o y x 90 o z 90 o x + y + z = 1 gdy H = 1 (czyli: po odpowiednim dobraniu a)
H a 90 o y x 90 o z 90 o jeżeli x + y + z = H > 0, to x/h + y/h + z/h = H/H = 1 także gdy H 1 ( uznajemy H za 100% )
x + y + z + v = T > 0...... ( uznajemy T za 100% )
p i = 1
p i = 0.5
q i = p i /0.5: q i = (p i /0.5) = ( p i )/0.5 = 0.5/0/5 = 1
Uwaga na różnice w kolejności!
Rozkład prawdopodobieństw a prawdopodobieństwa warunkowe wektor liczb rzeczywistych, który nie stanowi rozkładu prawdopodobieństwa (z powodu niedotrzymania pewnego warunku) nadal wymagane są warunki nieujemność wszystkich poszczególnych elementów dodatniość sumy wszystkich elementów zachowany może nie być warunek suma wszystkich elementów równa 1» czyli: suma < 1 (albo suma > 1) interpretacja: częstości względne np.: 70, 100, 30 (suma: 200) np.: 0.1, 0.2, 0.3 (suma: 0.6)
Rozkład prawdopodobieństw a prawdopodobieństwa warunkowe Pytanie: jak przerobić powyższy wektor na wektor, który stanowi rozkład prawdopodobieństwa? Odpowiedź: podzielić przez sumę wszystkich elementów Interpretacja wyniku: powstałe prawdopodobieństwa są względne (formalna nazwa: warunkowe ) np.: 70/200, 100/200, 30/200 (suma: 1) np.: 0.1/06, 0.2/06, 0.3/06 (suma: 1)
... 31
Miara informacji Podsumowując: co mamy? (czyli: z czym startujemy?) I n = L(m,n) = n log P (m) [Hartley]
Miara informacji Pytanie: czy w L(m,n) = n log P (m) kryje się prawdopodobieństwo? Odpowiedź: tak Pytanie: gdzie? Odpowiedź: w funkcji log(m) Pytanie: WTF??? (tzn. w tej funkcji??? ) Odpowiedź: a jednak! Pytanie: jak??? Odpowiedź: ponieważ log P (m) = log P (1/m), a wobec (założonego) m 1 zachodzi 0 < 1/m 1, więc 1/m można traktować jak pewne prawdopodobieństwo Pytanie: czego? Odpowiedź: wystąpienia jednego znaku (dzięki przyjętemu założeniu, że wszystkie znaki są równie prawdopodobne)
... 34
Miara informacji Uogólnianie miary informacji ponieważ: informacja pełna (dla wszystkich znaków) to I n = L(m,n) = n log P (m) więc: informacja uśredniona po n znakach (dla jednego znaku) to I 1 = I n / n = n log P (m) / n = log P (m) czyli: zanegowany logarytm z prawdopodobieństwa wystąpienia jednego znaku zanegowany, ponieważ log P (m) = log P (1/m) = log P (p) interpretowany jako całość dla n = 1: I n = L(m,1) = 1 log P (m) = log P (m) średnia dla n > 1: I 1 = I n / n = L(m,n) / n = n log P (m) / n = log P (m)
Miara informacji Uogólnianie miary informacji obserwacja: gdyby zacząć definiowanie miary informacji od strony jednego znaku, czyli od I 1, to jej uogólnienie na n znaków (realizowane jako przemnożenie przez n) doprowadziłoby do otrzymania I n (ponieważ I 1 = I 1 / n, więc I n = n I 1 )
Miara informacji Pytanie: czy proces uogólniania można kontynuować, rozciągając go na prawdopodobieństwa różnych znaków? Odpowiedź: jeżeli prawdopodobieństwa te są znacząco różne (od siebie), to nawet trzeba!
... 38
Funkcja informacyjna: wprowadzenie niech i P>1 (x) = x log P (x) dla P > 1 uwagi instancja funkcji postaci i(x) = ±x log P (x) dla x (0, ) przy P (0,1) (1, )
Funkcja informacyjna: wprowadzenie fundamentalne właściwości przebiegu i P>1 (x) = x log P (x) dziedzina: (0, ) przeciwdziedzina: (, log P (e)/e)] unimodalna, maksimum: log P (e)/e w x = 1/e czyli f(1/e) = log P (e)/e
Funkcja informacyjna: wprowadzenie wykres i P>1 (x) = x log P (x) dla P = 2
A przy okazji... pamiętacie? Funkcja f(x) = x x wykres dla x 0
A przy okazji... pamiętacie? Funkcja g(x) = log 2 (f(x)) = log 2 (x x ) wykres dla x 0
A przy okazji... pamiętacie? Funkcja h(x) = g(x) = log 2 (x x ) (oczywiście h(x) = x log 2 (x)) wykres dla x 0
Funkcja informacyjna: wprowadzenie dla x [0,1] i P > 1 funkcję informacyjną, oznaczenie I(x), definiujemy jako uwagi I(x) = 0 dla x = 0 I(x) = i P>1 (x) dla x > 0 (formalnie) prostsze sformułowanie: I(a) = lim x a+ i P>1 (x) sformułowanie to działa, ponieważ lim x 0+ x log(x) = 0, a jednocześnie i P>1 (x) jest funkcją ciągłą dla x > 0, co oznacza, że lim x a f(x) = f(a) = lim x a+ f(x), czyli: dla a > 0 wartość I(a) wyliczamy jako lim x a+ x log(x) = a log(a)» w praktyce: a log(a) dla a = 0 wartość I(a) wyliczamy jako lim x 0+ x log(x) = 0» w praktyce: 0
Funkcja informacyjna: wprowadzenie fundamentalne właściwości przebiegu I(x) dla P > 1 dziedzina: [0, 1] przeciwdziedzina: [0, log P (e)/e)] unimodalna, maksimum: log P (e)/e w x = 1/e czyli f(1/e) = log P (e)/e
Funkcja informacyjna: wprowadzenie wykres I(x) dla P = 2 1/e = 0.3679..., log P (2)/e = 0.5307...
Funkcja informacyjna: wprowadzenie wykres I(x) dla P = e 1/e = 0.3679..., log P (e)/e = 0.3679...
Funkcja informacyjna: wprowadzenie wykres I(x) dla P = 10 1/e = 0.3679..., log P (2)/e = 0.1598...
Funkcja informacyjna: właściwości (zestawienie) I(x) 0 I(0) = I(1) = 0 min I(x) = 0 argmin I(x) = {0, 1} max I(x) = log P (e)/e argmax I(x) = {1/e} I(1/e) = log P (e)/e implikowane przez powyższe
Funkcja informacyjna: właściwości I(x) 0 uwagi uzasadnienie ponieważ x (0,1] log P (x) 0, więc x (0,1] log P (x) 0 zatem x (0,1] x log P (x) 0 jednocześnie, dla x = 0: I(x) = 0 0 wniosek: x [0,1] I(x) 0
Funkcja informacyjna: właściwości I(0) = I(1) = 0 uwagi uzasadnienie I(0) = 0 (z definicji) I(1) = 1 log P (1) = 1 0 = 0 wniosek: I(0) = I(1) = 0
Funkcja informacyjna: właściwości min I(x) = 0 uwagi uzasadnienie zachodzi x [0,1] I(x) 0 oraz I(0) = I(1) = 0 wniosek: min I(x) = 0
Funkcja informacyjna: właściwości argmin I(x) = {0, 1} uwagi uzasadnienie I (x) = 0 (log P (x) + log P (e)) = 0 log P (x) + log P (e) = 0 log P (x) = log P (e) P log P(x) = P log P(e) x = P log P(e) = 1/P log P(e) = 1/e jedyny punkt krytyczny funkcji I(x) w przedziale [0,1] przypada w 1/e, ekstrema mogą więc leżeć tylko w 1/e lub na końcach przedziału [0,1] ale I(0) = 0, I(1/e) = 1/e log P (1/e) = 1/e log P (e) = log P (e)/e > 0, I(1) = 0 ponieważ I(x) 0 a I(0) = I(1) = 0, więc minima funkcji leżą w 0 i 1 wniosek: argmin I(x) = {0, 1}
Funkcja informacyjna: właściwości max I(x) = log P (e)/e, argmax I(x) = {1/e} uwagi uzasadnienie (powyższa) analiza punktow krytycznych funkcji wykazuje, że funkcja ma potencjalne maksimum w 1/e I (x) = log P (e)/x I (1/e) = log P (e)/(1/e) = e log P (e) < 0 wynika z tego, że w 1/e znajduje się maksimum funkcji wniosek: max I(x) = log P (e)/e, argmax I(x) = {1/e}
Funkcja informacyjna: właściwości I(1/e) = log P (e)/e uwagi uzasadnienie I(1/e) = 1/e log P (1/e) = 1/e log P (e) = log P (e)/e wniosek: I(1/e) = log P (e)/e
... 57
Miara informacji Uogólnianie miary informacji zmienna X o dziedzinie {x 1, x 2,..., x m }, gdzie m 1 P(X = x i ) = p i i=1..m p i 0 w praktyce: i=1..m p i > 0 (x i występuje co najmniej raz) (jeżeli p i = 0, to za dziedzinę X można uznać {x 1,..., x i 1, x i+1,..., x m }) i=1..m p i = 1
Miara informacji Uogólnianie miary informacji m w wyrażeniu log P (m) reprezentowało właściwie wektor prawdopodobieństw [p 1, p 2,..., p m ], w których (jak dotąd) p i = p = 1/m (tzn. p 1 = p = 1/m, p 2 = p = 1/m,..., p m = p = 1/m), czyli dla m = 1: [1/1] dla m = 2: [1/2, 1/2] dla m = 3: [1/3, 1/3, 1/3] dla m = 4: [1/4, 1/4, 1/4, 1/4]...
Miara informacji Uogólnianie miary informacji należy teraz rozważyć różne p i (tzn. p 1, p 2,..., p m ), założenie: p i > 0 wtedy mamy też różne log P (p i ) (tzn. log P (p 1 ), log P (p 2 ),..., log P (p m )) powstały problem: jakim wyrażeniem W([p 1, p 2,..., p m ]) zastąpić log P (m) we wzorach I n = L(m,n) = n log P (m) I 1 = I n / n = L(m,n) / n = n log P (m) / n = log P (m) wiadomo jednocześnie, że log P (m) = log P (1/m) inaczej: jak uogólnić (jedno) p = 1/m na (wiele) (różnych) p 1, p 2,..., p m? ewentualnie: jak uogólnić (jedno) log P (1/m) na (wiele) (różnych) log P (p 1 ), log P (p 2 ),..., log P (p m )? aby utworzyć nowe wzory H n =...? H 1 =...
Miara informacji Uogólnianie miary informacji wymagane właściwości (niekoniecznie niezależne od siebie) W([p 1, p 2,..., p m ]) 0 (implikowane przez właściwości L(m,n), zgodnie z którymi L(m,n) 0) W([p 1, p 2,..., p m ]) słabo rosnące względem m dla wszystkich p i = 1/m, przy czym dla skrajnej wartości m (czyli dla m = 1), wyrażenie jest zerowe; konkretnie W([p 1 ]) W([1]) = 0 (zależność i=1..m p i = 1 implikuje p 1 = 1 dla m = 1) (implikowane przez właściwości L(m,n), zgodnie z którymi L([1],n) L(1,n) = 0)
Miara informacji Uogólnianie miary informacji wymagane właściwości (niekoniecznie niezależne od siebie) W([p 1, p 2,..., p m ]) = W([q 1,..., q k ]) + W([r 1,..., r l ]) dla każdego p i = 1/m, q i = 1/k, r i = 1/l przy m = k l, (implikowane przez właściwości L(m,n), zgodnie z którymi L(k l,n) = L(k,n)+ L(l,n))
Miara informacji Uogólnianie miary informacji wymagane właściwości (niekoniecznie niezależne od siebie) W([p 1, p 2,..., p m ]) symetryczne* W([p 1, p 2,..., p m ]) ciągłe ze względu na każde p i lim pk 0W([p 1,..., p k 1, p k, p k+1,..., p m ]) = W([p 1,..., p k 1, p k+1,..., p m ]) lub (nawet) W([p 1,..., p k 1, p k, p k+1,..., p m ]) = W([p 1,..., p k 1, p k+1,..., p m ]) dla p k = 0 * mowa o symetriach funkcji wieloargumentowych
Miara informacji Uogólnianie miary informacji wymagane właściwości (niekoniecznie niezależne od siebie) W([p 1, p 2,..., p m ]) unimodalne* względem każdego p i, z maksimum dla p 1 = p 2 =... = p m = 1/m **W([p 1, p 2,..., p m ]) = 1 dla m = 2 i dla p 1 = p 2 =... = p m = 1/m czyli W([1/2, 1/2]) = 1 * (klasyczna) unimodalność funkcji F([x 1,..., x i,..., x m ]) względem x i : F([x 1,..., x i,..., x m ]) jest rosnąca dla x i < x 0 i malejąca dla x i > x 0 ** ta właściwość dobiera jedynie wielkość generowanych wartości; zasadniczo można wymagać jej już od funkcji L(m,n) (w postaci L(2,1) = 1 ); wtedy W([1/2, 1/2]) = 1 byłoby oczywiście implikowane przez właściwości L(m,n)
Miara informacji Uogólnianie miary informacji wymagane właściwości (niekoniecznie niezależne od siebie) W([p 1, p 2,..., p m ]) uwzględniające rozdział wektora rozkładu prawdopodobieństwa; konkretnie: W([p 1,..., p k, p k+1,..., p m ]) = W([p L, p P ]) + + p L W([p 1,..., p k ]/p L ) + + p P W([p k+1,..., p m ]/p P ) gdzie: p L = i=1..k p i, wymagany warunek: p L > 0 (spełniony dzięki zał.: p i > 0) p P = i=k+1..m p i, wymagany warunek: p P > 0 (spełniony dzięki zał.: p i > 0) (w każdym przypadku p L + p P = i=1..k p i + i=k+1..m p i = i=1..m p i = 1)
... 66
Miara informacji Uogólnianie miary informacji przykładowa ilustracja ostatniej właściwości wektor rozkładu v = [p 1, p 2,..., p 5 ] = [0.10, 0.20, 0.30, 0.15, 0.25] ( i=1..5 p i = 1.0) suma równa jeden! należy rozdzielić na (pod)wektory l (lewy) i p (prawy) wynik granica: między indeksami 2 i 3 l 0 = [p 1, p 2 ] = [0.10, 0.20] (p L = i=1..2 p i = 0.3) suma różna od jeden! p 0 = [p 3, p 4, p 5 ] = [0.30, 0.15, 0.25] (p p = i=3..5 p i = 0.7) suma różna od jeden! wymagana korekta: aby wektory te mogły nadal reprezentować prawdopodobieństwa, ich wartości muszą być zmodyfikowane w sposób, który doprowadzi do tego, że ich sumy będą wynosić jeden jak to zrobić?
Miara informacji Uogólnianie miary informacji przykładowa ilustracja ostatniej właściwości propozycja: podzielić każdy z powstałych wektorów przez jego sumę l = l 0 / p L = [0.10, 0.20] / 0.3 = [0.33..., 0.66...] ( = 1.0) suma równa jeden! p = p 0 / p P = [0.30, 0.15, 0.25] / 0.7 = [0.42..., 0.21..., 0.36...] ( = 1.0) suma równa jeden! wniosek: stworzone wektory reprezentują rozkłady prawdopodobieństwa interpretacja operacji: powstały prawdopodobieństwa warunkowe
Miara informacji Uogólnianie miary informacji przykładowa ilustracja ostatniej właściwości ostateczny wynik ( i=1..2 p i = 0.3) ( i=3..5 p i = 0.7) v = [p 1, p 2,..., p 5 ] = [0.10, 0.20, 0.30, 0.15, 0.25] ( i=1..5 p i = 1.0) p L = 0.3, l = [0.33..., 0.66...] ( = 1.0) p P = 0.7, p = [0.42..., 0.21..., 0.36...] ( = 1.0)
Miara informacji Uogólnianie miary informacji przykładowa ilustracja ostatniej właściwości oczekujemy więc, że w tym przypadku wyrażenie W będzie spełniało W([0.1,0.2,0.30,0.15,0.25]) = W([0.3, 0.7]) + + 0.3 W([0.33...,0.66...]) + + 0.7 W([0.4...,0.21...,0.36...]) (a w ogólności) W([p 1,..., p k, p k+1,..., p m ]) = W([p L, p P ]) + + p L W([p 1,..., p k ]/p L ) + + p P W([p k+1,..., p m ]/p P )
... 71
Miara informacji Uogólnianie miary informacji niech W([p 1, p 2,..., p m ]) = log P (( i=1..m p i ) / m) P > 1, zwykłe uśrednienie p i wtedy H n = n (W([p 1, p 2,..., p m ])) = n ( log P (( i=1..m p i ) / m)) = = n ( log P (1/m)) = n log P (m) = I n ponieważ, z definicji, i=1..m p i = 1 problem to już było! formalnie: W([p 1, p 2,..., p m ]) jest niezależne od p 1, p 2,..., p m a jedynie od ich sumy, wynoszącej jednak, z definicji, 1
Miara informacji Uogólnianie miary informacji niech W([p 1, p 2,..., p m ]) = log P ( i=1..m w i p i ) P > 1, ważone (wagami są w i ) uśrednienie p i wtedy H n = n (W([p 1, p 2,..., p m ])) = n ( log P ( i=1..m w i p i )) problem...
Miara informacji Uogólnianie miary informacji niech W([p 1, p 2,..., p m ]) = log P ( i=1..m p i p i ) P > 1, ważone (wagami są p i ) uśrednienie p i wtedy H n = n (W([p 1, p 2,..., p m ])) = n ( log P ( i=1..m p i p i )) problem...
Miara informacji Uogólnianie miary informacji niech W([p 1, p 2,..., p m ]) = ( i=1..m log P (p i )) / m P > 1, zwykłe uśrednienie log P (p i ) wtedy H n = n (W([p 1, p 2,..., p m ])) = n ( ( i=1..m log P (p i )) / m) problem...
Miara informacji Uogólnianie miary informacji niech W([p 1, p 2,..., p m ]) = i=1..m p i log P (p i ) ważone (wagami są p i ) uśrednienie log P (p i ) wtedy H n = n ( i=1..m p i log P (p i )) właściwość 1 zapewniona... właściwość 2 zapewniona......... właściwość 8 zapewniona...
Miara informacji Uogólnianie miary informacji W([p 1, p 2,..., p m ]) = i=1..m p i log P (p i ) wtedy ważone (wagami są p i ) uśrednienie log P (p i ) H n = n ( i=1..m p i log P (p i )) konsekwentnie H 1 = H 0 / n = n ( i=1..m p i log P (p i )) / n = i=1..m p i log P (p i ) miara informacji ciągu n-elementowego (różne prawdopodobieństwa) za jednostkę tej miary uznaje się podstawę P logarytmu dla P = 2: bit... zastosowania (w ramach teorii informacji) zwyczajowo przyjmuje się...
Miara informacji Uogólnianie miary informacji funkcja* i=1..m p i log P (p i ) przy P > 1 [Shannon] ma już swoją nazwę (entropia) i oznaczenie (H) H H 1 = i=1..m p i log P (p i ) przy P > 1 także podstawowy składnik tej funkcji, czyli p i log P (p i ), ma swoją nazwę (funkcja informacyjna) i oznaczenie (I) I(x) = x log P (x) przy P > 1 (czyli p i log P (p i ) dla x = p i ) czyli: H = i=1..m I(p i ) wtedy H n = n H 1 n H założenie: H 1 H, stanowiące przybliżenie log P (p) = log P (m) (występującego we wzorach na I n i I 1 ) jest takie samo dla kolejnych znakow (inaczej: znaki pochodzą ze źródła o tych samych parametrach) * można wykazać, że funkcja postaci F([x 1,..., x i,..., x m ],C,P) = C i=1..m p i log P (p i ) jest jedyną funkcją posiadającą wymieniane właściwości; H F([x 1,..., x i,..., x m ],C,P) jest po prostu jej konkretną instancją (dla wybranych stałych C > 0 i P > 1)
Miara informacji Francois Bavaud Information Theory, Relative Entropy and Statistics Formal Theories of Information, Giovanni Sommaruga (red.) (s. 54, wypowiedź C. Shannona) -------------------------------------------------------------------------------------------- Moje najgłębsze zatroskanie budziła nazwa. Myślałem o nazwie informacja, ale to słowo jest nadużywane, więc zdecydowałem się na nazwę niepewność. Gdy omawiałem tę sprawę z Johnem von Neumannem, wpadł on na lepszy pomysł. Von Neumann powiedział mi: powinieneś to nazwać entropią z dwóch powodów. Po pierwsze, twoja funkcja niepewności jest używana w statystycznej mechanice pod tą nazwą, wiec ona ma już nazwę. Po drugie zaś, co zresztą jest ważniejsze, nikt właściwie nie wie, czym tak naprawdę jest entropia, wiec zawsze będziesz miał przewagę w dyskusji. -------------------------------------------------------------------------------------------- 79
Miara informacji Multimedialny słownik PWN wyrazy obce entropia -pii, ż, blm 1.fiz. «w termodynamice statystycznej i teorii informacji: miara nieokreśloności i stopnia nieuporządkowania elementów i stanów znajdujących się w pewnym zbiorze» 2.fiz. «w termodynamice: jedna z funkcji stanu, określająca kierunek przebiegu zjawisk związanych z przemianami i przepływem energii» 3. przen. «chaos, bezład» <od gr. entropē zwrócenie się, obrót > 80
... 81
Entropia: wprowadzenie H([x 1, x 2,..., x m ]) = i=1..m x i log(x i ) = i=1..m I(x i ) uwagi jeżeli i=1..m x i = 1, to H([x 1, x 2,..., x m ]) = i=1..m I(x i ) funkcja o pełnej liczbie zmiennych» m może być wyrażane jako H([x 1, x 2,..., x m 1 ]) = i=1..m 1 I(x i ) + I(1 i=1..m 1 x i ) funkcja o zmniejszonej (o jeden) liczbie zmiennych» m 1 niezależnych zamiast» m wszystkich (czyli takich, które nie są niezależne) właściwe traktowanie entropii jako funkcji o zmniejszonej liczbie zmiennych jest szczególnie istotne w przypadku wykonywania pewnych potencjalnie wrażliwych pod tym względem operacji, np. różniczkowania (czy, chociażby, tworzenia wykresów)
Entropia: wprowadzenie fundamentalne właściwości przebiegu H([x]) = x log P (x) (1 x) log P (1 x) m = 2 (pełna liczba) dziedzina: [0,1] przeciwdziedzina: [0, log P (m)] unimodalna, maksimum: log P (m) w x = 1/m czyli f(1/m) = log P (m)
Entropia: wprowadzenie wykres H([x]) = x log P (x) (1 x) log P (1 x) dla P = 2
Entropia: wprowadzenie wykres H([x]) = x log P (x) (1 x) log P (1 x) dla P = e
Entropia: wprowadzenie wykres H([x]) = x log P (x) (1 x) log P (1 x) dla P = 10
Entropia: wprowadzenie fundamentalne właściwości przebiegu H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) m = 3 (pełna liczba) dziedzina: [0,1] przeciwdziedzina: [0, log P (m)] unimodalna, maksimum: log P (m) w x = 1/m czyli f(1/m) = log P (m)
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = 2
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = 2
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = 2
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = e
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = e
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = 10
Entropia: wprowadzenie wykres H([x 1,x 2 ]) = x 1 log P (x 1 ) x 2 log P (x 2 ) (1 x 1 x 2 ) log P (1 x 1 x 2 ) dla P = 10
... 95
A przy okazji... pamiętacie? Wobec faktu, że informacja informuje, tzn. odpowiada na konkretne, znane pytanie zadaniem miary informacji nie jest charakteryzowanie wyłącznie objętości składających się na nią danych, lecz także ich przydatności *, rozumianej jako trudność pytania, na które te dane niosą odpowiedź, realizowanej następująco : nisko oceniamy informacje trywialne / spodziewane / bardzo oczywiste / bardzo prawdopodobne / łatwo zgadywalne / przewidywalne wysoko oceniamy informacje nietrywialne / niespodziewane / mało oczywiste / mało prawdopodobne / trudno zgadywalne / nieprzewidywalne wysoka wartość miary = wysoki poziom nieprzewidywalności * ze słowem objętość lepiej od przydatność komponuje się słowo złożoność, ale (niestety) złożoność implikuje (potencjalnie) złożoną strukturę, o której tu akurat nie ma mowy (dlatego zostajemy przy przydatność )
O czym informuje entropia? entropia mierzy ilość informacji entropia (H n, H 1 ) a miara Hartleya (I n, I 1 ) uwaga: nie mylić I n i I 1 z I(x), kora występuje we wzorze na H n i H 1 wysoka entropia wysoka nieprzewidywalność
... 98
Odebrano przekaz 1010101010. Pytanie: Ile informacji zawiera ten przekaz? Odpowiedź: Nie wiadomo. Pytanie: A czy można to jakoś oszacować? Odpowiedź: Można. Pytanie: Jak? Odpowiedź: Np. wykorzystując miarę Hartleya. Albo Shannona.
Odebrano przekaz 1010101010. Pytanie: Ile informacji zawiera ten przekaz? Odpowiedź: oszacowanie wykorzystujące miarę Hartleya wzór Hartleya (dla P = 2) I n = L(m,n) = n log 2 (m) [bitów] wymagane m: liczność alfabetu (nieznana) n: liczba przekazanych znaków (znana: n = 10) obejście problemu nieznanego m: wśród przekazanych znaków występują jedynie (różne) 2 znaki, więc można przyjąć, że m = 2 wtedy I n = L(m,n) = L(2,10) = 10 log 2 (2) = 10 1 = 10 [bitów]
Odebrano przekaz 1010101010. Pytanie: A ile informacji zawiera (średnio) jeden znak przekazu? Odpowiedź: oszacowanie wykorzystujące miarę Hartleya informacja w całym przekazie I n = L(m,n) = L(2,10) = 10 log 2 (2) = 10 1 = 10 [bitów] wtedy I 1 = I n / n = 10 / 10 = 1 [bit]
Odebrano (inny) przekaz 0101010101. Pytanie: Ile informacji zawiera ten przekaz? Odpowiedź: oszacowanie wykorzystujące miarę Hartleya wzór Hartleya (dla P = 2) I n = L(m,n) = n log 2 (m) [bitów] wymagane m: liczność alfabetu (nieznana) n: liczba przekazanych znaków (znana: n = 10) obejście problemu nieznanego m: wśród przekazanych znaków występują jedynie (różne) 2 znaki, więc można przyjąć, że m = 2 wtedy I n = L(m,n) = L(2,10) = 10 log 2 (2) = 10 1 = 10 [bitów]
Odebrano (inny) przekaz 0101010101. Pytanie: A ile informacji zawiera (średnio) jeden znak przekazu? Odpowiedź: oszacowanie wykorzystujące miarę Hartleya informacja w całym przekazie I n = L(m,n) = L(2,10) = 10 log 2 (2) = 10 1 = 10 [bitów] wtedy I 1 = I n / n = 10 / 10 = 1 [bit]
Odebrano przekaz 1010101010. Pytanie: Ile informacji zawiera ten przekaz? Odpowiedź: oszacowanie wykorzystujące miarę Shannona wzór Shannona (dla P = 2) H n = n ( i=1..m p i log 2 (p i )) wymagane p 1, p 2,..., p m : parametry (prawdopodobieństwa) rozkładu (nieznane) n: liczba przekazanych znaków (znana: n = 10) obejście problemu nieznanych p 1, p 2,..., p m : wśród przekazanych znaków występują jedynie (różne) 2 znaki, a do tego równie często, więc można przyjąć, że m = 2, a p 1 = p 2 = 1/2 wtedy H n = n ( i=1..m p i log 2 (p i )) = 10 ( 1/2 log 2 (1/2) 1/2 log 2 (1/2)) = = 10 ( 1 log 2 (1/2)) = 10 ( log 2 (1/2)) = 10 log 2 (2) = 10 1 = 10 [bitów]
Odebrano przekaz 1010101010. Pytanie: A ile informacji zawiera (średnio) jeden znak przekazu? Odpowiedź: oszacowanie wykorzystujące miarę Shannona informacja w całym przekazie H n = n ( i=1..m p i log 2 (p i )) = 10 ( 1/2 log 2 (1/2) 1/2 log 2 (1/2)) = = 10 ( 1 log 2 (1/2)) = 10 ( log 2 (1/2)) = 10 log 2 (2) = 10 1 = 10 [bitów] wtedy H 1 = H n / n = 10 / 10 = 1 [bit]
Odebrano (inny) przekaz 0101010101. Pytanie: Ile informacji zawiera ten przekaz? Odpowiedź: oszacowanie wykorzystujące miarę Shannona wzór Shannona (dla P = 2) H n = n ( i=1..m p i log 2 (p i )) wymagane p 1, p 2,..., p m : parametry (prawdopodobieństwa) rozkładu (nieznane) n: liczba przekazanych znaków (znana: n = 10) obejście problemu nieznanych p 1, p 2,..., p m : wśród przekazanych znaków występują jedynie (różne) 2 znaki, a do tego równie często, więc można przyjąć, że m = 2, a p 1 = p 2 = 1/2 wtedy H n = n ( i=1..m p i log 2 (p i )) = 10 ( 1/2 log 2 (1/2) 1/2 log 2 (1/2)) = = 10 ( 1 log 2 (1/2)) = 10 ( log 2 (1/2)) = 10 log 2 (2) = 10 1 = 10 [bitów]
Odebrano (inny) przekaz 0101010101. Pytanie: A ile informacji zawiera (średnio) jeden znak przekazu? Odpowiedź: oszacowanie wykorzystujące miarę Shannona informacja w całym przekazie H n = n ( i=1..m p i log 2 (p i )) = 10 ( 1/2 log 2 (1/2) 1/2 log 2 (1/2)) = = 10 ( 1 log 2 (1/2)) = 10 ( log 2 (1/2)) = 10 log 2 (2) = 10 1 = 10 [bitów] wtedy H 1 = H n / n = 10 / 10 = 1 [bit]
Odebrano przekaz złożony z 20 znaków alfabetu {0,1}. Pytanie: Ile informacji zawiera cały przekaz? Odpowiedź: Zgodnie z miarą Hartleya (P = 2): 20 log 2 (2) [bitów] Pytanie: A zgodnie z miarą Shannona? Odpowiedź: Nie wiadomo. Pytanie: A czy można to jakoś oszacować? Odpowiedź: Można.
Odebrano przekaz złożony z 20 znaków alfabetu {0,1}. Pytanie: Ile informacji zawiera cały przekaz? Odpowiedź: oszacowanie wykorzystujące miarę Shannona wzór Shannona (dla P = 2) H n = n ( i=1..m p i log 2 (p i )) wymagane m = 2, p 1, p 2 : parametry (prawdopodobieństwa) rozkładu (nieznane) n: liczba przekazanych znaków (znana: n = 20)
Odebrano przekaz złożony z 20 znaków alfabetu {0,1}. Pytanie: Ile informacji zawiera cały przekaz? Odpowiedź: oszacowanie wykorzystujące miarę Shannona obejście problemu nieznanych p 1, p 2 : przyjęcie, że p 1 = 1/2, p 2 = 1/2, wtedy H n = n ( i=1..m p i log 2 (p i )) = 20 ( 1/2 log 2 (1/2) 1/2 log 2 (1/2)) = = 20 ( 1 log 2 (1/2)) = 20 ( log 2 (1/2)) = 20 log 2 (2) = 20 1 = 20 [bitów] przyjęcie, że p 1 = 1/4, p 2 = 3/4, wtedy... H n = n ( i=1..m p i log 2 (p i )) = 20 ( 1/4 log 2 (1/4) 3/4 log 2 (3/4)) = = 20 (0.5000+0.3113) = 20 0.8113 = 16.22 [bitów] przyjęcie, że p 1 = 0, p 2 = 1, wtedy H n = n ( i=1..m p i log 2 (p i )) = 20 ( 0 log 2 (0) 1 log 2 (1)) = = 20 (0+0) = 20 0 = 0 [bitów] pytanie: jakieś wnioski? odpowiedź: przekaz zawiera co najwyżej 20 [bitów] informacji
Odebrano przekaz złożony z 20 znaków alfabetu {0,1}. Pytanie: A ile informacji zawiera (średnio) jeden znak przekazu? Odpowiedź: oszacowanie wykorzystujące miarę Shannona informacja w całym przekazie (maksymalna) H n = n ( i=1..m p i log 2 (p i )) = 20 ( 1/2 log 2 (1/2) 1/2 log 2 (1/2)) = = 20 ( 1 log 2 (1/2)) = 20 ( log 2 (1/2)) = 20 log 2 (2) = 20 1 = 20 [bitów] wtedy (maksymalnie) H 1 = H n / n = 10 / 10 = 1 [bit]
Istotna uwaga: szacowanie parametrów takich jak m, p 1, p 2,..., p m na podstawie znajomości tylko jednego przekazu jest co najmniej ryzykowne!!!
... 113
Bit bitowi nierówny różnica bit i (liczba 0/1 w pliku) a bit S (jednostka miary informacji) specyfika bit i mierzy dane (jednostkowa objętość ) bit S mierzy informacje (jednostkowa przydatność ) w szczególnym przypadku: bit i = bit S przydatności wartości 0 i 1 równe» w praktyce: równe prawdopodobieństwa zer i jedynek
... 115
Dane (zmienna 1D) zmienna X o dziedzinie {x 1, x 2,..., x m }, gdzie m 1 P(X = x i ) = p i i=1..m p i 0 w praktyce: i=1..m p i > 0 (x i występuje co najmniej raz) (jeżeli p i = 0, to za dziedzinę X można uznać {x 1,..., x i 1, x i+1,..., x m }) i=1..m p i = 1 oznaczenie P = { p = [p 1, p 2,..., p m ] T i=1..m p i 0 i i=1..m p i = 1 } simpleks m-wymiarowy oznaczenie P + = { p = [p 1, p 2,..., p m ] T i=1..m p i > 0 i i=1..m p i = 1 } wnętrze simpleksu m-wymiarowego Przypadki szczególne gdy m = 1, to p 1 = 1, p = [p 1 ], P = {[1]}
Entropia: właściwości (zestawienie) H(X) jest symetryczna H(X) 0 H(e i ) = 0, gdzie e i = [0 1, 0 2,..., 0 i 1, 1 i, 0 i+1,..., 0 m ] T min H(X) = 0 argmin H(X) = {e 1, e 2,..., e m } H(X) log P (m) H([1/m, 1/m,..., 1/m] T ) = log P (m) max H(X) = log P (m) argmax H(X) = {[1/m, 1/m,..., 1/m] T }
Entropia: właściwości H(X) jest symetryczna uwagi symetryczna : niezależna od kolejności zmiennych uzasadnienie niezależność sumy od kolejności sumowania wniosek: H(X) jest symetryczna
Entropia: właściwości H(X) 0 uwagi uzasadnienie H(X) = i=1..m I(x) i I(x) 0 wniosek: H(X) 0
Entropia: właściwości H(e i ) = 0, gdzie e i = [0 1, 0 2,..., 0 i 1, 1 i, 0 i+1,..., 0 m ] T uwagi uzasadnienie H(e i ) = H([0 1,..., 0 i 1, 1 i, 0 i+1,..., 0 m ] T ) = = I(0) +... + I(0) + I(1) + I(0) +... I(0) = = 0 +... + 0 + 0 + 0 +... + 0 = 0 wniosek: H(e i ) = 0
Entropia: właściwości min H(X) = 0 uwagi uzasadnienie H(X) spełnia p P H(x) 0 oraz np. H(e 1 ) = 0 wniosek: min H(X) = 0
Entropia: właściwości argmin H(X) = {e 1, e 2,..., e m } uwagi e i są jedynymi elementami argmin H(X) uzasadnienie min H(X) = 0 i i=1..m H(e i ) = 0 i p P (p e i H(x) > 0)??? wniosek: argmin H(e i ) = {e 1, e 2,..., e m }
Entropia: właściwości H(X) log P (m) uwagi uzasadnienie ponieważ i=1..m (p i log P (q i )) i=1..m (p i log P (p i )), więc i=1..m (p i log P (p i )) i=1..m (p i log P (q i )) = i=1..m (p i log P (1/m)) ale i=1..m (p i log P (1/m)) = log P (1/m) i=1..m p i = log P (m) i=1..m p i = = log P (m) 1 = log P (m) wniosek: H(X) log P (m)
Entropia: właściwości H([1/m, 1/m,..., 1/m] T ) = log P (m) uwagi uzasadnienie H([1/m, 1/m,..., 1/m] T ) = i=1..m ((1/m) log P (1/m)) = = log P (1/m) i=1..m (1/m) = log P (m) i=1..m (1/m) = = log P (m) 1 = log P (m) wniosek: H([1/m, 1/m,..., 1/m] T ) = log P (m)
Entropia: właściwości max H(X) = log P (m) uwagi dla P = 2 i m = 2 mamy: H(X) log 2 (2) = 1 uzasadnienie H(X) spełnia H(X) log P (m) oraz H([1/m, 1/m,..., 1/m]) = log P (m) wniosek: max H(X) = log P (m)
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } uwagi metody analizy matematycznej uzasadnienie dzięki i=1..m p i = 1, skąd wynika p m = 1 i=1..m 1 p i, mamy H(X) = i=1..m (p i log(p i )) i=1..m 1 (p i log(p i )) (1 i=1..m 1 p i ) log(1 i=1..m 1 p i )
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } wtedy i=1..m 1 (H(X))/ p i = ( i=1..m 1 (p i log(p i )))/ p i + wynikowy gradient + ((1 i=1..m 1 p i ) log(1 i=1..m 1 p i ))/ p i = = log(1 i=1..m 1 p i ) log(p i ) H(X) = [ log(1 i=1..m 1 p i ) log(p 1 ) log(1 i=1..m 1 p i ) log(p 2 )... log(1 i=1..m 1 p i ) log(p m 1 ) ] uwaga: H(X) jest wektorem o rozmiarach (m 1) 1
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } przyrównując H(X) do wektora zerowego i przekształcając otrzymujemy H(X) = 0 i=1..m 1 (H(X))/ p i = 0 i=1..m 1 log(1 i=1..m 1 p i ) log(p i ) = 0 i=1..m 1 log(1 i=1..m 1 p i ) = log(p i ) i=1..m 1 1 i=1..m 1 p i = p i p i = 1/(m 1+1) = 1/m* co oznacza, że H(X) = 0 p i = 1/m * wykorzystano i=1..n x i = 1 i=1..n x i x i = 1/(n+1) (wywód algebraiczny: zapisanie i rozwiązanie układu równań)
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } dalej i,j=1..m 1 (H(X))/( p i p i ) = = (log(1 i=1..m 1 p i ) log(p i ))/ p i = = (log(1 i=1..m 1 p i )/ p i (log(p i ))/ p i = = log(e)/(1 i=1..m 1 p i ) log(e)/p i = = log(e)(1/(1 i=1..m 1 p i ) + 1/p i ) i,j=1..m 1 (H(X))/( p i p j ) = = (log(1 i=1..m 1 p i ) log(p j ))/ p j = = (log(1 i=1..m 1 p i )/ p j (log(p j ))/ p j = = log(e)/(1 i=1..m 1 p i ) 0 = = log(e)/(1 i=1..m 1 p i )
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } wynikowy hesjan H H(X) = log(e)[ 1/(1 i=1..m 1 p i ) + 1/p 1, 1/(1 i=1..m 1 p i ),..., 1/(1 i=1..m 1 p i ) 1/(1 i=1..m 1 p i ), 1/(1 i=1..m 1 p i ) + 1/p 2,..., 1/(1 i=1..m 1 p i )............ 1/(1 i=1..m 1 p i ), 1/(1 i=1..m 1 p i ),..., 1/(1 i=1..m 1 p i ) + 1/p m 1 ] uwaga: H H(X) jest macierzą o rozmiarach (m 1) (m 1)
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } dalej H H(X) ([1/m, 1/m,..., 1/m] T ) = = log(e)[ 1/m + 1/m, 1/m,..., 1/m 1/m, 1/m + 1/m,..., 1/m............ 1/m, 1/m,..., 1/m + 1/m] = uwaga: H H(X) jest macierzą o rozmiarach (m 1) (m 1)
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } dalej H H(X) ([1/m, 1/m,..., 1/m] T ) = = log(e)/m[ 2, 1,..., 1 1, 2,..., 1............ 1, 1,..., 2] = log(e)/m S (m 1) (m 1) gdzie S (m 1) (m 1) jest macierzą stałych odpowiedniej postaci
Entropia: właściwości argmax H(X) = {[1/m, 1/m,..., 1/m] T } ponieważ macierz stałych S k k (powyższej postaci) jest dla każdego k macierzą dodatnio określoną oraz log(e)/m < 0 więc hesjan H H(X) ([1/m, 1/m,..., 1/m] T ) = log(e)/m S (m 1) (m 1) jest macierzą ujemnie określoną oznacza to, że jest (jedynym) wektorem, w którym H(X) posiada maksimum wniosek: argmax H(X) = {[1/m, 1/m,..., 1/m] T }
... 134