KYBERNETIKA A UMELÁ INTELIGENCE

Transkript

KYBERNETIKA A UMELÁ INTELIGENCE
KYBERNETIKA A UMĚLÁ INTELIGENCE
3. Přenos informace
laboratory
Gerstner
Gerstnerova laboratoř
katedra kybernetiky
fakulta elektrotechnická
ČVUT v Praze
Přenos informace
ƒ
ƒ
ƒ
Uvažujme dvojice systémů:
systém 1
systém 2
Stav:
napětí U
Stav:
úhelα
Stav:
úhel α
Stav:
úhel β
Stav:
znak X
Stav:
znak Y
Co mají dvojice společného? Stavy systému 1 a systému 2 jsou navzájem závislé. Je
mezi nimi přenášena informace komunikačním kanálem.
Ze stavu systému 1 lze odhadnout stav systému 2 a obráceně.
Komunikační kanál
ƒ
Všechny tyto příklady lze společně zobecnit:
Systém 1
Veličina X
Komunikační
kanál
Systém 2
Veličina Y
ƒ
ƒ
Pro jednoduchost: pouze jedna stavová proměnná v každém systému.
X a Y jsou náhodné proměnné s distribucemi P(x), P(y) resp. hustotami f(x), f(y)
ƒ tj. stochastický popis. Deterministický stav je speciálním případem!
Uvažujme nejprve pouze diskrétní veličiny (tj. distribuce P(x), P(y) ).
Vlastnosti komunikačního kanálu určují sílu vazby mezi X a Y. Jak ji měřit?
ƒ
ƒ
Jaká je neurčitost X, pokud víme, že Y = y ?
Použijme koncept entropie X, kde místo P(x) uvažujeme podmíněnou distribuci P(x|y) :
ƒ
ƒ
H ( X | y ) = −∑ P ( x | y ) log 2 P ( x | y )
x
Entropie X podmíněná znalostí o konkrétní hodnotě Y = y
Pozn.: zjednodušenou notací
∞
∞
x = −∞
y = −∞
∑ , ∑, atd. značíme ∑ , ∑ atd.
x
y
Podmíněná a sdružená entropie
ƒ
Zobecnění pro všechny možné případy y
střední hodnota H(X,y) přes všechny y.
H ( X | Y ) = ∑ P( y ) H ( X | y ) = −∑ P( y )∑ P( x | y ) log 2 P( x | y )
y
ƒ
ƒ
ƒ
y
x
Entropie X podmíněná Y
H(X|Y) je tedy střední hodnota neurčitosti X při průběžném pozorování Y.
Analogicky k pravděpodobnostním pojmům: H(X) a H(Y) = “marginální entropie”.
Vedle marginální a podmíněné entropie, definujeme také sdruženou entropii:
H ( X , Y ) = −∑∑ P( x, y ) log 2 P ( x, y )
x
ƒ
ƒ
y
Sdružená entropie X a Y
Celková neurčitost systému sestávajícího ze dvou systémů (se stavy X resp Y ).
Platí
H ( X , Y ) = H ( X | Y ) + H (Y )
H(X,Y) = ∑∑ P( x, y ) log 2 P( x, y ) =∑∑ P( x | y ) P( y ) log 2 [ P( x | y ) P ( y )] =
x
y
x
y
= ∑ P( y )∑ P( x | y ) log 2 P( x | y ) + ∑ P( y ) log 2 P( y )∑ P( x | y ) = H ( X | Y ) + H (Y ) ⋅1
y
x
y
x
Vlastnosti podmíněné entropie
ƒ
H(X|Y), tj. neurčitost X podmíněná Y, je minimální, pokud
je hodnota X jednoznačně určena z Y, tj. X=g(Y), kde g je
nějaká funkce. Potom platí
X
Y
a tedy
H ( X | Y ) = −∑ P( y )∑ P( x | y ) log 2 P( x | y ) = −∑ P ( y )P( g ( y ) | y ) log 2 P ( g ( y ) | y ) = −∑ P( y ) ⋅1 ⋅ 0 = 0
y
ƒ
x
y
y
H(X|Y) je maximální, pokud je hodnota X
nezávislá na Y, tj. P(X|Y) = P(X).
X
Y
Potom platí
H ( X | Y ) = −∑ P ( y )∑ P( x | y ) log 2 P( x | y ) = −∑ P( y )P( x) log 2 P( x) = ∑ P( y )H ( X ) = H ( X )
y
ƒ
x
y
Víme tedy, že
0 ≤ H (X |Y) ≤ H (X )
y
Vzájemná informace
ƒ
Informační vazbu mezi dvěma systémy pak kvantifikujeme jako rozdíl neurčitosti stavu X
jednoho systému před a po zjištění hodnoty stavu Y druhého systému. Tedy
T (X :Y ) = H (X ) − H (X | Y )
ƒ
ƒ
„před“
„po“
T(X:Y) se nazývá
vzájemná informace, též transmise (proto T ).
Víme, že 0 ≤ H(X|Y) ≤ H(X). Platí tedy
0 ≤ T (X :Y ) ≤ H (X )
ƒ
Dvojtečka vyjadřuje symetrii mezi systémy. Platí:
T ( X : Y ) = H ( X ) − H ( X | Y ) = H (Y ) − H (Y | X ) = T (Y : X )
ƒ
Víme, že H(X|Y) = H(X,Y) – H(Y), dostáváme tedy:
T ( X : Y ) = H ( X ) + H (Y ) − H ( X , Y )
ƒ
Příliš mnoho vztahů? Udělejme v tom pořádek!
Entropie a vzájemná informace – vztahy
ƒ
Grafické znázornění Vennovým diagramem (plocha odpovídá hodnotě)
H(X)
H(X|Y)
H(Y)
T(X:Y)
=
T(Y:X)
H(X,Y)
=
H(Y,X)
H(Y|X)
Často kladené otázky
ƒ
Přepokládejme diskrétní komunikační kanál. X – vysílaný znak, Y – přijímaný znak.
ƒ
Zmatení 1: H(X) – entropie vysílacího systému („zdroje“) - je zároveň:
ƒ neurčitost stavu (vysílaného znaku) zdroje.
ƒ střední hodnota informace připadající na jeden vyslaný znak.
Jak to, že množství informace stoupá s neurčitostí ?!
Správná interpretace:
ƒ Čím více je informace ve znacích vyslaných zdrojem, tím těžší je tyto znaky
předvídat (vyšší neurčitost).
ƒ
ƒ
ƒ
Zmatení 2: T(X:Y) – vzájemná informace, nejvyšší pro nejsilnější informační vazbu.
T(X:Y) = H(X)
čím více marginální informace, tím lépe (větší T),
- H(X|Y)
čím více podmíněné informace, tím hůře (menší T) ?!
Správná interpretace:
ƒ H(X) je střední míra informace produkované zdrojem – té chceme co nejvíce
ƒ H(X|Y) je střední míra informace produkované šumem – té chceme co nejméně
ƒ „šum“ – nedeterminismus vazby mezi X a Y.
ƒ Pro X=g(Y): žádný šum, H(X|Y) = 0.
Vzájemné informace pro spojité stavové veličiny
ƒ
ƒ
ƒ
Pro spojité náhodné veličiny X, Y zavádíme vzájemnou informaci analogicky diskrétním.
Nechť f(x) a g(y) jsou hustoty X resp. Y a h(x,y) je jejich sdružená hustota.
Vyjděme ze vztahu T(X:Y) = H(X,Y) – H(X) – H(Y) a dosaďme:
∞ ∞
T (X :Y ) =
∞
∫ ∫ h( x, y) log h( x, y)dxdy − ∫ f ( x) log
2
− ∞− ∞
ƒ
−∞
T(X :Y ) =
∫ ∫ h( x, y) log h( x, y)dxdy − ∫ ∫ h( x, y)dy log
2
− ∞− ∞
−∞
∞ ∞
2
f ( x)dx −
∫ ∫ h( x, y)dx log g ( y)dy
2
− ∞− ∞
Odtud sečtením:
∞ ∞
T (X :Y ) =
∫
∫ h ( x , y ) log 2
− ∞− ∞
ƒ
f ( x) dx − ∫ g ( y ) log 2 g ( y )dy
∞ ∞
− ∞− ∞
ƒ
2
přičemž prvním sčítancem jsme definovali sdruženou diferenciální entropii H(X,Y).
Z principu marginalizace (minulá přednáška) vyplývá:
∞ ∞
ƒ
∞
h( x, y )
dxdy
f ( x) g ( y)
Zatímco marginální diferenciální entropie je závislá na měřítku veličiny (min. přednáška),
vzájemná informace pro dvě spojité veličiny je na měřítku nezávislá.
Dále se budeme věnovat diskrétním komunikačním kanálům.
Kódování
ƒ
Uvažovali jsme zatím model
Zdroj
Komunikační
kanál
Cíl
ƒ
Vzájemná informace je symetrický vztah, ale pro názornost volíme orientaci:
ƒ Informaci ve znacích vysílá zdroj signálu a přjímá cíl – příjemce signálu.
ƒ
ƒ
Komunikační kanál nemusí být schopný přenášet všechny stavy zdrojového systému.
Příklad:
Zdroj/cíl: text v ASCII
128 možných stavů (znaků)
ƒ
ƒ
Binární komunikační kanál
2 možné stavy (úrovně napětí)
Je třeba převést znaky zdroje na posloupnosti znaků kanálu (a zpět)
Kódování: transformace z kódu zdroje do jiného kódu.
Kódování
Zdroj
Kodér
Komunikační
kanál
Dekodér
Cíl
ƒ
Obecněji: převod posloupností znaků - tzv. slov zdroje na slova znaků kanálu.
ƒ Proč kódovat slova a ne jen individuální znaky? Uvidíme dále!
ƒ
Formálně:
ƒ kódování je zobrazení: k: {x1, x2 ..., xn }* → {y1, y2, ..., ym }*, kde
ƒ x1, x2 ..., xn jsou možné stavy zdroje a cíle a y1, y2, ..., ym jsou možné stavy kanálu,
ƒ v kontextu přenosu informace se těmto množinám stavů říká abecedy
ƒ {...}* znamená množina všech posloupností znaků z množiny {...}.
ƒ dekódování je inverzní zobrazení d = k-1, tj. d(k(p)) = p pro p ∈ {x1, x2 ..., xn }*
ƒ Vám známý termín codec = coder + decoder.
ƒ
Zjednodušení
ƒ Dále budeme uvažovat pouze binární komunikační kanály, tj kódování
k: {x1, x2 ..., xn }* → {0,1}*
ƒ
ƒ
Důležitá podmínka pro kódování: musíme být schopni jednoznačně dekódovat!
Za jakých podmínek je toto možné?
Jednoznačnost dekódování
ƒ
Příklad kódu 1:
a → 00
b → 01
c → 10
d → 11
ƒ Kódování po jednotlivých znacích definuje i kód pro každou posloupnost zdroje.
ƒ Pevný počet kódových znaků pro každý symbol zdroje.
ƒ
Jednoznačná dekódovatelnost. Např.: 00001100100001 → AADACAB
ƒ
Příklad kódu 2:
a → 0
b → 01
c → 10
d → 11
Proměnný počet kódových znaků pro jednotlivé symboly zdroje.
K čemu by takové kódování mohlo být užitečné?
Je-li a nejčastějším znakem, generuje krátké kódy.
Např. zpráva aadacab z předchozího příkladu → 0011010001
ƒ 10 znaků oproti 14 výše. ALE:
ƒ
Nejednoznačná dekódovatelnost.
ƒ Např.: 0110 → ada,
ale také 0110 → bc
ƒ Důvod: kód pro a je prefixem (začátkem) kódu pro b.
ƒ
ƒ
ƒ
ƒ
Prefixové kódy
ƒ
Pozorování: má-li být kód s proměnným počtem kódových znaků pro každý symbol zdroje
jednoznačně dekódovatelný, nesmí být kód žádného znaku zdroje prefixem kódu jiného
znaku zdroje.
ƒ
Tuto vlastnost mají
Prefixové kódy. Ty lze znázornit stromovým grafem. Např:
ƒ
kořen
0
list a
1
0
list b
list c
ƒ
Kód znaku: hodnoty hran na cestě od
kořene k příslušnému listu. Tj.
1
0
1
list d
znak
a
b
c
d
→
→
→
→
Je Morseova abeceda prefixový kód?
ƒ Pouze pokud se mezi možné znaky počítá mezera.
kód
0
10
110
111
Další využití kódování
ƒ
Vhodnou volbou kódování můžeme zesílit informační vazbu mezi systémy, tj. zvýšit
vzájemnou informaci. Strategie obecně:
T(X:Y) = H(X)
.... chceme zvýšit
komprese dat
.... chceme snížit
opravy chyb
H(X|Y)
ƒ
ƒ
Obojího se dosahuje kódováním. Je ale třeba rozlišit, „kde“ upravujeme T(X:Y)
Komprese dat spočívá ve zvýšení H(X), je to tedy úprava vlastností zdroje
Vylepšená T(X:Y)
Vylepšený zdroj
Zdroj
ƒ
Kodér
X
Komunikační
kanál
Vylepšený cíl
Y
Dekodér
Cíl
Opravy chyb směřují ke snížení H(X|Y), jde o úpravu vlastností komunikačního kanálu
Vylepšená T(X:Y)
Vylepšený komunikační kanál
Zdroj
Kodér
X
Komunikační
kanál
Dekodér
Cíl
Y
Komprese dat
ƒ
Uvažujme znovu zdroj se čtyřmi stavy (znaky abecedy), s distribucí
P(a) = 0.5
P(b) = 0.3
P(c) = 0.1
P(d) = 0.1
ƒ
Kód k1: přiřazuje stejně dlouhý kód všem znakům zdroje
a → 00
b → 01
c → 10
d → 11
ƒ Střední hodnota počtu bitů (znaků kódu) na jeden znak zdroje: L = 2.
ƒ
Kód k2 (prefixový): přiřazuje nejkratší kód nejčastějšímu znaku zdroje
a→0
b → 10
c → 110
d → 111
ƒ Střední hodnota počtu bitů (znaků kódu) na jeden znak zdroje:
L = 0.5 * 1 + 0.3 * 2 + 0.1 * 3 + 0.1 * 3 = 1.7
ƒ
ƒ
Kód k2 tedy dosahuje 15% komprese oproti kódu k1 – zprávy v kódu k2 jsou v průměru od
15% kratší než v kódu k1.
Otázky:
ƒ Jaké nejlepší komprese můžeme dosáhnout ?
ƒ Jakým algoritmem sestrojit příslušný kód ?
Entropie zdroje a komprese
ƒ
Shannonova věta o kompresi:
H ( X ) ≤ L ≤ H ( X ) +1
ƒ Entropie zdroje udává nejnižší dosažitelný průměrný počet bitů na jeden znak
zdroje L.
ƒ Vždy jsme schopni dosáhnout hodnoty maximálně o 1 větší než je entropie zdroje.
ƒ Předpokladem věty je vzájemná statistická nezávislost znaků zdroje, tedy:
P(zm | zm-1,zm-2, ...) = P(zm), kde zi ∈ {x1, x2 ..., xn } je i-tý vyslaný znak
ƒ
Z minulého příkladu:
P(a) = 0.5
P(c) = 0.1
P(b) = 0.3
P(d) = 0.1
ƒ Nejnižší možné L ≈ 1.68
H ( X ) = −0.5 log 2 0.5 − 0.3 log 2 0.3 − 0.1log 2 0.1 − 0.1 log 2 0.1 ≈ 1.68
ƒ Kódem k1 jsme dosáhli L = 2, kódem k2 jsme dosáhli L = 1.7
Redundance
ƒ
Námitka: bez jakéhokoliv kódování bychom ale dosáhli L = 1 ?!
ƒ
Museli bychom použít 4 znaky abecedy, což s binárním kanálem nelze.
ƒ L nelze srovnávat pro kódování s různými velikostmi abeced!
ƒ
Ke srovnávání efektivity kódů s různými abecedami slouží pojem redundance r :
r = 1−
H
H
[⋅100%] = 1 −
[⋅100%]
H max
log 2 n
ƒ n je počet znaků abecedy použité v kódu (původním kódu zdroje, nebo výstupu
kódování)
ƒ H je entropie kódu
ƒ Hmax je maximální možná entropie kódu, tj. log2 n.
ƒ
ƒ
ƒ
ƒ
Předpokladem výpočtu redundance je opět statistická nezávislost vysílaných znaků.
Čím nižší redundance, tím vyšší efektivita.
Komprese dosahujeme, pokud rzdroje > rkódu .
Nejnižší možná redundance pokud H = Hmax. Lze dosáhnout pouze rovnoměrnou
distribucí P znaků v kódu.
Redundace
Z minulého příkladu:
ƒ
ƒ
ƒ
ƒ
Zdroj: H(X) = 1.68, n = 4, r = 1 – 1.68 / 2 = 16 %
Kód k1: P(0) = 0.7, P(1) = 1-P(0) = 0.3
ƒ H ( X k1 ) = −0.7 log 2 0.7 − 0.3 log 2 0.3 ≈ 0.88
ƒ n = 2, r = 1 – 0.88 / 1 = 12 %
Kód k2: P(0) = 0.53, P(1) = 1-P(0) = 0.47
ƒ H ( X k 1 ) ≈ −0.53 log 2 0.53 − 0.47 log 2 0.47 ≈ 0.99
ƒ n = 2, r = 1 – 0.99 / 1 = 1 %
Pro výpočet redundance je předpokládána statistická nezávislost znaků. Pro k1 a k2 platí
pouze přibližně!
Proto rozdíl mezi zdrojem (16 %) a k1 (12 %).
Výpočet
P(0)
v kódech
k1 a k2
P(z) pro
znak zdroje
a
a
a
a
a
b
b
b
c
d
k1
00
00
00
00
00
01
01
01
10
11
110
111
50%
P(0) v k1
k2
P(0) v k2
30%
10%
10%
počet nul / počet číslic = 14 / 20 = 0.7
0
0
0
0
0
10
10
10
počet nul / počet číslic = 9 / 17 = 0.53
Huffmanovo kódování znaků zdroje
ƒ
Jak sestrojit kompresní prefixový kód:
konstrukce Huffmanova stromu
Algoritmus:
1. Uzly := znaky zdroje
Hrany := {}
2. Je-li právě jeden uzel, do
kterého nevede hrana,
skonči.
3. Z uzlů, do kterých nevedou
hrany, vyber dva: u1, u2 s
nejnižší P.
Vytvoř nový uzel z něhož
vedou hrany do u1 a do u2.
Hrany označ 0 resp. 1.
P(nového uzlu):= P(u1)+P(u2)
3. Jdi na 2.
David A. Huffman
1925 - 1999
Příklad:
znak
P(znak)
a
b
0.2
c
0.2
d
0
0.5
0.1
0
0
0.3
0.5
1
1
Výsledný prefixový kód (totožný s k2)
a → 0
b → 10
c → 110
d → 111
1
Huffmanovo kódování slov zdroje
ƒ
Jak sestrojit Huffmanův kód, pokud je kód zdroje již binární?
Příklad:
znak
P(znak)
0
0.7
1
ƒ
0.3
0
0→0
1
1→1
ƒ
1 bit je kódován 1 bitem.
Výsledek standardního Huffmanova
algoritmu je k ničemu.
Je třeba kódovat po n-ticích znaků, tj. slovech zdroje. Např. pro n = 2:
Příklad:
dvojice P(dvojice)
ƒ
ƒ
ƒ
ƒ
00
0.7*0.7=0.49
01
0.7*0.3=0.21
10
0.3*0.7=0.21
11
0.3*0.3=0.09
Výsledné kódování:
2 znaky
pref. kód
0
0
0
0.3
1
0.51
1
1
00
→ 0
01
→ 10
10
→ 11
11
→ 111
Úspěšnost: 1.6 znaků na 2 znaky zdroje. L = 0.49 ⋅1 + 0.21 ⋅ 2 + 0.21 ⋅ 2 + 0.09 ⋅ 3 = 1.6
Techniku lze použít i pro nebinární zdroje. Pro rostoucí n se lze libovolně přiblížit
maximální možné kompresi dané entropií zdroje, platí totiž: lim n→∞ L = H ( X )
Při nezávislosti znaků tedy neexistuje algoritmus s lepší bezeztrátovou kompresí než H.A.
Vzájemná závislost znaků
ƒ
ƒ
ƒ
ƒ
V minulé přednášce: entropie přirozeného jazyka H ≈ 4.1
Maximální entropie pro rovnoměrnou distribuci P všech 27 písmen: H ≈ 4.8
Tj. redundance r ≈ 1-4.1/4.8 ≈ 14%. Tak nízká redundance by připouštěla velmi malou
možnost komprese. Přirozený jazyk lze ale komprimovat značně. V čem je tedy chyba?
Přirozený jazyk není sekvence vzájemně nezávislých znaků! Jde o příklad systému, kde
neplatí podmínka P(zm | zm-1,zm-2, ...) = P(zm) nezávislosti znaku na předešlých znacích.
ƒ
Systémy se závislostí následných stavů lze modelovat Markovským modelem:
ƒ M.m. řádu n je distribuce P(zm | zm-1,zm-2, ..., zm-n) – „stacionární“ - nezávislá na m
ƒ a počáteční podmínka – distribuce P(z)
ƒ Jde vlastně o model dynamiky stochastického systému (m lze chápat jako diskr. čas).
ƒ
Příklad: M.m. pro binární systémy: binární abeceda zi ∈ {0,1}, řád n = 1
P(1|0) = 0.8
P(0|0) = 0.2
0
1
P(0) = 0.5
P(0) = 0.5
P(1|0) = 0.3
P(1|1) = 0.7
“stochastický
automat“
Vzájemná závislost znaků
ƒ
ƒ
ƒ
ƒ
Pro přirozený jazyk: 27 stavů a 272 přechodů (pro řád 1).
Konstrukce modelu: pravděpodobnostní distribuce nutno odhadnout ze skutečných textů.
Náhodná simulace vývoje systému z M.m.: průchod stavy s náhodnými přechody dle
pravděpodobností zadaných modelem.
Příklady náhodných simulací z M.m. jazyků:
ƒ řád 1, angličtina:
OUCTIE IN ARE AMYST TE TUSE SOBE CTUSE...
ƒ řád 2, angličtina:
HERE AREAT BEIS HEDE THAT WISHBOUT SEED DAY OFTE AND
HE IS FOR THAT LOOTS WILL AND GIRLS DOLL WILL SAYS...
ƒ řád 3, francouzština: DU PARUT SE NE VIENNER PERDENT LA TET...
ƒ
Neuspořádanost systému se závislostmi je dána
podmíněnou entropií řádu n:
H n ( Z m | Z m −1 , Z m − 2 ,..., Z m − n ) = ∑ ∑ ...∑ P ( z m −1 , z m − 2 ,..., z m − n ) H ( Z m | z m −1 , z m − 2 ,..., z m − n )
z m−1 z m−2
z m−n
ƒ H1(angličtina) ≈ 4.42, H15(angličtina) ≈ 2.1, H100(angličtina) ≈ 1.3
ƒ ... tím se rozpor vysvětluje!
ƒ
Kompresní metody pro systémy se závislostní strukturou jsou mimo rámec KUI.
Detekce a opravy chyb
ƒ
ƒ
Komunikační kanál ovlivněn šumem, pokud H(X|Y) ≠ 0 ≠ H(Y|X). Nastávají chyby přenosu.
Opakovaný kód: jednoduchá metoda rozpoznání chyb v přenosu. Příklad:
Binární
zdroj
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
Kódování
0 → 00
1 → 11
Binární
kom. kanál
Dekódování
00 → 0
11 → 1
01, 10 → chyba!
Cíl
Pro n násobné opakování možno detekovat až n-1 chybných bitů v jednom slově. Při
dostatečném n je ale možno již při dekódování chyby opravovat. Příklad pro n = 3:
Dekodér přiřazuje došlé n-tici nejbližší
Dekódování s opravou chyb
přípustné slovo, ve smyslu Hammingovy
000, 001, 010, 100 → 0
vzdálenosti (tj. počtu rozdílných bitů).
111, 110, 101, 011 → 1
Při n násobném opakování lze opravit < n/2
chyb v jednom slově. Pozn.: n liché, jinak opravy nejednoznačné!
Opravami chyb snižujeme nejednoznačnost přenosu, tedy H(X|Y).
Zatímco kompresí jsme redundanci snižovali, opakováním ji zvyšujeme.
Hádanka: Opravdu? Počítejme na příkladu:
ƒ Zdroj X: P(0) = 0.5, P(1) = 0.5, tedy H(X) = 1 a r = 0%
ƒ Opakovaný kód k: 0 → 00 1 → 11, tedy znovu P(0) = 0.5, P(1) = 0.5 a r = 0%
ƒ Jak to, že se nezvýšila redundance r ? Vysvětlete!
Rekapitulace
ƒ
ƒ
Kódováním nyní umíme zvýšit T(X:Y) = H(X) – H(X|Y) na T(X*:Y*) buďto:
Kompresí, tedy úpravou vlastností zdroje: H(X*) > H(X)
Zdroj
ƒ
X
Kodér
X*
T(X*:Y*)
Komunikační
kanál
Y*
Dekodér
Y
Cíl
Opravou chyb, tedy úpravou vlastností kanálu: H(X*|Y*) < H(X|Y)
T(X*:Y*)
Zdroj
ƒ
ƒ
ƒ
X*
Kodér
X
Komunikační
kanál
Y
Dekodér
Cíl
Y*
Obě metody mohou být ale navzájem protichůdné:
H(X) upravujeme změnou P(x). V důsledku symetrie T(X:Y) = H(X) – H(X|Y) = H(Y) – H(Y|X),
kde H(Y|X) závisí na P(x). Úpravou zdroje tedy obecně ovlivňujeme i chybovost kanálu.
ƒ Toto naštěstí neplatí v obvyklém případě tzv. symetrického kanálu (viz dále).
Opravou chyb naopak zvyšujeme „redundanci“, přestože to náš model redundance
nedokáže zachytit: vzhledem k statistické závislosti v opak. kódu platí H(X) = H(X*).
ƒ Takto způsobenou redundanci můžeme ale formálně zachytit při výpočtu rychlosti
přenosu informace (viz dále).
Rychlost a kapacita kanálu
ƒ
Rychlost přenosu informace závisí na T(X:Y) a na fyzické rychlosti přenosu 1 bitu v:
R = v ⋅T ( X : Y )
ƒ
ƒ
ƒ
[bit.s-1]
(„Redundanci“ v opakovaných kódech můžeme formálně zachytit snížením rychlosti
přenosu jednoho bitu zdroje, tj. v* = v / n, neboť k jeho přenosu je vyslat n bitů skrz k.k.)
Chceme-li popsat kvalitu samotného komunikačního kanálu, potřebujeme veličinu
nezávislou na konkrétním zdroji a případné kompresi dat, tj nezávislou na distribuci P(x).
Kapacita komunikačního kanálu je definována jako maximální rychlost přenosu
informace přes všechny možné distribuce P(x) znaků zdroje:
C = v ⋅ max P ( X ) T ( X : Y )
ƒ
ƒ
ƒ
[bit.s-1]
Pro kanál bez šumu: H(X|Y) = 0, tedy T(X:Y) = H(X) a C = v maxP(X) H(X)
Kapacita kanálu bez šumu je tedy dána rychlostí přenosu maximálně komprimovaných
dat (signálu).
Kanál bez šumu nejlépe využijeme maximální kompresí kódu zdroje.
Kapacita binárního symetrického kanálu
ƒ
ƒ
ƒ
ƒ
ƒ
Obecně je obtížné vypočítat maxP(X) T(X:Y). Častým případem v přenosu informace je
binární symetrický kanál, kde je výpočet jednoduchý.
Binární symetrický kanál: platí Pr(y = 0|x = 0) = Pr(y = 1|x = 1) = p
Šum tedy stejnou měrou narušuje oba zdrojové znaky. Pravděpodobnost chyby = 1-p.
Výpočet maxP(X) T(X:Y) = maxP(X) [H(X) –H(X | Y)]
= maxP(X) [H(Y) –H(Y | X)]
X=0
Y=0
p
1-p
Pro H(Y | X) platí:
H (Y | X ) = −∑ P( x)∑ P( y | x) log 2 P( y | x) =
1-p
x
y
= −∑ P ( x)[ p log 2 p + (1 − p ) log 2 (1 − p )] =
x
= −[ p log 2 p + (1 − p ) log 2 (1 − p )]∑ P( x) =
x
= −[ p log 2 p + (1 − p ) log 2 (1 − p )]⋅1
ƒ
ƒ
ƒ
ƒ
H(X | Y) zde nezávisí na P(x) ani P(y) .
H(Y) lze tedy maximalizovat zvlášť.
Maximum H(Y) je log2 2 = 1.
Kapacita je tedy:
C = v [1 + p log2 p + (1-p) log2 (1-p)]
Dosahuje maxima pro p = 1 i p = 0. Interpretujte!
X=1
p
Y=1
Souhrn přednášky
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
ƒ
Stavy dvou různých systémů mohou být navzájem závislé v důsledku přenosu
informace.
Přenos informace modeluje kybernetika konceptem komunikačního kanálu.
Vlastnosti komunikačního kanálu určují sílu informační vazby mezi dvěma systémy, která
je kvantifikována hodnotou vzájemné informace T(X:Y).
Vzájemná informace mezi náhodnými veličinami X a Y je rozdíl marginální entropie H(X) a
podmíněné entropie H(X|Y).
Při modelování přenosu informace obvykle jeden systém označujeme jako zdroj a druhý
jako cíl (příjemce). Stavy jsou reprezentovány znaky, posloupnosti znaků jsou slova.
Převod slov zdroje na slova přenositelná komunikačním kanálem zajišťuje kódování.
Jednoznačně dekódovatelné jsou kódy s pevnou délkou slova a kódy prefixové.
Vhodným kódováním je možno zlepšit informační vazbu mezi zdrojem:
ƒ kompresí (např. použitím Huffmanova algoritmu)
ƒ detekcí resp. opravou chyb přenosu (např. použitím opakovaného kódu)
Maximální možná komprese (za předpokladu vzáj. nezávislosti vysílaných znaků) je
určena entropií zdroje.
Rychlost přenosu informace komunikačním kanálem je součinem vzájemné informace
T(X:Y) a fyzické rychlosti přenosu jednoho bitu.
Kapacita komunikačního kanálu je maximální možná rychlost přenosu informace přes
všechny možné distribuce P(x) znaků zdroje.

