Self-Organization Map
Itseorganisaatiokartta
Artturi Alaharjula , 11002W, 29.3.2000
Joensuun Yliopisto, Tietojenkäsittelytieteen laitos, Laudaturseminaari
1. Johdanto
Oppivien ja älykkäiden järjestelmien sovelluksia on tullut 1990-luvulla enemmässä määrin julkisuuteen. Soveltamisalue on rajaton, mutta eri menetelmien vahvuudet ja heikkoudet ovat määritelleet niiden ensimmäiset käyttötarkoitukset. Sovelluksista suurin osa on säätö- ja mittaustehtävissä, prosessien ohjauksessa ja erilaisten analyysien tukena. Toisen suuren osa-alueen ovat muodostaneet taloushallinnon sovellukset, joissa näitä käytetään tilastotiedon sisäisten yhteyksien havainnointiin sekä ennustamiseen. Lisäksi yhden osa-alueen muodostavat hahmontunnistussovellukset, joita käytetään tietokonenäössä, puheentunnistuksessa ja satelliittikuvien tulkinnassa. Kuvassa 1 on mainittu oppivien ja älykkäiden järjestelmien erilaisia käyttötarkoituksia esimerkkinä.
Kuva 1.
Julkisyhteisöt |
Rahoitus/tukipäätösten tekeminen, dokumenttien automaattinen käsittely, postikoodien tunnistus |
Puolustusvoimat |
Autonomiset laitteet ja aseet, kuljetuslogistiikka, kohteen tunnistus |
Tiedonsiirto |
Tiedon kompressointi, tietoverkon reititys, vikadiagnostiikka tietoverkoissa |
Talous |
Pörssikurssien ennustaminen, riskin arviointi, asiakkaan käyttäytymisen mallintaminen |
Teollisuus |
Mittaus, säätö ja ohjaus, vikadiagnostiikka, teollisuuslaitoksen logistinen suunnittelu |
Lääketiede |
Sydänfilmin analysointi, lääketieteellinen kuvankäsittely, potilasdiagnostiikka |
Vartiointi |
Kulunvalvontajärjestelmät, riskitekijöiden tunnistus |
Kulutuselektroniikka |
Kodinkoneet, valokopiokone, auton moottori, jarrut, jousitus, jne. |
2. Oppivat ja älykkäät järjestelmät
Oppivien ja älykkäiden järjestelmien rajaaminen on vaikeata, jopa turhaakin. Tunnetuimpia näistä menetelmistä ovat neurolaskenta, sumeat järjestelmät ja geneettiset algoritmit.
Neurolaskennan avulla voidaan paljastaa tietomassoissa olevia lainalaisuuksia ja ryhmittymiä, joita on vaikeata tulkita ja löytää vanhoilla menetelmillä. Neurolaskennan älykkyys perustuu menetelmän kykyyn oppia tehtävien ratkaisut esimerkkien mukaan ja aikaisemmin ratkaistujen tehtävien soveltamiseen ennakkotapauksina. Laskenta suoritetaan neuroverkoilla, jotka koostuvat karttayksiköistä. Näillä on olemassa monta syötettä, mutta ainoastaan yksi vastine. Verkon opetusvaiheessa jokaista syötettä muutetaan ns. painokertoimella, jonka seurauksesta syötteiden vaikutusta verkon käyttäytymiseen vahvistetaan tai heikennetään.
Sumeat järjestelmät rakennetaan joukoista sumeita sääntöjä, joiden totuusarvot sovitetaan lukuina yhden (true) ja nollan (false) välille. Siis sääntöjen yhteisvaikutus määrä lopullisen tuloksen.
Geneettiset algoritmien joukko edustaa uusinta ajatusmallia oppivissa ja älykkäissä järjestelmissä. Tämä menetelmä perustuu pitkälti yrityksen ja erehdyksen menetelmän käyttöön ongelmanratkaisuissa. Yritys voidaan selventää menetelmäksi kehittää uusia muunnelmia nykyisistä ratkaisuista ja erehdys on taas testi, joka hylkää huonosti toimivat ratkaisut.
3. Neurolaskennan menetelmät
Neurolaskennan algoritmit voidaan jakaa kolmeen eriluokkaan: kiinteäpainoiset verkot, ohjatun oppimisen verkot ja itseoppivat verkot.
Kiinteissä verkoissa ei suoranaista oppimista tapahdu, vaan neuronien painot ovat edeltä käsin määritelty. Painojen määrittäminen tapahtuu matemaattisin menetelmin, josta tunnetuin on energiafunktion käyttö.
Kuva 2. Kiinteäpainoiset verkot
Ohjattu oppiminen on kaikkein suosituin neuroverkkoluokka. Tässä tapauksessa neuroverkko opetetaan joukolla syötteitä ja vastauksia, jolloin syntyy yleistävä laskentakaava. Laskennallisesti opetus on liian aikaan vievää, mutta opetusvaiheen jälkeen tapahtuva käyttö on tehokasta.
Kuva 3. Ohjattu oppiminen
Itseoppimisessa tunnetaan syöteinformaatio, mutta ei vastetta. Oppimisen tehtävänä on löytää samanlaisuuksia, koska näitä voidaan hyödyntää informaation tulkinnassa. Tätä menetelmää voidaan havainnollistaa siten, että syöteinformaation käyttäytymisestä muodostetaan malli neurolaskennalla. Opetusalgoritmissa neuronit kilpailevat keskenään siitä, mikä edustaa syötettä parhaimmin. Tunnetuin ohjaamattoman opetuksen menetelmistä on professori Teuvo Kohosen kehittämä itseorganisaatiokartta.
Kuva 4. Itseoppiminen
4. Itseorganisaatiokartta: SOM
Itseorganisaatiokartta kykenee käsittelemään valtaisat määrät informaatioita siten, että se etsii aineistosta keskinäisiä riippuvaisuuksia ja järjestää sitten aineiston sen mukaan. Suorituksen aikana järjestelmä oppii keräämästään ja luokittamastaan tiedosta. Menetelmä on levinnyt käyttöön ympäri maailman, ja tähän mennessä siitä on julkaistu yli 3700 tutkimusta.
Itseorganisaatiokartta on yleensä yksi- tai kaksiulotteisen muotoinen neuroverkko, jossa jokainen karttayksikkö on yksi prosessointiyksikkö eli neuroni. Kartalle olevat neuronit ovat vuorovaikutuksessa ympärillä sijaitsevien neuronien kesken. Kartan opetus perustuu ns. ohjaamattomaan opetukseen, jolloin kartan opetusvaiheessa ei käyttäjän tarvitse keskustella kartan kanssa. Opetusjoukolle ei määritellä vastineita, vaan ne syntyvät oppimisprosessin tuloksena.
Itseorganisoituvalla piirrekartalla on kaksi tärkeää omaisuutta: vektorikvantisointi ja jatkuva "topologinen " kuvaus kahden avaruuden välillä. Tämä merkitsee sitä, että neuronit pyrkivät muuttamaan painokertoimiaan kohti tilaa, jossa jokainen neuroni on keskimääräisesti yhtä usein aktiivinen ja aktiivisuudet ovat jakautuneet mahdollisimman tasaisesti erilaisten syötteiden joukkoon. Lisäksi neuronit, jotka ovat verkossa lähellä toisiaan reagoivat samantyyppisiin syötteisiin, kun taas verkossa kauempana olevat neuronit reagoivat erityyppisiin syötteisiin. Topologista itseorganisaatioverkkoa voidaan soveltaa moniin tehtäviin, joissa datan klusterointi, ryhmittely, korrelaatioiden etsiminen ym. ovat myös tärkeitä.
4.1 Kartan toiminta
Ennen opetuksen aloittamista on karttayksiköt alustettava, tällöin taulukolle annetaan alkuarvot. Alustaminen voidaan suorittaa yksinkertaisimmin satunnaisella alustamisella tai alustamalla satunnaisesti valittuihin opetusjoukon arvo-alueen arvoihin. Havainnollisesti on todettu, että opetus karkean alustuksen jäljiltä johtaa usein järkevään lopputulokseen. Kuitenkin alustuksen laatu vaikuttaa kartan järjestymisnopeuteen opetuksen kuluessa.
Kartan opetus tehdään lukemalla tiedostosta tai tietokannasta arvoja, jotka syötetään opetusalgoritmille piste kerrallaan. Opetusdatan etäisyys kartan jokaiseen karttayksikköön (neuroniin) lasketaan kaavasta 1.
Kaava 1. etäisyysij = SQRT((x1 - y1) 2+( x2 - y2) 2+ .... (xn - yn) 2), jossa
xn = tiedoston tai tietokannan n-solun arvo
yn = verkon neuronin n-solun arvo
Kun kartan jokainen karttayksikkö on käyty läpi, niin tällöin on löytynyt pienin etäisyyksien arvo syötteen ja kartan neuronin välillä. Tämä merkitsee sitä, että tämä kartan yksikkö on kaikista lähimpänä sitä opetusdatan arvoa sillä hetkellä. Tämän jälkeen kartan neuronin ja sitä ympäröivien neuronien arvoa muutetaan kertoimella lähemmäksi opetusdataa kaavan 2 mukaan.
Kaava 2. yij = yij + a(xi - yij ) , jossa
yij = verkon neuronin arvo
xi = tiedoston tai tietokannan arvo
a = muutoskerroin
Teuvo Kohonen mainitsee kirjassaan alustavaksi säännöksi tuhannen opetusaskeleen luokkaa oleva ensimmäinen, karkean opetuksen vaihe. Ensimmäisellä kierroksilla a arvo on lähellä ykköstä ja se pienenee luokittelun edistyessä kohti nollaa lineaarisesti tai on funktion mukaisesti ajan suhteen vähenevä. Lisäksi vaaditaan, että 0<a<1. a kertoimella muutetaan neuronin sisältöä ja tämän ympärillä olevia neuronien arvoja muutetaan esim. a/2 arvolla. Alussa a:n ollessa lähellä ykköstä, niin kartan liikkeet ovat suuria, mutta a:n arvon laskiessa nolla kohti muutokset pienevät ja muuttuvat ainoastaan ns. hienosäädöksi.
Kuva 2.
n |
O |
O |
O |
O |
O |
4 |
O |
O |
O |
O |
O |
3 |
O |
O |
X |
O |
O |
2 |
O |
O |
O |
O |
O |
1 |
O |
O |
O |
O |
O |
1 |
2 |
3 |
4 |
n |
4.2 Kartan sovelluksia
Erityisesti SOM:n sovelluskohteita on paljon, joista voidaan mainita mm. paperin sekä puun pintavikojen automaattinen laadunvalvonta ja luokittelu. Tietoliikenteessä SOM:a käytetään esim. puhelinliikenteen analysoimiseen ja signaalien suodatukseen sekä virheiden korjaukseen ja havainnointiin. Eräs viimeisimmistä sovelluksista on avaruuskaukoputki Hubblen keräämien tietojen analysointi. Tällöin tuhansille galakseille löydettiin ennestään tuntematon luokitus.
WEBSOM on kehitetty Helsingin teknillisen korkeakoulun Neuroverkkojen tutkimuskeskuksessa. WEBSOM on menetelmä, jossa tekstidokumentit järjestetään kartoiksi tiedon etsimistä varten. Tämä ohjelma perustuu SOM-algoritmiin, joka järjestää dokumentit kaksi ulotteiselle kartalle siten, että tosiinsa lähellä olevat dokumentit sijaitsevat lähellä toisiaan. Tietokartta vastaa melko pitkälle tapaa, miten ihminen ajattelee; yhdestä asiasta tulee mieleen toinen. WEBSOM:a voidaan soveltaa esim. Internet-tietohakuun, mutta tällöin hakupohjana ei voi olla koko Internet vaan siitä tarkemmin rajattu aineisto.
5. Yhteenveto
Itseoraganisaatiokartta on käytetympiä neutraalilaskennan menetelmiä. Se on tehokas työväline moniulotteisen datan ryhmittelyssä. Kartta soveltuu hyvin yleisiin ja tiettyihin ryhmittelyihin, joka on syy sen suureen suosioon. Poikkeuksellisesti kartta ei sovellu yksittäisten tietojen käsittelyyn ja analysointiin.
Lähdeluettelo