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

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
m Zastępowanie tekstu – „ </math>” na „</math>”
m Zastępowanie tekstu – „<math> ” na „<math>”
 
Linia 3: Linia 3:


{{twierdzenie|[Twierdzenie Shannona o kodach]|Shannon|
{{twierdzenie|[Twierdzenie Shannona o kodach]|Shannon|
Niech <math>\Gamma</math> będzie binarnym kanałem symetrycznym, charakteryzowanym przez macierz <math>\left( \begin{matrix}P & Q \\ Q & P\end{matrix}\right)</math>, gdzie <math> P > Q</math>. Wtedy <math>\forall \varepsilon,\delta > 0 \, \exists n_0 \forall n \geq n_0 \exists C \subseteq \{ 0, 1 \}^n</math> takie że
Niech <math>\Gamma</math> będzie binarnym kanałem symetrycznym, charakteryzowanym przez macierz <math>\left( \begin{matrix}P & Q \\ Q & P\end{matrix}\right)</math>, gdzie <math>P > Q</math>. Wtedy <math>\forall \varepsilon,\delta > 0 \, \exists n_0 \forall n \geq n_0 \exists C \subseteq \{ 0, 1 \}^n</math> takie że


<center><math>C_{\Gamma } - \varepsilon \leq R(C) \leq  C_{\Gamma }</math>
<center><math>C_{\Gamma } - \varepsilon \leq R(C) \leq  C_{\Gamma }</math>
Linia 13: Linia 13:


===Dowód Twierdzenia Shannona===
===Dowód Twierdzenia Shannona===
Zaczniemy od przedstawienia idei dowodu. Załóżmy, że ciąg wejściowy <math> X =  a_1 \ldots a_n</math> jest przekształcany na ciąg wyjściowy <math> Y =  b_1 \ldots b_n</math>. Jaka jest ''oczekiwana'' odległość Hamminga między X a Y? Odpowiada ona liczbie błędów transmisji. Skoro prawdopodobieństwo każdego błędu wynosi Q, to z Prawa Wielkich Liczb wynika, że d(X,Y) będzie dążyło do <math>Q \cdot n</math> dla <math>n \to \infty</math>. Jeśli reguła dekodująca powoduje błąd (czyli <math>\Delta(Y) \neq X</math>), może się to stać z dwóch powodów:
Zaczniemy od przedstawienia idei dowodu. Załóżmy, że ciąg wejściowy <math>X =  a_1 \ldots a_n</math> jest przekształcany na ciąg wyjściowy <math>Y =  b_1 \ldots b_n</math>. Jaka jest ''oczekiwana'' odległość Hamminga między X a Y? Odpowiada ona liczbie błędów transmisji. Skoro prawdopodobieństwo każdego błędu wynosi Q, to z Prawa Wielkich Liczb wynika, że d(X,Y) będzie dążyło do <math>Q \cdot n</math> dla <math>n \to \infty</math>. Jeśli reguła dekodująca powoduje błąd (czyli <math>\Delta(Y) \neq X</math>), może się to stać z dwóch powodów:
* Y jest „daleko” od X (dalej niż oczekiwana odległość)
* Y jest „daleko” od X (dalej niż oczekiwana odległość)
* Y jest blisko X, ale któreś <math>X' \neq X</math> jest równie blisko jak X
* Y jest blisko X, ale któreś <math>X' \neq X</math> jest równie blisko jak X


Pierwszy typ błędów jest powodowany przez kanał, ale sama natura go poprawia: Prawo Wielkich Liczb gwarantuje, że duża odległość pomiędzy X a Y będzie występować rzadko jeśli n jest duże. Za drugi typ błędów odpowiada sam kod. Aby nie zachodziły takie sytuacje, słowa kodowe muszą być odpowiednio odległe od siebie nawzajem. W naszym przypadku oznacza to, że jeśli wyznaczymy wokół każdego ze słów kodowych kulę o promieniu <math>Q \cdot n</math> (w metryce Hamminga), to kule te powinny być parami rozłączne. Pytanie zatem brzmi: ile rozłącznych kul o tym promieniu można zmieścić w <math>\{0,1\}^n</math>? Objętość każdej z tych kul, co udowodnimy, wynosi w przybliżeniu <math>\approx  2^{n \cdot H (Q) }</math>. Oznacza to, że maksymalna możliwa liczba kul jest nie większa niż
Pierwszy typ błędów jest powodowany przez kanał, ale sama natura go poprawia: Prawo Wielkich Liczb gwarantuje, że duża odległość pomiędzy X a Y będzie występować rzadko jeśli n jest duże. Za drugi typ błędów odpowiada sam kod. Aby nie zachodziły takie sytuacje, słowa kodowe muszą być odpowiednio odległe od siebie nawzajem. W naszym przypadku oznacza to, że jeśli wyznaczymy wokół każdego ze słów kodowych kulę o promieniu <math>Q \cdot n</math> (w metryce Hamminga), to kule te powinny być parami rozłączne. Pytanie zatem brzmi: ile rozłącznych kul o tym promieniu można zmieścić w <math>\{0,1\}^n</math>? Objętość każdej z tych kul, co udowodnimy, wynosi w przybliżeniu <math>\approx  2^{n \cdot H (Q) }</math>. Oznacza to, że maksymalna możliwa liczba kul jest nie większa niż
<center><math> m \approx 2^n :  2^{n \cdot H (Q) } = 2^{n (1 - H(Q))} = 2^{n \cdot C_{\Gamma }}</math></center>
<center><math>m \approx 2^n :  2^{n \cdot H (Q) } = 2^{n (1 - H(Q))} = 2^{n \cdot C_{\Gamma }}</math></center>


co odpowiada szybkości transmisji <math>R(C)\approx C_{\Gamma}</math>. Niezwykłość odkrycia Shannona polega na tym, że to dolne ograniczenie daje się osiągnąć. Niestety sam dowód jest niekonstruktywny i pokazuje jedynie, że taki kod istnieje.
co odpowiada szybkości transmisji <math>R(C)\approx C_{\Gamma}</math>. Niezwykłość odkrycia Shannona polega na tym, że to dolne ograniczenie daje się osiągnąć. Niestety sam dowód jest niekonstruktywny i pokazuje jedynie, że taki kod istnieje.
Linia 105: Linia 105:




Jeśli <math>\lambda n</math> jest całkowite, nasza nierówność jest po prostu równością. Jeśli nie, mamy <math>\lambda n = \lfloor \lambda n \rfloor + \Delta \lambda</math>, <math>\kappa n =\lfloor \kappa n \rfloor + \Delta \kappa</math>, <math>\lfloor \lambda n \rfloor + \lfloor \kappa n \rfloor = n-1</math> i <math>\Delta \lambda + \Delta \kappa = 1</math>. Z założenia <math> \kappa \ge \lambda</math>, i mamy dla dowolnego <math>i \le \lambda n</math>
Jeśli <math>\lambda n</math> jest całkowite, nasza nierówność jest po prostu równością. Jeśli nie, mamy <math>\lambda n = \lfloor \lambda n \rfloor + \Delta \lambda</math>, <math>\kappa n =\lfloor \kappa n \rfloor + \Delta \kappa</math>, <math>\lfloor \lambda n \rfloor + \lfloor \kappa n \rfloor = n-1</math> i <math>\Delta \lambda + \Delta \kappa = 1</math>. Z założenia <math>\kappa \ge \lambda</math>, i mamy dla dowolnego <math>i \le \lambda n</math>
<center><math>\lambda^i \kappa^{n-i} \geq
<center><math>\lambda^i \kappa^{n-i} \geq
\lambda^{\lfloor \lambda n \rfloor } \cdot
\lambda^{\lfloor \lambda n \rfloor } \cdot

Aktualna wersja na dzień 22:18, 11 wrz 2023

Przedstawimy teraz centralne twierdzenie teorii informacji, autorstwa Claude'a Shannona. Intuicyjnie mówi ono, że transmisja danych przez zaszumiony kanał jest możliwa z dowolnie małym prawdopodobieństwem błędu i z szybkością dowolnie bliską przepustowości kanału. Jedynym warunkiem jest zastosowanie kodów wystarczającej długości. Poniższa wersja odnosi się do kanałów BSC, ale można ją łatwo rozszerzyć na dowolne typy kanałów.


Twierdzenie [Twierdzenie Shannona o kodach]

Niech Γ będzie binarnym kanałem symetrycznym, charakteryzowanym przez macierz (PQQP), gdzie P>Q. Wtedy ε,δ>0n0nn0C{0,1}n takie że

CΓεR(C)CΓ

oraz

PrE(Δ,C)δ


Dowód Twierdzenia Shannona

Zaczniemy od przedstawienia idei dowodu. Załóżmy, że ciąg wejściowy X=a1an jest przekształcany na ciąg wyjściowy Y=b1bn. Jaka jest oczekiwana odległość Hamminga między X a Y? Odpowiada ona liczbie błędów transmisji. Skoro prawdopodobieństwo każdego błędu wynosi Q, to z Prawa Wielkich Liczb wynika, że d(X,Y) będzie dążyło do Qn dla n. Jeśli reguła dekodująca powoduje błąd (czyli Δ(Y)X), może się to stać z dwóch powodów:

  • Y jest „daleko” od X (dalej niż oczekiwana odległość)
  • Y jest blisko X, ale któreś XX jest równie blisko jak X

Pierwszy typ błędów jest powodowany przez kanał, ale sama natura go poprawia: Prawo Wielkich Liczb gwarantuje, że duża odległość pomiędzy X a Y będzie występować rzadko jeśli n jest duże. Za drugi typ błędów odpowiada sam kod. Aby nie zachodziły takie sytuacje, słowa kodowe muszą być odpowiednio odległe od siebie nawzajem. W naszym przypadku oznacza to, że jeśli wyznaczymy wokół każdego ze słów kodowych kulę o promieniu Qn (w metryce Hamminga), to kule te powinny być parami rozłączne. Pytanie zatem brzmi: ile rozłącznych kul o tym promieniu można zmieścić w {0,1}n? Objętość każdej z tych kul, co udowodnimy, wynosi w przybliżeniu 2nH(Q). Oznacza to, że maksymalna możliwa liczba kul jest nie większa niż

m2n:2nH(Q)=2n(1H(Q))=2nCΓ

co odpowiada szybkości transmisji R(C)CΓ. Niezwykłość odkrycia Shannona polega na tym, że to dolne ograniczenie daje się osiągnąć. Niestety sam dowód jest niekonstruktywny i pokazuje jedynie, że taki kod istnieje.


W dalszej części dowodu będziemy używać małych liter u,v,w,x,y, na oznaczenie wektorów w {0,1}n dla odróżnienia od zmiennych losowych. Jak zwykle oznaczać będzie XOR po współrzędnych. Wybierzemy η>0, którego zależność od ϵ i δ wyznaczymy dokładnie później (intuicyjnie, η będzie bardzo małe). Niech

ρ=n(Q+η)

Załóżmy teraz, że C{0,1}n jest kodem z |C|=m. Z definicji reguły Δ, jeśli dla pewnego słowa kodowego uC i błędu e{0,1}n mamy odległość d(u,ue)ρ, a ponadto vC{u}d(v,ue)>ρ, to u jest najbliższym słowem kodowym do ue i z konieczności Δ(ue)=u.

Zatem jeśli Δ(ue)u, to albo d(u,ue)>ρ, albo dla pewnego vC{u}d(v,ue)ρ.

Wektor e możemy interpretować jako wartość zmiennej losowej E=(E1,,En), gdzie Ei=AiBi. Zmienne E1,,En są niezależne i mają identyczny rozkład

p(Ei=0)=P
p(Ei=1)=Q

Powyższe obserewacje można zatem zapisać jako

p(Δ(uE)u)p(d(u,uE)>ρ)+vC{u}p(d(v,uE)ρ)

Pierwszy składnik oszacujemy używając następującego faktu:


Fakt [Słabe Prawo Wielkich Liczb]

Niech X1,X2, będą zmiennymi losowymi takimi, że każda sekwencja X1,X2,,Xn jest parami niezależna, i Xi mają ten sam rozkład nad skończonym zbiorem liczb rzeczywistych. Niech μ=E(Xi). Wtedy dla dowolnego α>0

limnp(|1ni=1nXiμ|>α)=0


W naszym przypadku stosujemy ten fakt do sekwencji E1,E2,. Wiemy, że E(Ei)=0P+1Q=Q. Zatem p(|1ni=1nEiQ|>η)0 dla n i dostajemy

p(d(u,uE)>ρ)p(1ni=1nEi>Q+η)p(|1ni=1nEiQ|>η)δ2

dla wystarczająco dużych n.


Przypomnijmy, że szacujemy PrE(Δ,C), które możemy przedstawić jako sumę

PrE(Δ,C)=uCp(X=u)p(ΔYu|X=u)

Z definicji Y=XE, a więc

p(Y=w|X=u)=p(E=wu)

Zatem

p(ΔYu|X=u)=v:Δ(v)up(Y=v|X=u)=e:Δ(ue)up(Y=ue)|X=u)=e:Δ(ue)up(E=e)=p(Δ(uE)u)

Ponadto p(X=u)=1m (z założenia rozkład X jest jednorodny).

Łącząc te wyniki, dostajemy

PrE(Δ,C)1muC(p(d(u,uE)>ρ)+vC{u}p(d(v,uE)ρ))δ2+1muCvC{u}p(d(v,uE)ρ)

dla wystarczająco dużych n.


Zanim przejdziemy dalej, oszacujmy najpierw objętość kuli o promieniu λn, gdzie λ12. Konkretnie pokażemy, że

iλn(ni)2nH(λ)

Niech κ=1λ. Zauważmy najpierw, że

log2(λλnκκn)=n(λlog2λ+κlog2κ)=nH(λ)

Wystarczy zatem, że pokażemy, że dla dowolnych iλn

λiκniλλnκκn

Wtedy

1iλn(ni)λiκniiλn(ni)λλnκκn

a więc

iλn(ni)1λλnκκn=2nH(λ)

jak zakładaliśmy.


Jeśli λn jest całkowite, nasza nierówność jest po prostu równością. Jeśli nie, mamy λn=λn+Δλ, κn=κn+Δκ, λn+κn=n1 i Δλ+Δκ=1. Z założenia κλ, i mamy dla dowolnego iλn

λiκniλλnκκn+1=λλnκκnκΔλ+ΔκλΔλκΔκλλnκκn

co kończy dowód szacowania objętości.