Ongelma(t): Miten digitaalista tietoa voidaan toisintaa ja visualisoida? Miten monimutkaista tietoa voidaan toisintaa ja visualisoida? 2
Tieto on koodattu aikaisempaa yleisemmin digitaaliseen muotoon, jonka tietoyksikkö on bitti. Tiedon havainnollistamisella on sen käytön kannalta olennainen rooli, koska binääriluvut kertovat ihmiselle kovin vähän. Tiedon toisintaminen ja visualisointi on yksinkertaisissa tapauksissa suoraviivaista, kunhan on olemassa tarkoitukseen soveltuvat laitteet ja tiedon muuntamiseen tarvittavat menetelmät. Moniulotteisen tiedon kohdalla sen havainnollistaminen ei olekaan niin yksinkertaista. 3
Tietojenkäsittelyn perusteet II Tiedon visualisointia ja lineaarialgebraa 4
Tiedon visualisointia ja lineaarialgebraa 5
Tiedon visualisoinnista Tieto ja sen koodaus Tiedon havainnollistaminen Tiedon muunnoksia: "Yksinkertainen" tapaus: Lineaarialgebra geometriset muunnokset tietokonegrafiikka "Monimutkainen" tapaus: Ulottuvuuksien vähentäminen moniulotteisen tiedon havainnollistaminen 6
Pohjustusta: Laskentaa vai tietojenkäsittelyä? Eräs karkea näkemys laskennan ja tietojenkäsittelyn välisistä eroista: Ongelmanratkaisu Algoritminen Heuristinen Numeerinen tieto Teknismatemaattinen laskenta Simulointi, signaalinkäsittely Symbolinen tieto Kaupallishallinnollinen tietojenkäsittely Tekoäly, tietämystekniikka 7
Kertausta: Algoritmien syötetiedonlähteet Data vs. informaatio vs. tieto vs. tietämys Todellisen maailman signaalit: Analoginen vs. digitaalinen signaali Signaalien ulottuvuudet: 1 (esim. yksittäinen aikariippuva suure) 2 (esim. harmaasävykuva) 3 (esim. värikuva, spektrikuva) 4 (esim. värillinen video) n (esim. n-kanavainen aivosähkökäyrä) Synteettiset (keinotekoiset) signaalit: Todellisen maailman mallit, virtuaalimaailmat,... 8
Kertausta: Tiedon koodaus Tieto koodataan kokonais- ja liukulukuina jossakin lukujärjestelmässä (tyypillinen kantaluku 2 tai 10). Liukulukujen koodaustavat: Kiinteä (desimaali)pilkku: kokonais- ja desimaaliosien tarkkuus rajoitettu. Liukuluku: desimaalipilkku liikkuu tarpeen mukaan (vrt. 6,0221367 1023). Merkkitiedon koodaamiseen jokaiselle merkille oma bittikuvio: ASCII tai ISO 8859: 7- tai 8-bittiä/merkki. Unicode transformation format (UTF): 8-, 16- tai 32-bittiä/merkki. ISO 10646 -standardi Universal Character Set: (1), 2 tai 4 tavua/merkki. 9
Kertausta: Informaatio Informaatio ~ kohteen luonteesta kertova data, tuloksen todennäköisyys Shannonin tulkinta: kommunikaatio osapuolten välillä Tapahtuman A informaatiosisältö: 1 i ( A) = log b = log b P( A) P ( A) P(A) = tapahtuman A todennäköisyys b = logaritmifunktion kantaluku eli tietoyksikön merkistö i ( AB) = i ( A) + i ( B ) 10
Kertausta: Entropia Tapahtumasarjan informaatio Lyhyin keskimääräinen viestin pituus bitteinä, millä satunnainen tieto voidaan välittää: Shannonin entropia Kolikon heitto: 1 bittiä/heitto Aina samana toistuva tieto: 0 bittiä/merkki Keskimääräinen bittien määrä, joka tarvitaan yhden symbolin koodaamiseen Määrittää vähimmäiskapasiteetin kommunikaatiokanavalle luotettavaan binääriseen tiedonsiirtoon 11
Kertausta: Tiedon tiivistäminen Jokaiselle koodattavalle merkkijonon merkille (jostakin aakkostosta) oma koodisana: N log b K, missä N koodisanan pituus, L on koodattavan merkkijonon L pituus, b koodiaakkoston koko ja K koodattavan aakkoston koko. Tiivistämissuhde: kuinka paljon uudelleen koodaaminen hyödyttää. Kiinteäpituinen/muuttuvapituinen koodi 12
Kertausta: Tiivistämisen perusmenetelmät Häviötön tiivistäminen: Alkuperäisestä tiedosta ei katoa tai muutu mitään Tiivistämisessä tulee raja vastaan entropian mukaisesti Häviöllinen tiivistäminen: Alkuperäistä tietoa katoaa Huomattavasti parempi tiivistämissuhde 13
Yhteenveto tiedosta Tieto edustaa jotakin suuretta, ilmiötä tai asiaa todellisesta tai keinotekoisesta maailmasta. Tieto on koodattu yleisesti digitaaliseen muotoon, jonka tietoyksikkö on bitti. Digitaalisen tiedon toisintaminen (reproduktio) on yksinkertaisissa tapauksissa suoraviivaista: lineaarialgebra geometriset muunnokset tietokonegrafiikan algoritmit tiedon visualisointi 14
Tapaus 1: Lineaarialgebra ja tiedon havainnollistaminen Kaarna, A., 2008 Tiedon toisintamisen välineitä Geometrisen tiedon muunnoksia Geometrisen tiedon saamisesta ja esittämisestä: Valot ja varjot (shape from shading / fotometrinen stereo) Esim. tietokonepeleissä paljon käytetty (kolmiulotteista grafiikkaa) 15
Geometrisen tiedon muunnoksista 16
Geometrisen tiedon saamisesta: Fotometrinen stereo Ikonen L 2011 17
Pinnanmuodot (topografia) fotometrisellä stereolla 18
Kolmiulotteinen kasvomallinnus Kasvomalli yhdestä valo-varjo-kuvasta Rakenteinen valo kolmiulotteiseen rekonstruktioon 19
Monimutkaisesta tiedosta Ihminen on kuitenkin tottunut havainnoimaan ja toimimaan "vain" neljässä ulottuvuudessa: Entä piste (2, 1, 4, 3,...) n-ulotteisessa (n 4) koordinaatistossa? Ihmiselle onkin vaikeaa käsitellä monimutkaista (esim. monikanavaista) tietoa, jossa on lukuisia ulottuvuuksia. 20
Monimutkaisesta tiedosta Nykytekniikka mahdollistaa hyvin monipuolisen tiedon mittaamisen ympäristöstä. Erilaiset tietoaineistot sisältävät runsaasti moniulotteista tietoa. Tieto onkin tällöin muunnettava sellaiseen muotoon, että ihminen pystyy hahmottamaan tiedon luonteen: Olennaisen tiedon rajaaminen Ulottuvuuksien vähentäminen 21
Taustaa: Neurolaskenta Neuroverkot mallintavat ihmisen aivojen rakennetta ja toimintaa: Skaala vain huomattavasti rajoitetumpi eli vähemmän hermosoluja ja niitä yhdistäviä synapseja Hermosoluilla matemaattinen malli, jota hyödynnetään laskennassa Neuroverkolla voi mallintaa mitä tahansa funktiota Ohjattua tai ohjaamatonta oppimista, jolla verkon toiminta kehittyy haluttuun suuntaan 22
Taustaa: Neuroni 23
Taustaa: Neuronin laskennallinen malli Perseptronin ulostulo 0 tai 1 kertoo kumpaan luokkaan syöte kuuluu (lineaarisesti erottuvien datajoukkojen luokittelu): 24
Taustaa: Perseptroni Mallintaa hermosolun toimintaa: y = f (u ) u = w1 x1 + w2 x2 θ 1, u > 0 f (u ) = 0, u 0 x1 w1 w2 x2 f(u) y Σ -1 θ missä xi on neuronin syöte, wi syötteen painoarvo, θ biaksen painoarvo, f(u) siirtofunktio ja y ulostulo 25
Taustaa: Monikerrosperseptroni 26
Taustaa: Monikerrosperseptroni Neuroneissa on lineaarinen tai epälineaarinen funktio (esim. sigmoidi), jonka avulla lähdön arvo lasketaan neuronin sisääntulojen painotetusta summasta. 27
Taustaa: Monikerrosverkon hyödyntäminen Monikerrosverkossa voi olla mielivaltainen määrä kerroksia (käyttäjän määriteltävä): Piilokerros/piilokerroksia (välitulokset) Ulostulokerros Mitä enemmän muuttujia mallinnettavassa ongelmassa on, sitä enemmän kerroksia sekä perseptroneita kerrosta kohti tarvitaan. Neuroverkko, jossa on riittävästi neuroneita, yksi sigmoidifunktiolla varustettu piilokerros ja lineaarinen ulostulokerros, voi oppia minkä tahansa funktion, jossa äärellinen määrä epäjatkuvuuskohtia. 28
Taustaa: Monikerrosverkon käyttötarkoituksia Luokittelu Stokastinen ongelmanratkaisu, optimointi Monimutkaisen ilmiön approksimointi, esim. prosessin säätö: Ei toimi kaikissa tapauksissa kovin hyvin miksi? Mikä rajoittaa suorituskykyä? 29
Itseorganisoituva kartta (Engl. Self-Organizing Map, SOM) Ohjaamatonta oppimista: Neuroverkosta haetaan painoarvoltaan lähimpänä syötettä oleva neuroni. Neuronien painot päivitetään oppimisalgoritmin mukaan: mi(t+1) = mi(t) + α (x(t) mi(t)), i Nc mi(t+1) = mi(t) muulloin missä mi on neuronin i painoarvo, t on aika, α on oppimisnopeusvakio (voi muuttua ajan mukana), x on syöte ja Nc on neuronin i naapurusto. 30
Yhteenveto Tieto edustaa joko todellista tai keinotekoista maailmaa. Tieto on koodattu yleisesti digitaaliseen muotoon, jonka tietoyksikkö on bitti. Digitaalisen tiedon reproduktio on yksinkertaisissa tapauksissa suoraviivaista: lineaarialgebra geometriset muunnokset tietokonegrafiikan algoritmit tiedon havainnollistaminen Monimutkaisen tiedon kohdalla sen havainnollistaminen vaatii usein ulottuvuuksien vähentämistä. 31