Teoria informacji/TI Wykład 4: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Dorota (dyskusja | edycje)
Nie podano opisu zmian
Niwinski (dyskusja | edycje)
Nie podano opisu zmian
Linia 36: Linia 36:
</math></center>
</math></center>


Znów możemy rozszerzyć <math>\ell'</math> na wszystkie <math>s</math> w taki sposób, żeby zachować nierówność Krafta. Aby obliczyć średnią długość kodu musimy zauważyć, że w tym przypadku mieliśmy zawsze <math>\ell (s) = \log_r \frac{1}{p(s) }</math> gdy tylko <math>p(s) > 0</math>. (Wynika to z tego, że z definicji <math>\ell</math> musi być <math>\frac{1}{r^{\ell (s)}} \leq p(s)</math> i <math>1 = \sum_{p(s) > 0} \frac{1}{r^{\ell (s)}} = \sum_{p(s) > 0} p(s)</math>, a więc <math> p(s) = \frac{1}{r^{\ell (s)}}</math> gdy <math>p(s) > 0</math>.) Kod o długości <math>\ell'</math> spełnia
Znów możemy rozszerzyć <math>\ell'</math> na wszystkie <math>s</math> w taki sposób, żeby zachować nierówność Krafta. Aby obliczyć średnią długość kodu musimy zauważyć, że w tym przypadku mieliśmy zawsze <math>\ell (s) = \log_r \frac{1}{p(s) }</math> gdy tylko <math>p(s) > 0</math>. (Wynika to z tego, że z definicji <math>\ell</math> musi być <math>\frac{1}{r^{\ell (s)}} \leq p(s)</math> i <math>1 = \sum_{p(s) > 0} \frac{1}{r^{\ell (s)}} = \sum_{p(s) > 0} p(s)</math>, a więc <math> p(s) = \frac{1}{r^{\ell (s)}}</math> gdy <math>p(s) > 0</math>.)  
<center><math>\sum_{s \in S} p(s) \cdot {\ell}' (s) = \sum_{p(s) > 0} p(s) \cdot {\ell}' (s) = p(s') + \sum_{p(s) > 0} p(s) \cdot {\ell} (s) =  p(s') + H_r (S)</math></center>
 
 
Kod o długości <math>\ell'</math> spełnia
<center><math>\sum_{s \in S} p(s) \cdot {\ell}' (s) = \sum_{p(s) > 0} p(s) \cdot {\ell}' (s) = p(s') + \sum_{p(s) > 0} p(s) \cdot {\ell} (s) </math></center>
 
<center><math> =  p(s') + H_r (S)</math></center>


Ostatecznie <math>L_r (S) \leq H_r (S) + 1</math> i nierówność nie jest ostra tylko wtedy, gdy nie istnieje żadne <math>0 < p(s') <1</math>.}}
Ostatecznie <math>L_r (S) \leq H_r (S) + 1</math> i nierówność nie jest ostra tylko wtedy, gdy nie istnieje żadne <math>0 < p(s') <1</math>.}}

Wersja z 20:02, 1 paź 2006

Aby oszacować Lr(Sn)nHr(S), zaczniemy od uzupełnienia naszej nierówności o górne ograniczenie.

Twierdzenie [Kod Shannona-Fano]

Dla dowolnej skończonej przestrzeni probabilistycznej S i r2, istnieje kod φ:SΣ* (gdzie |Σ|=r), spełniający
L(φ)Hr(S)+1

W ten sposób mamy

Hr(S)Lr(S)Hr(S)+1
Dodatkowo, ścisła nierówność Lr(S)<Hr(S)+1 jest prawdziwa za wyjątkiem przypadku p(s)=1 dla pewnego sS (wtedy Hr(S)=0).

Dowód

Dla |S|=1 mamy trywialnie Hr(S)=0 i Lr(S)=1. Załóżmy że |S|2. Niech
(s)=logr1p(s)

dla tych sS, dla których p(s)>0. Wtedy

s:p(s)>01r(s)p(s)>0p(s)=sSp(s)=1

Rozważmy kilka przypadków. W najprostszym, kiedy (sS)p(s)>0, powyższa nierówność odpowiada dokładnie nierówności Krafta, a zatem istnieje kod φ spełniający |φ(s)|=(s) dla wszystkich sS. Uwzględniając, że (s)<logr1p(s)+1, dostajemy

sSp(s)(s)<sSp(s)(logr1p(s)+1)=Hr(S)+1.

Załóżmy zatem, że p(s) może być równe 0. Jeśli

p(s)>01r(s)<1

to łatwo możemy rozszerzyć definicję na wszystkie s, tak że nierówność Krafta sS1r(s)1 dalej będzie spełniona. Będzie zatem istniał kod o długościach , spełniający (s)<logr1p(s)+1 zawsze, gdy p(s)>0, a więc

sSp(s)(s)<sSp(s)(logr1p(s)+1)=Hr(S)+1

(Pamiętamy o naszej konwencji 0log10=0.)

Ostatni przypadek to taki, gdy

p(s)>01r(s)=1

Wybierzmy s’, takie że p(s)>0, i zdefiniujmy nowe długości

Parser nie mógł rozpoznać (nieznana funkcja „\aligned”): {\displaystyle \aligned \ell' (s') & = \ell (s') + 1\\ \ell' (s) & = \ell (s), \mbox{ dla } s \neq s' \endaligned }

Znów możemy rozszerzyć na wszystkie s w taki sposób, żeby zachować nierówność Krafta. Aby obliczyć średnią długość kodu musimy zauważyć, że w tym przypadku mieliśmy zawsze (s)=logr1p(s) gdy tylko p(s)>0. (Wynika to z tego, że z definicji musi być 1r(s)p(s) i 1=p(s)>01r(s)=p(s)>0p(s), a więc p(s)=1r(s) gdy p(s)>0.)


Kod o długości spełnia

sSp(s)(s)=p(s)>0p(s)(s)=p(s)+p(s)>0p(s)(s)
=p(s)+Hr(S)
Ostatecznie Lr(S)Hr(S)+1 i nierówność nie jest ostra tylko wtedy, gdy nie istnieje żadne 0<p(s)<1.


Jesteśmy gotowi do sformułowania pierwszego z głównych twierdzeń tego wykładu:


Twierdzenie [Pierwsze Twierdzenie Shannona]

Dla każdej skończonej przestrzeni probabilistycznej S i r2

limnLr(Sn)n=Hr(S).

Dowód

Z poprzedniego twierdzenia

Hr(Sn)Lr(Sn)Hr(Sn)+1

Uwzględniając Hr(Sn)=nHr(S), dostajemy

Hr(S)Lr(Sn)nHr(S)+1n