Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaÖdön Horváth Megváltozta több, mint 10 éve
1
Információelmélet 1. Előadás Dr. Nagy Szilvia Széchenyi István Egyetem Győr, 2006 tavaszi félév
2
Az információelmélet kezdetei Már az ősember is… Boltzmann és az entrópia R. V. L. Hartley információdefiníciója C. E. Shannon általánosabb információdefiníciója, entrópia
3
Matematikai kitérő – A valószínűségszámítás alapfogalmairól Esemény: sokszor végrehajtható kísérlet eredménye. Kísérlet, ill. kimenetel lehet például: Egy dobozból golyókat veszünk ki, és vizsgáljuk a színüket. Esemény, hogy piros, zöld, lila, … golyót találtunk. Fej vagy írást játszunk egy érmével. Esemény: a fej vagy az írás oldal van felül. Minden kedden reggel 7 és 8 óra között vizsgáljuk egy buszmegállóban a megálló buszok számát. Esemény: 0 busz állt meg, 1, 2, … busz állt meg. Egy hírközlési csatornára bocsátunk egy bizonyos jelet és vizsgáljuk a kimeneti jelet. Esemény: a vett jel azonos a leadottal, a vett jel amplitúdója azonos a leadottéval, de a frekvenciája kétszeres, …
4
Az A esemény ellentett eseménye a kísérlet minden A-n kívüli kimenetele. Jelölés: A. Egy A esemény valószínűsége: nagyon sokszor elvégezve a kísérletet azon kísérletek száma, amikor A bekövetkezik az összes kísérlet száma A valószínűség jellemzői: 1 ≥ p(A) ≥ 0, az 1 valószínűségű esemény biztosan bekövetkezik, a 0 valószínűségű sohasem következik be. p(A)+p(A) = 1. Matematikai kitérő – A valószínűségszámítás alapfogalmairól p(A) =
5
Egy dobozban 15 sárga, 6 lila, 42 fehér és 11 kék golyó van. Mi a valószínűsége, hogy ha egyetlen golyót veszünk ki a dobozból (nem odanézve), akkor az kék lesz: sárga lesz: nem sárga lesz: kék vagy lila lesz: piros lesz: Matematikai kitérő – A valószínűségszámítás alapfogalmairól
6
Egy A és egy B esemény szorzatán azt értjük, ha A és B is bekö- vetkezik. A és B együttes bekövetkezési valószínűsége: p(A∙B ). Egy A és egy B esemény összege az, ha vagy A, vagy B (vagy mind- kettő) bekövetkezik. Valószínűsége: p(A+B ). Az A és B események függetlenek, ha semmiféle befolyással nincs A-nak a bekövetkezése a B bekövetkezésére. Ekkor p(A∙B )= p(A ) ∙ p(B ). Egyéb esetekben p(A∙B )≠ p(A) ∙ p(B ), csak azt lehet tudni, hogy p(A+B ) = p(A) + p(B) – p(A∙B ), és p(A∙B ) ≤ p(A ) ∙ p(B ). Matematikai kitérő – A valószínűségszámítás alapfogalmairól
7
Egy dobozban 15 sárga, 6 lila, 42 fehér és 11 kék golyó van. Mi a valószínűsége, hogy ha két golyót veszünk ki a dobozból (nem odanézve), akkor az 1. kék lesz, a 2. fehér: mindkettő sárga lesz: valamelyik sárga lesz: egyik sem lesz sárga: Matematikai kitérő – A valószínűségszámítás alapfogalmairól
8
Egy hírközlési csatorna bemenetén és kimenetén megjelenő jelek nem függetlenek egymástól. Ha B jelet vettünk akkor annak a valószínűsége, hogy A jel volt a csatorna bemenetén: A-nak B feltétel melletti feltételes valószínűsége Az is érdekes, hogy ha A jelet adok, milyen B kerül a csatorna kimenetére, ez B-nek A feltétel melletti feltételes valószínűségével, p( B|A )-val írható le. A kölcsönös és feltételes valószínűségek között fennáll: p(A∙B )=p(B ) ∙ p( A|B )= p(A ) ∙ p( B|A ) Matematikai kitérő – A valószínűségszámítás alapfogalmairól
9
Egy dobozban 15 sárga, 6 lila, 42 fehér és 11 kék golyó van. Mi a feltételes valószínűsége annak, hogy ha az első kihúzott golyó kék volt, akkor a második fehér: kék: nem kék: Mi annak a feltételes valószínűsége, hogy az első kék volt, ha a második kék: Matematikai kitérő – A valószínűségszámítás alapfogalmairól
10
Ha az eseményekhez számértékek rendelhetők, (pl. árammérés), akkor kíváncsiak lehetünk a kísérlet eredményének várható értékére. Legyen A={A 1, A 2, … A n } számhalmaz a kísérlet kimenetének értékkészlete, az A 1 kimenet valószínűsége p(A 1 ), … az A n -é p(A n ). Ekkor A várható értéke Az is érdekelhet minket, hogy átlagosan mennyire fog eltérni az eredmény a várhatóértéktől, ezt a szórással jellemezhetjük: Matematikai kitérő – A valószínűségszámítás alapfogalmairól
11
Az információ Az információ valamely véges számú, előre ismert esemény közül annak megnevezése, hogy melyik következett be. Alternatív megfogalmazás: az információ mértéke azonos azzal a bizonytalansággal, amelyet megszűntet. Hartley: m számú, azonos valószínűségű esemény közül egy megnevezésével nyert információ: I=log 2 m. (log 2 m kérdéssel azonosítható egy elem) Shannon: minél váratlanabb egy esemény, bekövetkezése annál több információt jelent. Legyen A={A 1, A 2, … A m } eseményhalmaz, az A 1 esemény valószínűsége p 1, … az A m -é p m. Ekkor az A i megnevezésekor nyert információ: Megjegyzés: ha p i =1/m, minden m-re, visszakapjuk Hartley definícióját.
12
Az információ Az információ tulajdonságai: 1.Csak az esemény valószínűségének függvénye. 2.Nem negatív: I ≥ 0 3.Additív: ha m = m 1 ∙m 2, I(m 1 ∙m 2 ) = I(m 1 ) + I(m 2 ) 4.Monoton: ha p i ≥ p j, akkor I(A i ) ≤ I(A j ) 5.Normálás: legyen I(A)=1, ha p(A)=0,5. Ekkor kettes alapú logaritmus használandó és az információegysége a bit. Megjegyzés: ha tízes alapú logaritmust (lg-t) használunk, a hartley, az egység. Ekkor a normálás: I(p=0,1)=1. Ha természetes alapú logaritmussal definiáljuk az információt (I=−ln p), akkor a natban mérjük az információt, a normálás pedig I(p=1/e)=1.
13
Az információ A forrásunk a következő üzenetet adta le: „ccndnddnnncdnndncdncdncdncdnnnncdcdncdcnnncdcccdcddc dccccnnn” (21 db „c”, 22 db „n”, 17 db „d”) mekkora az információtartalma a „c” szimbólum kibocsátásának? p(c)=21/(21+22+17)=21/60=0,35 I(c) = − log 2 0,35 = −ln 0,35/ln 2 = 1,51 A forrásunk a , , , , szimbólumokat bocsátja ki p =0,12, p =0,37, p =0,06, p =0,21, p =0,24 valószínűséggel. Mi az információtartalma annak a közlésnek, hogy a jelet adta? I( ) = − log 2 0,37 = − ln 0,37/ln 2 = 1,43
14
Az entrópia Az entrópia az információ várható értéke: Az entrópia tulajdonképpen annak a kijelentésnek az információtartalma, hogy az m db egymást kizáró esemény közül az egyik bekövetkezett. A p log 2 p kifejezés p=0 esetén: L’Hospital- szabály szerint
15
Az entrópia Az entrópia tulajdonságai: 1. Nem negatív: H( p 1, p 2, …, p m ) ≥ 0 2. Az események valószínűségeinek folytonos függvénye. 3. H( p 1, p 2, …, p m, 0 ) = H( p 1, p 2, …, p m ) 4. Ha p i = 1, a többi p k = 0, ( k=1, …, i−1, i+1,…, m ), akkor H( p 1, p 2, …, p m ) =0. 5. H( p 1, p 2, …, p m ) ≤ H( 1/m, 1/m, … 1/m ) 6. H( p 1, …, p k−1, p ℓ, p k+1, …, p ℓ−1, p k, p ℓ+1, …, p m ) = = H( p 1, p 2, …, p m ), k, ℓ ; azaz az entrópia szimmetrikus változóinak cseréjére.
16
A forrásunk a következő üzenetet adta le: „ccndnddnnncdnndncdncdncdncdnnnncdcdncdcnnncdcccdcddc dccccnnn” (21 db „c”, 22 db „n”, 17 db „d”) Mekkora az üzenet entrópiája? p(c)=21/60=0,35 p(n)=22/60=0,37 p(d)=17/60=0,28 H(c) = −0,35 log 2 0,35 = −0,35 ∙(ln 0,35/ln 2) = = −0,35∙(−1,51) = 0,53 H(n) = −0,37 log 2 0,37 = −0,37 ∙(ln 0,37/ln 2) = = −0,37∙(−1,43) = 0,53 H(d) = −0,28 log 2 0,28 = −0,28 ∙(ln 0,28/ln 2) = = −0,28∙(−1,84) = 0,51 Az entrópia
17
A forrásunk a , , , , szimbólumokat bocsátja ki p =0,12, p =0,37, p =0,06, p =0,21, p =0,24 valószínűséggel. Mennyi az entrópia? H( , , , , ) = −0,12 log 2 0,12 −0,37 log 2 0,37 − − 0,06 log 2 0,06 −0,21 log 2 0,21 −0,24 log 2 0,24 = = 0,37+0,53+0,24+0,47+0,49 = 2,1 Az entrópia
18
A kölcsönös entrópia Legyen A={A 1, …, A m 1 } a lehetséges leadott jelek halmaza, B={B 1, …, B m 2 } pedig a vehető jelek halmaza. Vizsgáljuk azt az összetett eseményt, hogy egy A-beli és egy B-beli esemény is bekövetkezik. A i és B j együttes bekövetkezési valószínűsége p i,j = p(A i ∙ B j ), a két esemény együttes bekövetkezésekor nyert információ I(A i ∙ B j )=−log 2 p(A i ∙ B j )=−log 2 p i,j. Mindig igaz a kölcsönös információra, hogy I(A i ∙ B j )≥ I(A i ), és I(A i ∙ B j )≥ I(B j ). A és B halmazok kölcsönös entrópiája:
19
A feltételes entrópia Legyen A={A 1, …, A m 1 } a lehetséges leadott jelek halmaza, B={B 1, …, B m 2 } pedig a vehető jelek halmaza. Minden A-beli esemény bekövetkezése maga után von egy B-beli eseményt. A i -nek B j -re vonatkoztatott feltételes valószínűsége p(A i | B j ). Az A halmaz B halmazra vonatkoztatott feltételes entrópiája: Mivel p(A i ∙B j )=p(B j ) ∙ p( A i |B j ) minden i-re és j-re, H(A ∙ B )= H(B) ∙ H(A|B )= H(A) ∙ H(B|A ). Így H(A) ≥ H(A∙B) ≥ 0
20
Shannon hírközlési modellje A hírközlés során egy üzenetet juttatunk el egy tér- és időbeli pontból egy másikba. forrás/adó kódoló csatorna dekódoló nyelő/vevő tényleges forrás mintavételezés, kvantálás, forráskódolás Lehet folytonos jel A forrás jelét diszkrét jellé alakítja át és tömöríti
21
Shannon hírközlési modellje A hírközlés során egy üzenetet juttatunk el egy tér- és időbeli pontból egy másikba. forrás/adó kódoló csatorna dekódoló nyelő/vevő Csatornakódolás avagy hibajavító kódolás: lehetővé teszi a zajos csatornán való biztonságos(abb) üzenetátvitelt, a keletkező hibák jelzését kijavítását. (Esetleg a modulátor is ide sorolható.)
22
Shannon hírközlési modellje A hírközlés során egy üzenetet juttatunk el egy tér- és időbeli pontból egy másikba. forrás/adó kódoló csatorna dekódoló nyelő/vevő modulátorcsatorna demodulátor, döntő Átalakítja a kódolt üzenetet a csatornán átvihető jellé. torzul a jel Eldönti, hogy a lehetséges leadott jelalakok közül melyiket adhatták.
23
Shannon hírközlési modellje A hírközlés során egy üzenetet juttatunk el egy tér- és időbeli pontból egy másikba. forrás/adó kódoló csatorna dekódoló nyelő/vevő Kijavítja és/vagy jelzi a vett jelek hibáit. Elvégzi a csatornakódolás inverz műveletét.
24
Shannon hírközlési modellje A hírközlés során egy üzenetet juttatunk el egy tér- és időbeli pontból egy másikba. forrás/adó kódoló csatorna dekódoló nyelő/vevő vevő a forráskódolás inverze a helyreállított üzenetet „kitömöríti” értelmezi az üzenetet
25
Forráskódolás A következőkben olyan forrásokkal fogunk foglalkozni, amelyek kimenetén véges sok elemből álló A ={A 1, …, A n } halmaz elemei jelenhetnek meg. Az A halmazt ekkor forrásábécének nevezzük. Az A elemeiből képezett véges A (1) A (2) A (3) … A (m) sorozatok az üzenetek. (m tetszőleges természetes szám) A lehetséges üzenetek halmaza A. A kódolt üzenetek egy B ={B 1, …, B s } szintén véges halmaz elemeiből épülnek fel, B a kódábécé. A B elemeiból álló véges hosszúságú B (1) B (2) B (3) … B (m) sorozatok a kódszavak. A lehetséges kódszavak halmaza B.
26
Forráskódolás: egyértelműen dekódolható kódok Az illetve függvényeket (forrás)kódoknak nevezzük. Az f leképezés a forrás egy-egy szimbólumához rendel egy-egy kódszót, az F ennél általánosabb. Egy f forráskód egyértelműen dekódolható, ha minden egyes B -beli sorozatot csak egyféle A -beli sorozatból állít elő. (A neki megfeleltethető F invertálható. Az nem elég, hogy f invertálható.) Az állandó kódszóhosszú kódok egyértelműen dekódolhatók, megfejthetők, de nem elég gazdaságosak. Egy f betűnkénti kód prefix, ha a lehetséges kódszavak közül egyik sem áll elő egy másik folytatásaként. prefixposztfix a000 b1001 c110011 d111001111110
27
Forráskódolás: a források jellemzése, forrásentrópia Vizsgáljuk a forrás egymást követő N szimbólumkibocsátását: az A (1), A (2), …, A (N) sorozatot. A forrás emlékezet nélküli, ha A (i) független A (i−1) -től, i. A forrás stacioner, ha A (i) A i, és p( A (i) = A j ) = p j, i, j. Az A forrás forrásentrópiája: Nem keverendő -vel, a forrásábécé entrópiájával.
28
Forráskódolás: a kódszavak átlagos hossza Az olyan kódokat, amelyek különböző A-beli szimbólumokhoz más és más hosszúságú kódszavakat rendelnek, változó szóhosszúságú kódoknak nevezzük. Az B -beli sorozat, azaz kódszó hossza ℓ i. Egy f kód átlagos szóhossza ℓ i várható értéke: AiAi kódszóℓiℓi pipi L(A)L(A) α010,42 1,91 β0120,34 γ01130,15 δ011140,09
29
Forráskódolás: a kódszavak átlagos hossza Az olyan kódokat, amelyek különböző A-beli szimbólumokhoz más és más hosszúságú kódszavakat rendelnek, változó szóhosszúságú kódoknak nevezzük. Az B -beli sorozat, azaz kódszó hossza ℓ i. Egy f kód átlagos szóhossza ℓ i várható értéke: AiAi kódszóℓiℓi pipi L(A)L(A) α01130,42 2,95 β011140,34 γ010,15 δ0120,09
30
Forráskódolás: a kódszavak átlagos hossza Az olyan kódokat, amelyek különböző A-beli szimbólumokhoz más és más hosszúságú kódszavakat rendelnek, változó szóhosszúságú kódoknak nevezzük. Az B -beli sorozat, azaz kódszó hossza ℓ i. Egy f kód átlagos szóhossza ℓ i várható értéke: AiAi kódszóℓiℓi pipi L(A)L(A) α011130,42 3,09 β01140,34 γ0110,15 δ020,09
31
Forráskódolás: a McMillan-egyenlőtlenség Minden egyértelműen dekódolható kódra igaz, hogy ahol s a kódábécé elemszáma n pedig a forrásábécéé.
32
Forráskódolás: a Kraft-egyenlőtlenség Legyen ℓ 1, ℓ 2, …, ℓ n N, s >1 egész, és legyen rájuk érvényes, hogy Ekkor létezik olyan prefix kód, amelynek kódábécéje s elemű, és az n elemű forrásábécé A 1, A 2, …, A n elemeihez rendelt kódszavak hossza rendre ℓ 1, ℓ 2, …, ℓ n.
33
Forráskódolás: a kódszavak átlagos hosszáról szóló tétel Minden egyértelműen dekódolható kódra Bizonyítás: A Jensen-egyenlőtlenség egy következménye, hogy ha p i ≥ 0, q i > 0, és
34
Forráskódolás: a kódszavak átlagos hosszáról szóló tétel Független i-től, állandó McMillan: ≤ 1
35
Forráskódolás: a kódszavak átlagos hosszáról szóló II tétel Létezik olyan prefix kód, melyre Bizonyítás: Legyenek ℓ 1, ℓ 2, …, ℓ n pozitív egész számok, melyekre
36
Forráskódolás: a kódszavak átlagos hosszáról szóló II tétel Létezik olyan prefix kód, melyre Bizonyítás: Legyenek ℓ 1, ℓ 2, …, ℓ n pozitív egész számok, melyekre
37
Forráskódolás: Shannon első tétele Minden A={A 1, A 2, …, A n } véges forrásábécéjű forráshoz található olyan s elemű kódábécével rendelkező kód, amely az egyes forrásszimbólumokhoz rendre ℓ 1, ℓ 2, …, ℓ n szóhosszúságú kódszavakat rendel, és Az olyan kódok, amelyekre ez teljesül az optimális kódok.
38
Információelmélet 2. Előadás Dr. Nagy Szilvia Széchenyi István Egyetem Győr, 2006 tavaszi félév
39
Forráskódolás A következőkben olyan forrásokkal fogunk foglalkozni, amelyek kimenetén véges sok elemből álló A ={A 1, …, A n } halmaz elemei jelenhetnek meg. Az A halmazt ekkor forrásábécének nevezzük. Az A elemeiből képezett véges A (1) A (2) A (3) … A (m) sorozatok az üzenetek. (m tetszőleges természetes szám) A lehetséges üzenetek halmaza A. A kódolt üzenetek egy B ={B 1, …, B s } szintén véges halmaz elemeiből épülnek fel, B a kódábécé. A B elemeiból álló véges hosszúságú B (1) B (2) B (3) … B (m) sorozatok a kódszavak. A lehetséges kódszavak halmaza B.
40
Forráskódolás: egyértelműen dekódolható kódok Az illetve függvényeket (forrás)kódoknak nevezzük. Az f leképezés a forrásábécé egy-egy betűjéhez rendel egy-egy kódszót. Egy f forráskód egyértelműen dekódolható, ha minden egyes B -beli sorozatot csak egyféle A -beli sorozatból állít elő. Az állandó kódszóhosszú kódok egyértelműen dekódolhatók, de nem elég gazdaságosak. Ha a gyakrabban előforduló A i kódábécébeli elemhez rövidebb kódszót rendelünk, mint a ritkább A j -hez, akkor már tömörítettük az üzenetet. Egy f betűnkénti kód prefix, ha a lehetséges kódszavak közül egyik sem áll elő egy másik folytatásaként.
41
Forráskódolás: a kódszavak hossza Az olyan kódokat, amelyek különböző A-beli szimbólumokhoz más és más hosszúságú kódszavakat rendelnek, változó szóhosszúságú kódoknak nevezzük. Az B -beli sorozat, azaz kódszó hossza ℓ i. A jó tömörítő eljárásokra tehát igaz, hogy ha p i ≥ p j, akkor ℓ i ≤ ℓ i. Ha az f bináris kód prefix, akkor a leggyakoribb forrásábécébeli elemhez fog a legrövidebb kódszó tartozni, a második leggyakoribbhoz eggyel hosszabb kódszó, … a két legritkábban előforduló betűhöz pedig azonosan hosszú kódszó fog tartozni, és csak az utolsó karakterben fog e két szó különbözni.
42
Forráskódolás: Huffman-kód A legrövidebb átlagos szóhosszú bináris prefix kód. 1. Valószínűségek szerint sorba rendez 2.A két legkisebb valószínűségű szimbólumot összevonja. Az összevont szimbólum valószínűsége a két eredeti szimbólum valószínűségének összege. 3.Az (1-)2. lépést addig ismétli, amíg egyetlen, 1 valószínűségű összevont szimbólumot nem kap. 4.A kapott gráf minden csomópontja előtti két élt megcímkézi 0- val és 1-gyel. 5.A kódfa gyökerétől elindulva megkeresi az adott szimbólumhoz tartozó útvonalat, kiolvassa az éleknek megfelelő biteket. A kapott bitsorozatot rendeli a szimbólumhoz kódszóként.
43
Forráskódolás: Huffman-kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5, A 6, A 7 }, elemeinek előfordulási valószínűsége rendre p 1 =0,17, p 2 =0,26, p 3 =0,07, p 4 =0,21, p 5 =0,10, p 6 =0,08 és p 7 =0,11. A2A2 0,26 0,320,420,581 A4A4 0,21 0,260,320,42 A1A1 0,17 0,21 0,26 A7A7 0,110,150,170,21 A5A5 0,100,110,15 A6A6 0,080,10 A3A3 0,07
44
Forráskódolás: Huffman-kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5, A 6, A 7 }, elemeinek előfordulási valószínűsége rendre p 1 =0,17, p 2 =0,26, p 3 =0,07, p 4 =0,21, p 5 =0,10, p 6 =0,08 és p 7 =0,11. A2A2 0,26 0,58 A4A4 0,21 0,421 A1A1 0,17 0,32 A7A7 0,11 0,21 A5A5 0,10 A6A6 0,08 0,15 A3A3 0,07 A 0 és 1 címkézése válastható, elágazásomként felcserélhető.
45
Forráskódolás: Huffman-kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5, A 6, A 7 }, elemeinek előfordulási valószínűsége rendre p 1 =0,17, p 2 =0,26, p 3 =0,07, p 4 =0,21, p 5 =0,10, p 6 =0,08 és p 7 =0,11. A2A2 0,26 A4A4 0,21 A1A1 0,17 A7A7 0,11 A5A5 0,10 A6A6 0,08 A3A3 0,07 Az átlagos kódszóhossz:
46
Forráskódolás: Huffman-kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5, A 6, A 7 }, elemeinek előfordulási valószínűsége rendre p 1 =0,17, p 2 =0,26, p 3 =0,07, p 4 =0,21, p 5 =0,10, p 6 =0,08 és p 7 =0,11. A kódhoz tartozó egyszerűsített bináris fa: A kiolvasás iránya
47
Forráskódolás: Huffman-kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5, A 6, A 7 }, elemeinek előfordulási valószínűsége rendre p 1 =0,17, p 2 =0,26, p 3 =0,07, p 4 =0,21, p 5 =0,10, p 6 =0,08 és p 7 =0,11. A2A2 0,26 0,320,420,581 A4A4 0,21 0,260,320,42 A1A1 0,17 0,21 0,26 A7A7 0,110,150,170,21 A5A5 0,100,110,15 A6A6 0,080,10 A3A3 0,07 A kiolvasás iránya
48
Forráskódolás: Huffman-kód Legyen a forrásábécé A={ , , , , , }, elemeinek előfordulási valószínűsége rendre p ( ) =0,10, p ( ) =0,05, p ( ) =0,12, p ( ) =0,25, p ( ) =0,40 és p ( ) =0,08. A2A2 0,40 0,601 A4A4 0,25 0,350,40 A1A1 0,120,130,220,25 A7A7 0,100,120,13 A5A5 0,080,10 A6A6 0,05
49
Forráskódolás: Huffman-kód Legyen a forrásábécé A={ , , , , , }, elemeinek előfordulási valószínűsége rendre p ( ) =0,10, p ( ) =0,05, p ( ) =0,12, p ( ) =0,25, p ( ) =0,40 és p ( ) =0,08. 0,40 0,601 0,25 0,350,40 0,120,130,220,25 0,100,120,13 0,080,10 0,05 A kiolvasás iránya
50
Forráskódolás: Huffman-kód Legyen a forrásábécé A={ , , , , , }, elemeinek előfordulási valószínűsége rendre p ( ) =0,10, p ( ) =0,05, p ( ) =0,12, p ( ) =0,25, p ( ) =0,40 és p ( ) =0,08. A kiolvasás iránya Az átlagos kódszóhossz:
51
Forráskódolás: Huffman-kód Legyen a forrásábécé A={ , , , , , }, elemeinek előfordulási valószínűsége rendre p ( ) =0,10, p ( ) =0,05, p ( ) =0,12, p ( ) =0,25, p ( ) =0,40 és p ( ) =0,08. A kódhoz tartozó bináris fa: A kiolvasás iránya
52
Forráskódolás: Huffman-kód Legyen a forrásábécé A={Б, Г, Д, Ж, З, И, К}, elemeinek előfordulási valószínűsége rendre p Б =0,17, p Г =0,26, p Д =0,07, p Ж =0,21, p З =0,10, p И =0,08 és p К =0,11. Kódoljuk bináris Huffman- kóddal a Ж Г К Г Д И Б Д З З И Ж Г Б Ж З Д Б Д Г Г К üzenetet
53
Forráskódolás: Aritmetikai kód Legyen a forrásábécé elemszáma n, és m elemű blokkokat kódoljunk. 1.Felosztja a [0,1) intervallumot n diszjunkt részre, minden résznek megfeleltet egy-egy forrásábécébeli elemet. Célszerű a kis valószínűségű betűkhöz rövid, a gyakoriakhoz hosszú részintervallumot rendelni. 2.Kiválasztja a blokk soron következő karakterének megfelelő intervallumot. 3.Az új intervallumot felosztja ugyanolyan arányban, mint a [0,1)-et osztotta, és ugyanolyan sorrendben rendeli a részintervallumokhoz a lehetséges szimbólumokat. 4.A 2-3. lépéseket ismétli, amíg el nem fogy a blokk. 5.A végül maradt kis intervallumból kiválaszt egy (binárisan) jól leírható számot, az lesz a kódszó.
54
Forráskódolás: Aritmetikai kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5 }, elemeinek előfordulási valószínűsége rendre p 1 =0,18, p 2 =0,36, p 3 =0,11, p 4 =0,26 és p 5 =0,09. A kódolni kívánt blokkunk: A 2, A 2, A 1, A 4, A 1 A 3, A 4, A 5
55
Forráskódolás: Aritmetikai kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5 }, elemeinek előfordulási valószínűsége rendre p 1 =0,18, p 2 =0,36, p 3 =0,11, p 4 =0,26 és p 5 =0,09. A kódolni kívánt blokkunk: A 2, A 2, A 1, A 4, A 1
56
Forráskódolás: Aritmetikai kód Legyen a forrásábécé A={A 1, A 2, A 3, A 4, A 5 }, elemeinek előfordulási valószínűsége rendre p 1 =0,18, p 2 =0,36, p 3 =0,11, p 4 =0,26 és p 5 =0,09. A kódolni kívánt blokkunk: A 2, A 2, A 1, A 4, A 1 bináris tört alakban: 0011111011
57
Forráskódolás: Lempel—Ziv-algoritmusok Nem szükséges előre ismerni a kódolandó karakterek előfordulási valószínűségét. Az üzenet bolvasása során egy láncolt listát, ú.n. szótárat épít. Egy szótársornak 3 mezője van: m sorszám, n mutató és a karakter. A kódolt információ a sorszámokból álló sorozat lesz. A kódolás során a vevő is megkapja a szükséges információt, párhuzamosan építi a szótárat, vagy pedig a tömörített fájlban szerepel maga a szótár is.
58
Forráskódolás: LZ78 A szótár nulladik sora adott: m=0, n=0 a karakter pedig üres. A kódolás elején a megjegyzett sorszám n m = 0, az utolsó használt sorszám is m u =0. A kódoló a következő lépéseket ismétli, amíg el nem fogy az üzenet: Beolvassa a következő karaktert, amit nevezzünk „c”-nek –Ha egyáltalán nem szerepel a karakter a szótárban nyit neki egy új sort, a sor paraméterei: m=m u +1, n=0, a karakter „c”. A megjegyzett elem n m = 0 az utolsó sorszám m u =m u +1. Az üzenet ezen eleméhez rendelt kódszó: m. –Ha már szerepel a karakter a szótárban, akkor vizsgálja azokat a sorokat, amelyeknek a megjegyzett n m szerepel a mutató mezejükben. Ha talál olyant, amelynek a karaktermezejében „c” szerepel, annak a sornak az indexe lesz az új n m, m u nem változik. Ha nem talál olyan sort, amelyikben „c” a karakter, akkor nyit egy újat. A sorszám m=m u +1, a mutató n m, a karakter „c”. Az új megjegyzett sorszám 0. A használt utolsó sorszám m u =m u +1. Az üzenet ezen láncához rendelt kódszó n m és „c” sorszáma.
59
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30
60
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43
61
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43 50
62
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43 50 61
63
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43 50 61 73
64
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43 50 61 73 82
65
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43 50 61 73 82 mn„c”sorozat 96 104 119 128 130 1413 151 1614 1713
66
Forráskódolás: LZ78 Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 43 50 61 73 82 mn„c”sorozat 96 104 119 128 130 1413 151 1614 1713
67
Forráskódolás: LZW A szótár első k sora tartalmazza a használni kínánt k darab karaktert. A kódolás elején a megjegyzett sorszám n m = 0, az utolsó használt sorszám m u =k. A kódoló a következő lépéseket ismétli, amíg el nem fogy az üzenet: Beolvassa a következő karaktert, amit nevezzünk „c”-nek. Vizsgálja azokat a sorokat, amelyeknek a megjegyzett n m szerepel a mutató mezejükben. Ha talál olyant, amelynek a karaktermezejében „c” szerepel, annak a sornak az indexe lesz az új n m. Ha nem talál olyan sort, amelyikben „c” a karakter, akkor nyit egy újat. A sorszám m=m u +1, a mutató n m, a karakter „c”. Az új megjegyzett sorszám annak a sornak az m-je, ahol a „c” karakter először szerepelt. A használt utolsó sorszám m u =m u +1. Az üzenet ezen láncához rendelt kódszó n m.
68
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61
69
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61 73
70
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61 73 83
71
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61 73 83 mn„c”sorozat 93 102 114 126
72
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61 73 83 mn„c”sorozat 93 102 114 126 138
73
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61 73 83 mn„c”sorozat 93 102 114 126 138 1410 1512 169 1711
74
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: mn„c”sorozat 00- 10 20 30 40 50 61 73 83 mn„c”sorozat 93 102 114 126 138 1410 1512 169 1711 mn„c”sorozat 187 1916 201 215 225 2311 2421 2523
75
Forráskódolás: LZW Legyen az LZ78 algoritmussal kódolandó üzenet: 4 1 2 2 1 3 6 8 10 12 9 11 7 16 4 5 5 11 21 23 5 mn„c”sorozat 00- 10 20 30 40 50 61 73 83 mn„c”sorozat 93 102 114 126 138 1410 1512 169 1711 mn„c”sorozat 187 1916 201 215 225 2311 2421 2523
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.