Podobné dokumenty

Etiopatogeneze atopické dermatitidy

Etiopatogeneze atopické dermatitidy Alopecia areata, lysivost dvorcová V těchto uvedených formách alopeciae areatae kštice máme příležitost viděti nejen ložisko už vytvořené, ale hlavně ložiska, která se teprve tvoří a která se šíří...

Více

denní menu - Rajka

denní menu - Rajka Jelzin višeň , jablko Captain Morgan

Více

slajdy - Jan Outrata

slajdy - Jan Outrata změna zdrojové abecedy na k-tice (nezávislých) symbolů z původní abecedy A pro přiblížení se entropii ale zvyšuje velikost abecedy, a tím i Huffmanova stromu, na |A|k , např. pro p1 = 0.95, p2 = 0....

Více

Logika tříd a relací

Logika tříd a relací který je pro sylogistiku typický (podrobněji viz kapitola 3) Subkontrárnost: Podobně jako v předchozím případě platí, že kdyby byly oba částečné soudy nepravdivé, musel by být subjekt opět prázdným...

Více

Královské rošády

Královské rošády v tomto sloupci žádnou kartu, eventuálně jen Dvojníka bez čísla, nemá nárok na zisk Cílové karty. Má-li hráč ve sloupci pouze Převlek, tak má s jeho hodnotou

Více

ZÁHADA OBRAZU, KTEROU NEUMÍ SOUČASNÁ VĚDA

ZÁHADA OBRAZU, KTEROU NEUMÍ SOUČASNÁ VĚDA ozřejmuje se nám nejen, že byla vzniku obrazu přítomná, ale také, že stála vedle biskupa Zumarragy, aniž ji ovšem kdokoli viděl. Plášť se pak zachoval jako inverzní barevný film ve fotoaparátu a ne...

Více

Rozhodovací stromy - Algoritmus BIRCH a jeho varianty pro

Rozhodovací stromy - Algoritmus BIRCH a jeho varianty pro nominální). Dále máme jednu závislou proměnnou, která také může být kategoriální (nominální i ordinální) nebo spojitá. Výsledkem algoritmu jsou binární stromy, protože jsou zde přípustné pouze otáz...

Více