200 likes | 360 Views
TZI. T eoretické Z áklady I nformatiky. Trochu etymologie slova „informace“. Latina informare – dávat formu, formovat myšlenku informatio – pojetí (koncept), idea Objevuje se ve středověké angličtině jako pojem information – akt informování, vytvoření formy/podoby něčeho v mysli.
E N D
TZI Teoretické Základy Informatiky
Trochu etymologie slova „informace“ • Latina • informare – dávat formu, formovat myšlenku • informatio – pojetí (koncept), idea • Objevuje se ve středověké angličtině jako pojem • information – akt informování, vytvoření formy/podoby něčeho v mysli
Co to je/co to tedy jsou „informace“? • Přijímáme, posíláme, uchováváme texty, zvuky, obrázky • tyto „zprávy“ obsahují informaci • informace je obtížně formálně postižitelný pojem • Jedná se o nematematickou veličinu, kterou ani nelze přesně definovat a měřit • intuitivní definice informace jako kvality • informace = co přijímáme formou textů, řeči, obrazy – zprávami • znalost odvozená ze studia, zkušeností, poučení • znalost o konkrétní události nebo situaci • kolekce faktů nebo dat • kvantitativní chápání informace • schopnost odpovědět na otázku: • Kolik informace obsahuje daná zpráva? • informační objem zprávy je úměrný míře překvapení skrytému ve zprávě
Dvojí chápání pojmu „informace • kvalitativní chápání - pohled z pozice softwarového inženýrství (SI) • SI zajímá především sdělení obsahu, pak teprve forma • informace je obtížně formálně postižitelný pojem • Jedná se o nematematickou veličinu, kterou ani nelze přesně definovat a měřit • SI zpracovává data – formalizované reprezentace faktů, pojmů, ... vhodné pro komunikaci / interpretaci / zpracování / uchovávání automatizačními prostředky nebo lidmi • pro SI informace = význam právě přidělený daným datům shromážděných jisté zprávě, význam daný konvencemi aplikovanými na tato data • kvantitativní chápání - pohled informační teorieinformace = co přijímáme formou textů, řeči, obrazy – zprávami • aby informaci šlo přenášet, skladovat, ..., musí být měřitelná • informace se stává měřitelnou veličinou stanovením vhodné míry • míru stanovuje Informační teorie, Information Theory - větev matematiky zabývající se efektivností a přesností uchovávání, přenosu a reprezentace informace
Míra množství informace ve zprávě • požadavky na míru informace • méně pravděpodobná zpráva nese více informace • množství informace je vždy kladné • množství informace obsažené ve skupině nezávislých zpráv je rovno součtu množství informací obsažených v jednotlivých zprávách • těmto požadavkům na* vyhovuje funkce • -log (P), resp. • -log2(P) v jednotkách bit • kde P je pravděpodobnost výskytu zprávy s měřenou informací • bit – ekvivalent volby mezi dvěma stejně pravděpodobnými zprávami
Míra množství informace ve zprávě • Příklad • kolik informace může obsáhnout k-ciferné dekadické číslo? • tj. kolik bitů potřebujeme pro vyjádření téhož čísla? • musí platit 10k – 1 = 2x – 1, • tedy x = k × log210/log22 = 3,32 k bitů • tj. v jedné dekadické cifře je obsaženo cca 3,32 k bitů informace • pro vyjádření dekadické cifry potřebujeme minimálně 4 bity • Nyní systematičtěji k odvození, že požadavkům na míru množství informace na vyhovuje funkce • -log (P), resp. • -log2(P) v jednotkách bit • kde P je pravděpodobnost výskytu zprávy s měřenou informací
Informace, neurčitost a míra množství informace • technické termíny popisující proces výběru jedné nebo více alternativ z nějaké množiny možných alternativ • zařízení I produkuje symboly A nebo B nebo C, ex. nejistota který symbol – 3-prvková neurčitost (také entropie) • když výstupní symbol uvidíme, neurčitost se sníží, snížením neurčitosti získáváme informaci, • množství získané informace odpovídá množství odstraněné neurčitosti • zařízení II produkuje symboly 1 nebo 2, ex. nejistota který zda 1 či 2 – 2-prvková neurčitost • kombinované zařízení I+II produkuje symboly A1, A2, B1, ...C2, - 6-prvková neurčitost • takto se množství informace obvykle neměří • když si přečtu 2 knihy místo jedné, získám množství informace odpovídající součtu množství informace v každé z nich • míra množství informace by měla být aditivní
Míra množství informace • míra množství informace by měla být aditivní • místo násobení počtu výstupních symbolů proto použijeme sčítání jejich logaritmů – log(3), log(2), log(3) + log(2) = log(6) • báze logaritmu určuje cílovou měrnou jednotkou • 2 - bity, 10 – digit (dekadické cifry), e – „nats“ • zařízení produkuje jediný symbol, např. jediný tón – log2(1) = 0 [b] • poznáním výstupu nedojde ke snížení neurčitosti z poznání výstupu nezískáme žádnou informaci, je jisté, co bude na výstupu příště • zařízení produkuje dva symboly, např. 0 nebo 1 – log2(2) = 1 [b] • dvouprvková neurčitost poskytuje 1-bitovou informaci
Míra množství informace • Dosavadní formule vymezení neurčitosti – log2(M) – předpokládala stejnou pravděpodobnost každého výstupu P = 1/M a pak platí log2(M) = -log2(P) • toto lze generalizovat na různé pravděpodobnosti výskytu jednotlivých výstupních symbolů Pi, kde Pi = 1 • ui = -log2(Pi) odpovídá překvapení, že vystoupil symbol i • pro Pi jdoucí k 0 je překvapení velké, jde až k ∞, pro Pi jdoucí k 1 je překvapení malé až nulové • neurčitost takového zdroje symbolů je dána průměrným překvapováním při generování nekonečného proudu jeho výstupních symbolů • do tohoto průměru přispějí překvapení vyvolaná výstupy jednotlivých symbolů v poměru pravděpodobností výskytu příslušných symbolů ve výstupu
Neurčitost / entropie, Shannonova formule funkce H pro případ výstupu 2 symbolů: • Neurčitost (entropie) zdroje symbolů je dána průměrným překvapováním při generování nekonečného proudu jeho výstupních symbolů • do tohoto průměru přispějí překvapení vyvolaná výstupy jednotlivých symbolů v poměru pravděpodobností výskytu symbolů ve výstupu • křivka je symetrická maxima dosahuje pro případ shodné pravděpodobnosti výskytu obou symbolů
Neurčitost / entropie • při stejné pravděpodobnost výstupu každého z M symbolů je pravděpodobnost výstupu jednoho z nich Pi = 1/M • pak maximální neurčitost je • s touto rovnicí jsme úvahy o množství informace začínali
Míra množství informace, příklad • Co znamená, když se řekne, že text/signál (průměrně) nese množství informace = 1,75 b/symbol (prvek signálu) • jedná se oprůměrné množství informace/symbol • tj. po konverzi na bity mají různé symboly různou bitovou délku • Příklad – zdroj generující zprávy ze symbolů A, C, G a T • M = 4, symboly A, C, G, T se vyskytují s pravděpodobnostmi (Pi): čemuž odpovídají překvapení z výskytu jednotlivých symbolů (-log2Pi): uA = 1 bit, uC= 2 bity, uG = 3bity, uT = 3 bity, a neurčitost daného zdroje (množství jím produkované informace) je
Míra množství informace, příklady, redundance • při minimálním kódování symbolů bity v poměru jejich překvapení A = 1, C = 01, G = 000 a T = 001 (tzv. Fanovo kódování) bude řetěz 8 symbolů ACATGAAC kódovaný 14 bity 10110010001101 • tj. v průměru 14/8 = 1,75 bity/symbol • Příklad • množství informace ve zprávě o n symbolech kódovaných abecedou s mohutností m prvků, když každý prvek abecedy použitý pro kódován symbolů zprávy má apriorní pravděpodobnost výskytu Pi je • přitom platí Hmax = -n log2m • 1 symbol ve slově v angličtině nese 1,2 b informace • na 1 bit v ASCII kódu připadá 1,2/7 = 0,17 b informace • na 1 bit v ASCII kódu připadá 5,8/7 = 0,83 b redundantní inform.
Kód, kódování zpráv • diskrétní zpráva – text, obraz, audiozáznam, ... • diskrétní zpráva sestává z N zdrojových jednotek – symbolů • symbolem se podle typu zprávy rozumí: • textový prvek – znak/slovo/... • obrazový element – pixel • signálový prvek – poloha praporku, průběh el. proudu, ... • symboly jsou vyjadřovány (kódovány) prvky abecedy S • předpis pro zobrazení prvku z abecedy S1 do abecedy S2 – kód • prvek abecedy použitý pro zápis symbolu – kódové slovo • Kódování • nahrazování jedné poloupnosti symbolů jinou posloupností symbolů • příklady kódování – pořizování dat, šifrování (utajování), opravné kódování (integrita), komprese (minimalizace „objemu“ú, transformace na signálové prvky pro přenos, ...
Klasifikace kódů • obecný kód, C, zobrazuje prvek abecedy S1 na prvek abecedy S2 • C je nesingulární kód, když každý prvek abecedy S1 (např. {A,B,C,D}) zobrazuje na jiný prvek abecedy S2 (např.{0,010,01,10}) • když se vyšle jeden prvek abecedy S1, např. 010, přijímač ho může jednoznačně dekódovat (na B) • výše uvedený kód je nesingulární, ale není jednoznačně dekódovatelný při vysílání řetězců symbolů • 010 může reprezentovat B nebo CA nebo AD • pokud chceme vyslat více symbolů, musíme je oddělovat speciálním symbolem, např. „čárkou“ (,)
Klasifikace kódů, 2 • jestliže platí C(X1,…,XN) = C(X1),…,C(XN) a platí, že zdrojové i cílové prvky, Xi a C(Xi) jsou konečné délky a zachovává se nesingularita, pak C je jednoznačně dekódovatelný kód • Každý kódovaný řetězec v jednoznačně dekódovatelném kódu má jediný možný zdrojový řetězec, který jej produkuje, ale pro zjištění byť i prvního symbolu, se někdy musí analyzovat celý řetěz • Jestliže C(a) = 10, C(b) = 00, C(c) = 11 a C(d) = 110, pak C(ab) = 1000 a C(cb) = 1100, ale že se jedná o cb a ne o d…se pozná po analýze celého řetězu • jestliže žádný prvek jednoznačně dekódovatelného kódu není prefixem jiného prvku, jedná se o prefixový kód • prefixový lze dekódovat symbol po symbolu, zleva doprava, každé kódové slovo je „samovyčlenitelné“
Proč se kóduje • je nutné změnit velikost abecedy, např. a,b,c,… 0, 1 • dáno změnou prostředí, do kterého se zpráva zapisuje, kterým se přenáší, … • musí se utajit obsah zprávy • kryptografie PV017 a další předměty • cílem je lepší využití kapacity paměti/kapacity přenosového kanálu • komprese dat, tou se budeme zabývat hlouběji • komprese dat spočívá v identifikaci redundance a v jejím odstraňování
Kódování, kódovaná slova • Zdroj generuje symboly abecedy o N prvcích • Pro zobrazení každého symbolu zprávy potřebujeme v průměru alespoň log2N bitů, pokud nechceme snížit množství informace ve zprávě zobrazené v cílové abecedě • pokud N = 8 potřebujeme alespoň 3 bity, log28 = 3,23 = 8 • pokud N = 26 potřebujeme alespoň 5 bitů, 25 = 32, 6 kombinací se nevyužije • … • Pro vyjádření symbolu zprávy se používá kódové slovo • prvek nějaké abecedy, např.{a,b,…}, polohy rukou signalisty, slova jazyka, … • posloupnost prvků nějaké abecedy, např. {0 110 001, 0 110 010, ..} nebo {0,10,11,110,1110,111}
Kódování, kódovaná slova • kódovaná slova pevné délky • {a,b, …}, {0 110 001, 0 110 010, …} • snadná jednoznačná dekódovatelnou, slovníky • použití skrývá statistické charakteristiky výskytu jednotlivých symbolů • kódová slova proměnné délky • {0,10,110,1110,1111} • odráží statistické charakteristiky výskytu jednotlivých symbolů • základní zákon komprese dat • častěji použité symboly je žádoucí kódovat kratšími kódovými slovy • požaduje se bezprostřední rozhodnutelnost při dekódování • vhodná je prefixová vlastnost kódu, prefixové kódy • žádné kódové slovo kódu není prefixem některého jiného kódového slova daného kódu