Entropiakoodaus, Entropy Coding

Slides:



Advertisements
Samankaltaiset esitykset
Copyright  Hannu Laine Bittitason-operaatiot Hannu Laine.
Advertisements

Kysely- tai ilmoittautumislomakkeen luominen Google Driveen
Komponenttien rakenteellinen tärkeys
KuvatyypittMyn1 Kuvatyypit •MPEG-2 käyttää kolmen tyyppisiä kuvia. •Kuvatyyppejä kutsutaan I, P ja B-kuviksi. •Kuva voi olla joko kehys (frame) tai kenttä.
Osaamisen ja sivistyksen parhaaksi Tilatiedot ja niiden muutokset
ASK - Amplitude Shift Keying Timo Mynttinen1 ASK-Amplitude Shift Keying •Otetaan erikoistapauksena tilanne, jossa informaatiosignaalina s(t) on kantataajuinen.
5.1. Tason yhtälö a(x – x0) + b(y – y0) + c(z – z0) = 0
JavaScript (c) Irja & Reino Aarinen, 2007
Virheen havaitseminen ja korjaus
Tietoturvallisuus osa 7
EXtensible Markup Language
Johdetun luokan määrittely tMyn1 Johdetun luokan määrittely •Kun johdettu luokka periytetään kantaluokasta, saadaan kantaluokan jäsenet enemmän tai vähemmän.
Sisältö: Johdanto kryptografiaan Salakirjoitus
LÄHTEENKOODAUS.
Auli Jaakkola 1 Palkkatiedustelun tietomallin mukaisen tilastovastauksen luonti Tässä esimerkissä tiedosto tuotetaan excelistä csv-muotoon. 1.Oletetaan,
Yhdistetty M-ary ASK ja M-ary PSK Timo Mynttinen1 Yhdistetty M-ary ASK ja M-ary PSK Tähän asti on kerrallaan käytetty yksinomaan joko amplitudia, taajuutta.
Lukemaan oppii vain lukemalla
Puhuminen Varmista, että toiset ymmärtävät sinua
Tietoliikennetekniikka II AKari KärkkäinenOsa 24 1 (10) LOHKOKOODATUN JA KOODAMATTOMAN JÄRJESTELMÄN SUORITUSKYKYJEN VERTAILU.
OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT. LUOKKA JAVA ohjelma koostuu luokista LUOKKA sisältää metodeja molemmat sisältävät attribuutteja eli muuttujia.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Fi.opasnet.org fi.opasnet.org/fi/Ydinvoima Haluamme tietää Sinun mielipiteesi. Äänestikö kansanedustajasi oikein ydinvoimasta? Kansalaisparlamentti ydinvoimasta.
FSK-Frequency Shift Keying
Jouni Viuhko 2010 Pilkun käyttäminen.
Lineaarinen lohkokoodaus, Block Coding
Ohjelmoinnin tekniikkaa Sisällys for -lause lyhemmin. Vaihtoehtoisia merkintöjä aritmeettisille lauseille. Useiden muuttujien esittely.
Todennäköisyyslaskennan alkeet ennen esikoulua
Tiedon esittäminen.
2. Vuokaaviot.
m0 M7 Maksimitermi Minimitermi Boole A = A A · 0 = 0 SOP De Morgan POS
Tiedonhakumenetelmät Helena Ahonen-Myka Kevät 2004, osa 9 Merkkijonohahmon etsintä selaamalla.
Vapaa aihe Kysymykset.
Analyysi Analyysi = kreik. irrottaa: hajottaa osiinsa, eritellä, jäsentää. voi käsitteellisesti tarkoittaa kahta erilaista asiaa: muotoanalyysi: miten.
Johtokoodaus Historia, toiminnalliset syyt ja toteutustapojen hintaerot ovat johtaneet eri johtokoodaustapojen kehittämiseen. Hyvälle johtokoodaukselle.
PILKKU.
Heuristinen arviointi Antti Nummiaho Johdanto (1/3) Heuristinen arviointi on käytettävyyden arviointia ilman käyttäjää. Se on yksinkertainen,
Opetussuunnitelmaviestintä Merkki ja merkitys - Viestinnän yleinen teoria Jukka Savilampi 2005.
Algoritminen ajattelu
© 2010 IBM Corporation1 Objektien käyttöoikeudet  Kaikilla sisällönhallinnan objekteilla on käyttöoikeudet. Käyttöoikeudet on jaoteltuina Lukuoikeuksiin,
S ysteemianalyysin Laboratorio Teknillinen korkeakoulu Esitelmä 11 - Teemu Mutanen Optimointiopin seminaari - Syksy 2005 / 1 Lisätiedon arvo.
@ Leena Lahtinen OHJELMAN OSITTAMINEN LUOKKA ATTRIBUUTIT METODIT.
Todennäköisyyslaskenta
Virheenpaljastus- ja korjauskoodit tMyn1 Virheenpaljastus- ja korjauskoodit Virheen havaitseminen Tässä vaaditaan ainoastaan se, että pystytään toteamaan.
2. a. Pareittain esittele kirjoittamasi esittelyteksti ja valitsemasi lehtijutut. 2. b. Tarkastelkaa yhdessä valitsemianne lehtijuttuja ja merkitkää juttuihin.
6. Relaatioalgebra ja relaatiokalkyyli
5. Lineaarinen optimointi
Testaus Testaus Testauksella pyritään löytämään virheitä, jotka sitten korjataan. Yksittäinen testi on yleensä ohjelman suoritus (tietyillä.
Osaamisen ja sivistyksen parhaaksi Valintaperusteiden mallintaminen
Rinnakkaisuus Järjestelmässä, jossa voi olla useita prosesseja rinnakkain suorituksessa voi tulla tilanteita, joissa prosessien suoritusta täytyy kontrolloida.
Johdetun luokan olion alustus tMyn1 Johdetun luokan olion alustus määrätyillä arvoilla Kun ohjelmassa esiintyy johdetun luokan olion määrittely, järjestelmä.
Todennäköisyyslaskentaa
5. Fourier’n sarjat T
Todennäköisyyslaskentaa
8. Periytyminen Sisällys Mitä on periytyminen? Yksittäis- ja moniperiytyminen. Oliot ja perityt luokat. Periytymisen käyttö.
Kiikuista jatkoa.
Jenna Nyblom Katri Vanhatalo Oskari Anttalainen
Kesätyöntekijöiden kommentteja Opasnetistä ja ydinvoimatyöstä: ”Kun tulin kesätöihin minulla oli vain jokin suuntaa antava aavistus siitä mitä meinattiin.
ASCII JORMA2002. ASCII A merican S tandard C ode for I nformation I nterchange  Vuonna 1963 julkaistiin (1967 täydennettiin) 7-bittinen ASCII-koodi kaukokirjoittimissa.
7. Lämpö laajentaa Lämpötila on fysiikan perussuure, joka kuvaa kuinka kuuma aine tai kappale on Lämpötilan tunnus on T (tai t) Lämpötilan perusyksikkö.
Matematiikkaa 3a, Kertausjakso Lukuja © Varga–Neményi ry 2016
Amplitudimodulaatio Amplitudimodulaatiossa moduloiva signaali muuttaa kantoaallon voimakkuutta eli amplitudia. Kantoaallon taajuus pysyy koko ajan samana.
Tiedonsiirtotekniikka 2
BINÄÄRISET TIEDONSIIRTOMENETELMÄT TÄRKEIMPIEN ASIOIDEN KERTAUS
Tutkielman teko-ohjeet
16. Ohjelmoinnin tekniikkaa
14. Hyvä ohjelmointitapa.
KANTATAAJUINEN BINÄÄRINEN SIIRTOJÄRJESTELMÄ AWGN-KANAVASSA
LOHKOKOODATUN JA KOODAMATTOMAN JÄRJESTELMÄN SUORITUSKYKYJEN VERTAILU
2. Olio-ohjelmoinnin perusteita
16. Ohjelmoinnin tekniikkaa
Esityksen transkriptio:

Entropiakoodaus, Entropy Coding Tiedon tiivistäminen muodostaa laajan asiakokonaisuuden tietoliikennetekniikassa. Tiedon tiivistämisen malleihin liittyy käsite entropia (entropy). Tietoliikenteessä entropian tunnus on H, ja se antaa alarajan koodatun tiedon keskimääräiselle sanapituudelle. Jokaiselle mallille voidaan osoittaa, ettei entropiaa parempaan tiivistykseen keskimäärin voida päästä. Entropiakoodaus tMyn

Tarve tiedon tiivistämiseen on suuri, koska siirrettävän tiedon määrä on kasvanut moninkertaisesti nopeammin kuin mitä siirtotekniikka sallii. Valitun tiivistysmenetelmän (algoritmin) nopeus on tärkeä kriteeri, koska sekä tiedon tiivistäminen että sen purku pääsääntöisesti tapahtuvat siirron aikana. Näin ollen algoritmin on selviydyttävä tehtävästään siten, ettei se vaikuta liikaa hidastavasti tiedon siirtoon. Entropiakoodaus tMyn

Koodaustapaa mietittäessä tulee ottaa huomioon mahdollisuus yksiselitteiseen tulkintaan (unique decipherability). Esim. olkoot lähetettävänä 4 sanomaa, sanomat M1-M4. Koodataan sanomat binaariseen muotoon seuraavasti: M1=1, M2=10, M3=01 ja M4=101. Jos nyt vastaanotetaan bittijono 101, niin ei voida yksiselitteisesti tulkita vastaanotettiinko sanoma M4, M2M1 vaiko M1M3. Tilanne paranee, jos koodataan kukin sanoma siten, että niillä on yksiselitteinen etuliite. Siis esim. M1=1, M2=01, M3=001 ja M4=0001. Entropiakoodaus tMyn

Otetaan vielä esimerkki koodaustavasta: M1=1, M2=10, M3=100 ja M4=1000 Otetaan vielä esimerkki koodaustavasta: M1=1, M2=10, M3=100 ja M4=1000. Kyseessä on kylläkin yksikäsitteisesti tulkittava koodaustapa, mutta tämä ei ole välittömästi (instantaneous) tulkittavissa. Esim. Kuvitellaan, että ollaan vastaanotettu bitit 10. Tässä vaiheessa ei voida olla varma siitä, tuliko vastaanotettua sanoma M2, M3 vaiko M4. Entropiakoodaus tMyn

Informaatio ja entropia Määritellään sanoman x informaatiosisältö kaavalla . Kaavassa on sanoman x esiintymis-todennäköisyys. Valitaan informaatiosisällön kaavassa logaritmin kantaluvuksi 2. Esim. Olkoot ravintolassa yksi ruokalista. Ruokalistassa on kaksi vaihtoehtoista valintaa, joita kumpaakin valitaan yhtä usein. Siispä todennäköisyys sille, että jompaa kumpaa ruokalajia tilataan, on 1/2. Entropiakoodaus tMyn

Nyt kaavaan sijoitettuna sanoman informaatiosisällöksi saadaan Nyt kaavaan sijoitettuna sanoman informaatiosisällöksi saadaan . Tulkinta: tarvitaan yksi bitti kertomaan kumpaa ruokalajia tilataan. Monipuolistetaan ruokalistaa: olkoot siellä nyt neljä vaihtoehtoa, ja ajatellaan, että kutakin lajia tilataan yhtä paljon. Todennäköisyys, että tilataan tiettyä lajia on siis 1/4. Sanoman informaatiosisällöksi saadaan Tulkinta: Jos sanoma lähetetään binaarisena, tarvitaan 2 bittiä/sanoma, esim. 00, 01, 10 ja 11. Entropiakoodaus tMyn

Määritellään entropia H seuraavasti: Määritellään entropia sanoman keskimääräiseksi informaatiosisällöksi. Olkoot sanomia n kappaletta, Määritellään entropia H seuraavasti: Entropiakoodaus tMyn

Esim. Järjestelmä koostuu kuudesta sanomasta Esim. Järjestelmä koostuu kuudesta sanomasta. Vastaavat todennäköisyydet ovat 1/4, 1/4, 1/8, 1/8, 1/8 ja 1/8. Laske entropia. Entropiaksi saadaan bittiä/sanoma. Entropiakoodaus tMyn

Määritellään koodatun sanan keskimääräinen pituus Miten kehittää koodaustapa, jossa koodattavat sanat olisi koodattu keskimäärin pienimmällä mahdollisella bittimäärällä? Koodatut sanat tulisi olla yksiselitteisesti tulkittavissa. Määritellään koodatun sanan keskimääräinen pituus Kaavassa on i:nnen koodisanan pituus ja on i:nnen koodisanan esiintymistodennäköisyys. Kaavasta nähdään, että mitä useammin sana esiintyy, sitä lyhyemmäksi se kannattaa koodata. Entropiakoodaus tMyn

Koodauksen teorioista tiedetään, että binaarimuotoisessa koodauksessa keskimääräinen koodatun sanan pituus on yhtä suuri tai suurempi kuin entropia, siis Jos lähetettävien symbolien lähetystodennäköisyys ei ole kaikilla sama, niin silloin lyhin keskimääräinen koodatun sanan pituus saavutetaan koodaamalla symbolit eri pituisiksi. Entropiakoodaus tMyn

Esim. Oletetaan, että lähetettäviä symboleja on neljä eri laista, ja vastaavat lähetystodennäköisyydet ovat 1/8, 1/8, 1/4 ja 1/2. Mielikuvitukseton tapa koodata symbolit olisi antaa seuraavat binaarivastineet: 00, 01, 10 ja 11. Nyt siis koodatun sanan keskimääräinen pituus olisi 2 bittiä/sana. Entropiakoodaus tMyn

Jos sitä vastoin koodattaisiin symbolit seuraavasti: 111, 110, 10 ja 0, saataisiin keskimääräiseksi koodatun sanan pituudeksi =1,75 bittiä/koodattu sana. Miten keksitään kullekin mahdolliselle symbolille koodaus, joka tuottaa lähetyksessä keskimäärin minimipituuden siirrettävälle aineistolle? Tiivistysmenetelmä voi keskittyä käytetyn koodiston optimointiin, tai se voi käyttää sanakirjaa. Entropiakoodaus tMyn

Koodistoon keskittyvät menetelmät pyrkivät optimoimaan merkkien binaarimuotoista koodausta, ja sanakirjaa käyttävät menetelmät muistavat esiintyneitä sanoja ja niiden osia, eivätkä toista niitä uudelleen. Tavallisessa tekstissä käytetty aakkosto muodostuu symboleista {0, 1, …a, b, …å, ä, ö} sekä joukosta erikoismerkkejä. Tietoliikenteessä aakkosto esitetään jollakin sopivalla binaarikoodilla, jonka pituus on joko kiinteä tai vaihteleva. Entropiakoodaus tMyn

Sellaiset menetelmät, joilla on olemassa jokin tiivistettävästä aineistosta riippumaton malli, kutsutaan staattisiksi. Staattisessa menetelmässä sekä lähettäjä että vastaanottaja tuntevat etukäteen niin käytettävän mallin kuin mahdollisen hakemiston tai aakkoston rakenteen. Menetelmä on yksinkertainen, mutta esim. englannin kielen merkkijakaumalle laadittu menetelmä ei kelpaa käytettäväksi muilla kielillä. Malli voidaan määritellä myös siten, että käydään läpi siirrettävä aineisto, ja lasketaan aineiston merkkien todellinen esiintymisjakauma. Entropiakoodaus tMyn

Tällöin puhutaan puoliadaptiivisesta menetelmästä. Kun jakauma on valmis, se siirretään vastaanottajalle, ja vasta sen jälkeen ryhdytään varsinaiseen tiedonsiirtoon. Tällöin puhutaan puoliadaptiivisesta menetelmästä. Heikkoutena on se, että siirrettävä aineisto on käsiteltävä kertaalleen ennen lähettämistä. Tämä voi olla joskus hankala toteuttaa! Kolmantena vaihtoehtona on mukautuva eli adaptiivinen menetelmä, jossa mallia korjataan siirron aikana tiedon rakenteen mukaisesti. Entropiakoodaus tMyn

Yhtenä ratkaisuna on etuliitekoodin käyttäminen. Tietoliikenteessä esitetään yleisesti siirrettävä tieto kiinteämittaisilla binaarikoodeilla käyttäen esim. 8 bitin ASCII-koodia. Kiinteämittainen koodaus yksinkertaistaa tiedon käsittelyä vastaanotossa, koska riittää, että tunnetaan merkin pituus ja synkronointimenetelmä. Tiivistys perustuu kuitenkin usein myös merkkien vaihtuvamittaiseen koodaukseen. Miten voidaan erottaa koodatut sanat toisistaan, jos käytettyjen symbolien koodatut muodot ovat erimittaisia? Yhtenä ratkaisuna on etuliitekoodin käyttäminen. Entropiakoodaus tMyn

Etuliitekoodauksen tarkoituksena on koodata aakkosto siten, että kunkin symbolin arvo voidaan määritellä heti, kun sen viimeinen bitti on luettu, ts. koodin alkuosa ei ole minkään toisen koodin alkuosa. Entropiakoodaus tMyn

Aritmeettinen koodaus on merkkipohjaisista menetelmistä tehokkaimpia, mutta sen haittapuolena on tiivistämisen hitaus. Koodaus perustuu tiivistettävien yksiköiden (merkkien tai sanojen) todennäköisyysjakaumaan, ja tässä kukin yksikkö varaa todennäköisyyttään vastaavan välin asteikolla 0,0 - 1,0. Merkkikohtaisten todennäköisyyksien käyttäminen aritmeettisessa koodauksessa ei yleensä tuota riittävän hyvää tiivistystä. Entropiakoodaus tMyn

Parempaan tulokseen päästään, jos otetaan huomioon merkkien keskinäiset riippuvuussuhteet. Esim. suomen kielessä kirjaimen k jälkeen ei tule koskaan kirjainta b, c, d, f, g, h, j, q, x tai z. Se minkälaisia seuraajia k:lla on, voidaan edelleen rajata tarkastelemalla k:n edeltäjiä… Tunnettuja algoritmeja ovat DMC (Dynamic Marcov Coding) ja PPM (Prediction by Partial Matching). Entropiakoodaus tMyn

Käydään seuraavaksi Huffman-koodauksen perusidea läpi. Kaksi tunnettua etuliitekoodaukseen perustuvaa tiivistysmenetelmää ovat Shannon Fano -koodaus ja Huffman-koodaus. Menetelmät muistuttavat toisiaan, mutta Huffman-koodaus on tehokkaampi. Molemmat perustuvat siihen, että käytetylle aakkostolle on olemassa todennäköisyysjakauma, jonka perusteella voidaan määritellä tuotettavan koodin pituus. Useimmin esiintyvät merkit koodataan pienemmällä bittimäärällä kuin harvemmin esiintyvät merkit. Käydään seuraavaksi Huffman-koodauksen perusidea läpi. Entropiakoodaus tMyn

Olkoot lähetettävät symbolit ja . Vastaavat lähetystodennäköisyydet ovat ja . 1. Listataan 1. sarakkeeseen symbolit laskevassa todennäköisyysjärjestyksessä. Lähteen symbolit muodostavat puun lehdet. Entropiakoodaus tMyn

2. Yhdistellään symboleita: otetaan kaksi alinta todennäköisyyttä ja yhdistetään ne. Tämän seurauksena syntyi kaksi oksaa: merkitään ylempää ’0’ ja alempaa ’1’ (tai sitten päinvastoin, kunhan pysytään koko prosessi loogisesti samassa käytännössä!). 3. Toistetaan askel 2 niin kauan kunnes saadaan yhdistelmäsymbolin todennäköisyydeksi 1. 4. Koodisanat saadaan lukemalla oikealta vasemmalle oksia myöten, katso kuva 1. Entropiakoodaus tMyn

10 1 110 1 1110 1 1 1111 Kuva 1. Esimerkki Huffman-koodauksesta. Tod.näk. Symboli Koodisana 10 1 110 1 1110 1 1 1111 Kuva 1. Esimerkki Huffman-koodauksesta. Entropiakoodaus tMyn

Lempel-Ziv -tiivistys Lempel-Ziv -tiivistysmenetelmät käyttävät hyväkseen hakemistoja. Hakemiston avulla vältetään toistamasta aiemmin esiintyneitä merkkiyhdistelmiä tai fraaseja. Koodattu tieto muodostuu viitteestä sanakirjaan, jonka lähettäjä ja vastaanottaja ovat muodostaneet siirron aikana. Entropiakoodaus tMyn