AZ INFORMÁCIÓELMÉLET ALAPJAI 7 E Részletek bben a feezetben néhány alavető tételt serünk eg a hírközlés nforácóelélet alaaból. Defnáln foguk az nforácót, at eddg csak az üzenetek sznonáaként használtunk. FORRÁSKÓDOLÁS Egy kézenfekvő ötlet a forrás üzenetenek töörítésére olyan változó hosszúságú kódszavakat használn, aelyek kelégítk a következő egyenlőtlenség-láncot: log l log < + tehát vagy éen anny bnárs száegyet használn, nt a szbólu recrokvalószínűségének ("egleetés tényezőének") logartusa - aennyben ez egész szá - vagy edg az ezt követő egész száot. Ez az ötlet azért gyüölcsöző, ert kszáítva a lánc egyes taganak az átlagát (várhatóértékét), a következőt kauk: log l < log + = = = Az összefüggés baloldalán lévő átlagot entróának hívuk és H(P)-vel elölük, a közéső tag az átlagos kódszóhosszúság és a ele legyen L(P), íg a obboldalon nylván H(P)+ áll. Ilyódon egkatuk a forráskódolás Shannon által kondott első tételét, csak sanos ég azt ne tuduk, hogy a fent ódon választott hosszúságú kódszavak alkothatnak-e egy ú.n. llanatkódot. A llanatkód azt elent, hogy egyk kódszó se elee, kezdete valaely ásk kódszónak. Arra terészetesen szükség van, hogy a keletkező kód llanatkód legyen, hszen ellenkező esetben a kódszavak határanak elzésére tovább szbóluokat kellene alkalazn, a érvénytelenné tenné a fent kszáított átlagos szóhosszúságot. Például bnárs esetben csak egyetlen egységny hosszúságú kódszó lehet, éldául az ert az összes többnek ekkor a -val kell kezdődne, és több, nt egy bnárs száegyet kell tartalazna, lyódon az -es ne lesz a kezdetük. A legszeléletesebb ódszer llanatkódok szerkesztésére a gyökeres fa használata. A ellékelt ábra utat egy lyen bnárs fát (csuán két szntben), ahol a közös gyökérből nduló ágakat nden elágazásnál (bnárs fa ága ndg kétfelé ágaznak el) egelölük a bnárs szbóluokkal. Ha a gyökértől az ágak entén haladva összeolvassuk a szbóluokat, akkor az ágvégeken, a leveleknél olyan bnárs száokat, kódszavakat kaunk, aelyek llanatkódok. Persze ne kell feltétlenül valaenny ág entén
nforácóelélet alaok elenn a végég, korábban s egállhatunk és letörhetük az ág folytatását. Az így kaott kódszavak rövdebbek lesznek, és továbbra se lesz egyk se elee valaely ásknak. Ennek alaán egyszerűen választ adhatunk arra a kérdésre, hogy hány lyen kódszót helyezhetünk el a fán. Mvel ndegyk sznten dulázódk az ágak száa, ezért aennyben a fa teles, akkor nylván kettőnek a sznt-száal, elöle N, egegyező hatványa lesz a levelek, azaz a kódszavak száa. Ha leetszünk egy ágat az -edk sznten, akkor az előbbek szernt ezzel eltávolítunk egy olyan bnárs részfát, aelynek N- szne van. A etszésnél elhelyezhetünk egy levelet, azaz kódszót. Ebben a gondolatenetben ersze leetszhetük az ágvégen lévő levelet s, ad de helyezünk egy kódszót, tehát valóában ne csökkentük a teles fát. Végül hány kódszót helyezhetünk el összesen? Nylván ne többet, nt a teles fa összes levelenek a száa, azaz, ha l -vel elölük a kódszavak hosszát, a terészetesen egyenlő a fa szntének a sorszáával, ahová a kódszót helyezzük, akkor a következő összefüggést kauk: N = N Az egyenlőtlenség ndkét oldalát elosztva -el, a Kraft egyenlőtlenséget kauk a bnárs esetre: = N l l Ez az egyenlőtlenség szükséges és elégséges feltétele annak, hogy egy kód az darab, egyenként l hosszúságú kódszóval, llanatkód legyen. Végül, ha fgyelebe vesszük, hogy r-árs esetben a fa nden sznten r felé ágazk, akkor az egyenlőtlenségben a -őt r-re kell cseréln. Az entróa axua P : = log -ként defnált entróa, nt a eórátlan forrás által = szbóluonként átlagosan kbocsátott nforácó a axáls értékét egyenletes A H( ) eloszlás esetén, azaz = ellett ér el, és értéke log. Ennek egyszerű bzonyítását utatuk be az alábbakban. Száítsuk k a H( P ) log különbséget! H( P ) log= log log= log log = = = ahol a ásodk tagban fgyelebe vettük, hogy a következőt kauk: =. A két szuát összevonva = H( P ) log = log = Használuk fel a logartus függvénynek egy közsert tuladonságát, at a ellékelt ábrán s szeléltettünk:
ln x x vagy ln x x ln x Mvel log x =, a fent ln különbségre kauk: H( P ) log = ln ln = Illetve alkalazva az első egyenlőtlenséget: H( P ) log ln - - -3-4 -5 = ln = = nforácóelélet alaok x- ln x 7..ábra Az ln x függvény = = Az entróa tehát axu log értékű lehet, aely értéket tényleg el s ér, ha =, ert az ln függvény és az egyenes felhasznált vszonya szernt x= esetén egyenlőség áll fenn. CSATORNAKÓDOLÁS A CSATORNAKAPACITÁS A forráskódolásnál bevezetett entróa értelezésének kteresztése alaán konstruálunk egy kfeezést a csatornán átutó nforácó ennységére. Az nforácós csatornát íruk le a beenetén lévő A = {a}, =,,...,; beenet abc-vel, a kenetén lévő B = {b}, =,,...,q; kenet abc-vel, valant a Pb ( a) = P átenet-valószínűségekkel. a a. a P(b a ) 7.. ábra A csatornaodell Az átenet-valószínűségek kényelesen kezelhetők átrx elrendezésben: P P... P q P P = P... P q...... P P... Pq Ha beenet szbóluokat választunk P( ) = ( P( ), P( ),..., P( )) ) b b. b q A a a a valószínűséggel, akkor azok a csatornán átutva kenet szbóluokat eredényeznek P( B) = P( b), P( b),..., P( b q ) valószínűséggel. A kenet ( szbóluok valószínűséget egyszerűen eghatározhatuk a beenet szbóluok valószínűségevel és az átenet-valószínűségekkel: P( B) = P( A) P (7.) x 3
nforácóelélet alaok A továbbakban feltételezzük, hogy a P( A ) a-ror valószínűség-eloszlás és a P csatornaátrx adott, tehát a P( B ) kenet eloszlás a (7.) alaán száítható. A beenet eloszlásból és a csatornaátrxból kszáíthatuk az együttes és az ú.n. a-osteror valószínűségeket: P( a, b ) = P( b a ) P( a ) = P( a b ) P( b ). (7.) P( b a) P( a) P( a b) = = P( b ) P( b a) P( a), P( b a ) P( a ) = Az a-osteror valószínűségekre száíthatunk egy entróát, ugyanúgy, ant azt az a-ror valószínűségeknél tettük: H( A)= P( a)log P( a), H( A b )= P( ab )log A A P( ab ). Ant a (7.4)-es első egyenlete egada, hogy az A forrás szbóluanak leírására átlagosan hány bt kell, úgy a ásodk egyenlet azt onda eg, hogy átlagosan hány bt kell az A forrás szbóluanak ellezésére akkor, ha a csatorna kenetén a b szbóluot észleltük. (7.3) (7.4) Nylván gazából arra vagyunk kíváncsak, hogy bárelyk kenet szbólu egfgyelése után átlagosan hány bttel írhatók le a beenet szbóluok. Ehhez sznte önként adódk az ötlet, száítsuk k az átlagos a-osteror entróát: H( A B)= P( b) H( A b). (7.5) B Ezt a ennységet feltételes entróának nevezk, az eredet angol neve edg equvocaton. Shannon forráskódolás tételének általánosításával beláthatuk, hogy a feltételes entróa egada a beenet szbóluok eghatározásához átlagosan szükséges btek száát, aennyben egfgyelhetük az általuk létrehozott kenet szbóluokat. Ilyen ódon terészetesen hangzk, hogy a kenet szbóluok egfgyelésekor kaott nforácó előállítható egy különbségként, aelyben a beenet szbóluok nforácóából le kell vonn a kenet szbóluoknak a beenetekre vonatkozó nforácóát, azaz az ú.n. kölcsönös nforácó a következő lesz: I( A;B)= H( A)- H( A B ). Értelezzük ég egy kcst tovább ezt a kfeezést! Nézzük a lehetséges szélső határokat! Lássuk be, hogy a kölcsönös nforácó és H(A) között változhat! Nylván akkor lesz nulla, ha a feltételes entróa egyenlő a beeneten lévő forrás entróáával. Mt s elent ez? Mként ár fentebb érteleztük, ez azt elent, hogy a kenet szbóluok egfgyelése után átlagosan ég ugyananny bt kell a beenő szbóluok ellezéséhez, nt ha set se tettünk volna. Ez tehát egyenértékű a lehető legrosszabb csatornával, vagy ontosabban egvzsgálva (egyszerű ugyan, de tt ost ne tesszük eg) azt elent, hogy a kenő és a beenő szbóluok függetlenek. A kölcsönös nforácó ásk szélső értékét edg akkor (7.6) 4
nforácóelélet alaok kauk, ha set se kell levonn, azaz H(A B)=. Ez edg azt elent, hogy a kenet szbóluok egfgyelése után ár se lusz nforácóra nncs szükségünk ahhoz, hogy elleezzük a beenet szbóluokat. A nylván egyenértékű azzal, hogy deálsan ó a csatorna, ert a beeneten lévő szbóluokat aradéktalanul ellezk a kenet egfgyelésenk. A fentek alaán logkus defnícó a csatorna átvtel kéességére, ontosabban kaactására a kölcsönös nforácó lehető legnagyobb értékét venn. Az eddgekből vlágos, hogy a kölcsönös nforácó az a-ror valószínűségeknek és a csatorna átenet-valószínűségenek a függvénye. Egészen terészetes, hogy a csatorna ellezését függetlenítsük a beenetére kacsolt forrást ellező a-ror entróától, tehát: C = ax I( AB ; ) = ax [ H( A) - H ( AB )]. P( A) P( A) Példaként érdees egvzsgáln egy gen egyszerű, de nagyelentőségű esetet, a bnárs szetrkus csatornát (BSC). Legyen a forrás eloszlása P és P = - P, a BSC-t ellező átenet-valószínűségek edg, lletve -, azaz a téves, lletve a helyes átenet valószínűsége. Ezt szeléltettük a 7.3. ábrán. Aennyben a fent ellezőket behelyettesítük a (7.7) összefüggésbe, akkor az derül k, hogy nd a két tagban szereeln fognak az a-ror valószínűségek, a nehézkessé tesz a axu egkeresését. Szerencsére könnyen k lehet utatn, hogy a kölcsönös nforácó kfeezése gen érdekes és hasznos szetra tuladonságokkal rendelkezk, nevezetesen: P P I( A;B) = H( A)- H( A B) = I( B; A)= H( B)- H( B A). Száítsuk k az utóbb kfeezésben szerelő két tagot külön-külön: H( B ) = P( b= ) log + Pb ( = ) log Pb ( = ) - - 7.3 ábra A BSC Pb ( = ) H(B) akkor ér el a axuát, ha a kenet "egyenletes eloszlású", azaz P(b=)=P(b=)=/: H( B ) = 5, log +, log = [ ] 5, 5 5, bt Illusztrácóként beutatuk az entróa-függvényt bnárs esetre a 7.4 ábrán. (7.7) (7.8) 7.4 ábra A bnárs enróa-függvény: Folytatva a BSC kaactásának kszáítását, a feltételes entróa következk, de ost B A esetén! Ezt edg egyszerűen a (7.4) és a (7.5) összefüggések alaán az alábbak.9.8.7.6.5.4.3...5 5
nforácóelélet alaok szernt száíthatunk k: q A = = H( B A) = P( a) H( B a) = P( a ) P( b a )log P( b a ) A bnárs esetre nagyon egyszerű a szuák kszáítása, hszen ndegykben csak két tag szereel: H( B A ) = PP( b= a = ) log + PP( b= a = ) log + Pb ( = a= ) log Pb ( = a= ) + Pb ( = a= ) log Pb ( = a= ) Pb ( = a= ) + Pb ( = a= ) Az tt részletesen felírt átenet-valószínűségekre korábban ár bevezettünk eleket: Ezzel a feltételes entróa: P( b= a = ) = ; P( b= a = ) = Pb ( = a= ) = ; Pb ( = a= ) = H( B A ) = P ( ) log + log P log ( ) log ( ) + + ( ) = = ( P + P) log + ( ) log log ( ) log ( ) = + ( ) ahol vlágosan látszk, hogy H(B A) független a forrás valószínűségeloszlásától, tehát a kölcsönös nforácóra keresett axu a BSC esetén a következő lesz: C = log ( ) log ( ) A BSC kaactását ábrázoltuk a bthbarány függvényében az alább ábrán. Terészetesen se egleő nncs a görbében, hszen az eredény gen szoros kacsolatban van a bnárs entróa-függvénnyel..9.8.7.6.5.4.3.. C.5 7.5. ábra A Bnárs Szetrkus Csatorna kaactása 6
nforácóelélet alaok 7