5. Kohosen itseorganisoituvat verkot. 5.1. Johdanto



Samankaltaiset tiedostot
Kognitiivinen mallintaminen. Nelli Salminen

Tällä kerralla ohjelmassa. Kognitiivinen mallintaminen Neuraalimallinnus Kertausta: Perseptronin oppimissääntö

Kognitiivinen mallintaminen Neuraalimallinnus, luento 1

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

1. OHJAAMATON OPPIMINEN JA KLUSTEROINTI

Neuroverkkojen soveltaminen vakuutusdatojen luokitteluun

JOHDATUS TEKOÄLYYN TEEMU ROOS

Johdatus tekoälyyn. Luento : Koneoppiminen. Patrik Hoyer. [ Kysykää ja kommentoikaa luennon aikana! ]

JOHDATUS TEKOÄLYYN TEEMU ROOS

JOHDATUS TEKOÄLYYN TEEMU ROOS

FUNKTIONAALIANALYYSIN PERUSKURSSI Johdanto

E. Oja ja H. Mannila Datasta Tietoon: Luku 2

Tänään ohjelmassa. Kognitiivinen mallintaminen Neuraalimallinnus laskarit. Ensi kerralla (11.3.)

Spektri- ja signaalianalysaattorit

Etsintä verkosta (Searching from the Web) T Datasta tietoon Heikki Mannila, Jouni Seppänen

Kombinatorinen optimointi

TEEMU ROOS (KALVOT MUOKATTU PATRIK HOYERIN LUENTOMATERIAALISTA)

10. Esitys ja kuvaus

Matematiikan tukikurssi

ImageRecognition toteutus

Mistä on kyse? Pilvien luokittelu satelliittikuvissa. Sisältö. Satelliittikartoitus. Rami Rautkorpi Satelliittikartoitus

Solmu 3/2001 Solmu 3/2001. Kevään 2001 ylioppilaskirjoitusten pitkän matematiikan kokeessa oli seuraava tehtävä:

Johdatus tekoälyn taustalla olevaan matematiikkaan

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

Kuulohavainnon perusteet

Martingaalit ja informaatioprosessit

Suora. Määritelmä. Oletetaan, että n = 2 tai n = 3. Avaruuden R n suora on joukko. { p + t v t R},

Harjoitus 6: Simulink - Säätöteoria. Syksy Mat Sovelletun matematiikan tietokonetyöt 1

Johdatus tekoälyn taustalla olevaan matematiikkaan

A ja B pelaavat sarjan pelejä. Sarjan voittaja on se, joka ensin voittaa n peliä.

Luku 6. Dynaaminen ohjelmointi. 6.1 Funktion muisti

Matematiikan tukikurssi

Viikko 1: Johdantoa Matti Kääriäinen

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

Numeeriset menetelmät

MS-A0004/A0006 Matriisilaskenta

Johdatus tekoälyn taustalla olevaan matematiikkaan

S Laskennallinen Neurotiede

Vapaus. Määritelmä. jos c 1 v 1 + c 2 v c k v k = 0 joillakin c 1,..., c k R, niin c 1 = 0, c 2 = 0,..., c k = 0.

Signaalien generointi

Yhtälöryhmät 1/6 Sisältö ESITIEDOT: yhtälöt

Ongelma(t): Miten digitaalista tietoa voidaan toisintaa ja visualisoida? Miten monimutkaista tietoa voidaan toisintaa ja visualisoida?

Demonstraatiot Luento

6.8 Erityisfunktioiden sovelluksia

Lukujonon raja-arvo 1/7 Sisältö ESITIEDOT: lukujonot

805306A Johdatus monimuuttujamenetelmiin, 5 op

Taajuusmittauskilpailu Hertsien herruus Mittausraportti

IIR-suodattimissa ongelmat korostuvat, koska takaisinkytkennästä seuraa virheiden kertautuminen ja joissakin tapauksissa myös vahvistuminen.

Tässä luvussa käsitellään optimaalisten piirteiden valintaa, luokittelijan optimointia ja luokittelijan suorituskyvyn arviointia.

Matriisit ja vektorit Matriisin käsite Matriisialgebra. Olkoon A = , B = Laske A + B, , 1 3 3

Matlab-tietokoneharjoitus

Kenguru 2012 Junior sivu 1 / 8 (lukion 1. vuosi)

Harjoitustehtävät ja ratkaisut viikolle 48

Jatkuvat satunnaismuuttujat

Luku 2. Datasta tietoon: mitä dataa? mitä tietoa?

1 2 x2 + 1 dx. (2p) x + 2dx. Kummankin integraalin laskeminen oikein (vastaukset 12 ja 20 ) antaa erikseen (2p) (integraalifunktiot

Laskennallinen data-analyysi II

Kiinnostuspohjainen topologian hallinta järjestämättömissä vertaisverkoissa

Topologia Syksy 2010 Harjoitus 9

Harjoitus 3 ( )

Kohosen itseorganisoituva kartta virtualisoitujen laskentaresurssien eksploratiivisessa data-analyysissa. Jaakko Routamaa

Verkon värittämistä hajautetuilla algoritmeilla

805306A Johdatus monimuuttujamenetelmiin, 5 op

Metsämuuronen: Tilastollisen kuvauksen perusteet ESIPUHE... 4 SISÄLLYSLUETTELO METODOLOGIAN PERUSTEIDEN KERTAUSTA AINEISTO...

T Luonnollisen kielen tilastollinen käsittely Vastaukset 3, ti , 8:30-10:00 Kollokaatiot, Versio 1.1

Graafit ja verkot. Joukko solmuja ja joukko järjestämättömiä solmupareja. eli haaroja. Joukko solmuja ja joukko järjestettyjä solmupareja eli kaaria

Tämän luvun sisältö. Luku 6. Hahmontunnistuksen perusteita. Luokittelu (2) Luokittelu

Algoritmit lyhyiden sekvenssien rinnastamiseen referenssigenomia vasten. Krista Longi

6. Analogisen signaalin liittäminen mikroprosessoriin Näytteenotto analogisesta signaalista DA-muuntimet 4

DC-moottorin pyörimisnopeuden mittaaminen back-emf-menetelmällä

Tekstuurintunnistuksen lyhyt oppimäärä. Ts. pari tapaa erottaa tiiliseinä pensaasta.

7.4 Sormenjälkitekniikka

Kaksiluokkainen tapaus, lineaarinen päätöspinta, lineaarisesti erottuvat luokat

MS-C1340 Lineaarialgebra ja

VAASAN YLIOPISTO TEKNILLINEN TIEDEKUNTA SÄHKÖTEKNIIKKA. Lauri Karppi j SATE.2010 Dynaaminen kenttäteoria DIPOLIRYHMÄANTENNI.

ẋ(t) = s x (t) + f x y(t) u x x(t) ẏ(t) = s y (t) + f y x(t) u y y(t),

Tekoäly ja koneoppiminen metsävaratiedon apuna

MS-A0202 Differentiaali- ja integraalilaskenta 2 (SCI) Luento 4: Ketjusäännöt ja lineaarinen approksimointi

P (X B) = f X (x)dx. xf X (x)dx. g(x)f X (x)dx.

Mallipohjainen klusterointi

Kohina. Havaittujen fotonien statistinen virhe on kääntäen verrannollinen havaittujen fotonien lukumäärän N neliö juureen ( T 1/ N)

Tee-se-itse -tekoäly

Algoritmit 1. Luento 10 Ke Timo Männikkö

Diskriminanttianalyysi I

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Tietorakenteet ja algoritmit Johdanto Lauri Malmi / Ari Korhonen

Tilastolliset ohjelmistot A. Pinja Pikkuhookana

Harjoitus 3 ( )

LUKU II HOMOLOGIA-ALGEBRAA. 1. Joukko-oppia

9. Tila-avaruusmallit

Suora 1/5 Sisältö ESITIEDOT: vektori, koordinaatistot, piste

Vektorien pistetulo on aina reaaliluku. Esimerkiksi vektorien v = (3, 2, 0) ja w = (1, 2, 3) pistetulo on

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8

1 Määrittelyjä ja aputuloksia

10.2. Säteenjäljitys ja radiositeettialgoritmi. Säteenjäljitys

10. Painotetut graafit

KOHINA LÄMPÖKOHINA VIRTAKOHINA. N = Noise ( Kohina )

Muodonmuutostila hum

Tilastotiede ottaa aivoon

Tilastotiede ottaa aivoon

Transkriptio:

76 77 5. Kohosen itseorganisoituvat verkot 5.1. Johdanto Edellä on tarkasteltu ohjattuun oppimiseen pohjautuvia algoritmeja. Tässä kappaleessa pohdiskellaan ohjaamattoman oppimisen menetelmiä, erikoisesti Kohosen itseorganisoituvia karttoja. Ohjattu oppiminen perustui ulkopuoliseen opetusvasteeseen (verkon haluttu tulos), jonka tulee olla käytettävissä kullekin opetusjoukon syötteelle. Tämä lähestymistapa on sangen hyödyllinen ja muistuttaa jossain määrin inhimillistä oppimista. Monissa yhteyksissä on kätevää, jos neuroverkko itse pystyy muodostamaan opetusjoukon luokat. Tämän toteuttamiseksi on verkolle tehtävä kaksi perusoletusta. Ensinnäkin luokkajäsenyys määritellään laveasti syötehahmoina, joilla on yhteisiä piirteitä. Toiseksi verkon tulee kyetä identifioimaan yhteiset piirteet yli koko syötehahmojen määrittelyalueen. Kohosen itseorganisoituva kartta on neuroverkko, joka toimii yo. oletuksin ja käyttää ohjaamatonta oppimista muuttaessaan verkon sisäistä tilaa opetusjoukosta löydettyjen piirteiden mallintamisessa. 5.1.1. Itseorganisoitumisen käsite Teuvo Kohonen (TKK) on tutkinut ja kehittänyt neuroverkkoja vuosikymmeniä, siis jo ennen neuroverkkoboomia, joka alkoi 1980 luvun puolivälissä. Hänen kantavana ajatuksenaan lienee ollut mallintaa ideoillaan aivojen adaptiivisia oppimisominaisuuksia. Neurobiologit ovat vuosikymmeniä sitten tunnistaneet aivojen lokaalit alueet, erikoisesti aivokuorelta, jossa ne suorittavat määrättyjä tehtäviä, kuten puhe, näkö ja liikkeiden kontrolli. Jo 1970 luvun alussa muutamat tutkat (C. von der Malsburg ja D.J. Willsha) esittivät itseorganisoitumisen tai järjestymisen ideoita, jotka olivat biologisesti motivoituja. Ne perustuivat valikoituneesti sensitiivisten neuronien kehitykseen näköaivokuorella. Kohosen tutkimukset perustuvat näihin itseorganisoitumisen lähtökohtiin, ja niillä ajatellaan olevan todellista yhtäläisyyttä biologisten neuroverkkojen kanssa. 5.1.2. Yleistä Kohonen käytti lähtökohtaa, että aivot soveltavat alueellista kuvausta monimutkaisten tietorakenteiden sisäiseen mallintamiseen. Tämä mahdollistaa tiedon tiivistämisen verkkoon talletettavissa vektoreissa. Kysymys on vektorikvantisoinnista. Se sallii myös verkon tallettaa dataa siten, että opetusjoukon alueelliset tai topologiset suhteet ovat ylläpidettävissä ja esitettävissä merkityksellisellä tavalla. Tiedon tiivistäminen tarkoittaa, että monidimensioinen data voidaan esittää tätä pienempidimensioisessa avaruudessa. Kohosen algoritmin toteutukset ovat valtaosaltaan kaksidimensioisia. Tyypillinen verkko on kuvassa 5.1. Se on yksikerroksinen, kaksidimensioinen Kohosen neuroverkko. Nyt havaitaan, että kuvan 5.1. neuroverkossa ei ole solmuja järjestetty monikerroksisen perceptronin tapaan syöte, piilo ja tuloskerroksiksi, vaan tasaiseksi ristikoksi tai hilaksi. Kaikki syötesolmut ovat suorassa yhteydessä verkon hilan jokaiseen solmuun. Takaisinsyöttö on rajoitettu lateraalisiksi eli sivuttaisiksi yhteyksiksi välittömiin naapurisolmuihin. Neuroverkossa ei ole myöskään mitään erillistä tuloskerrosta, vaan jokainen hilan solmu on itsessään myös tulossolmu.

78 79 2. Esitä syöte: Esitä syöte x 0 (t), x 1 (t), x 2 (t),, x n 1 (t), missä x i (t) on syötesolmun i syöte hetkellä t. 3. Laske etäisyydet: Laske etäisyys d j syötteen ja jokaisen tulossolmun j välillä kaavalla: d j n 1 = i= 0 ( x ( t) ( t)) i 2 Kuva 5.1. Kohosen piirrekartta; neuroneja on ainoastaan yksi kerros, ja kaikki syötesolmut ovat niihin yhdistettyjä. 5.2. Kohosen algoritmi Oppimisalgoritmi järjestää hilan solmut lokaaleiksi naapurustoiksi, jotka toimivat syötteen piirteiden luokitteloina. Jaksottainen prosessi muodostaa itsenäisesti topologisen kartan vertaamalla syötehahmoja solmuihin talletettuihin vektoreihin. Mitään opetusvastetta ei tarvita opetussyötteelle. Siellä missä syötteet täsmäävät solmujen vektoreiden kanssa, kartan kyseinen alue optimoidaan valikoidusti edustamaan asianomaisen luokan opetusjoukon keskimääräistä hahmoa. Verkko asettuu satunnaisesti järjestetyn joukon solmuista lähtien piirrekartaksi, jolla on lokaali esitysmuoto ja on itseorganisoitunut. Kohosen verkon algoritmi 1. Alusta verkko: Määrittele painoarvot (t), i=0,,n 1, solmusta i solmuun j prosessin hetkellä (iteraatiolla) t=0. Alusta painoarvot n syötesolmusta hilan solmuihin pienillä satunnaisluvuilla. Aseta solmun j naapuruston säteen alkuarvo N j (0) suureksi. 4. Valitse minimietäisyys: Määrää tulossolmu j*, jonka etäisyys d j on minimi. 5. Päivitä painoarvot: Päivitä solmun j* painoarvot ja sen naapurit, jotka naapuruston koko N j* (t) käsittää. Uudet painoarvot ovat seuraavat: ( t + 1) = ( t) + ( t)( x ( t) ( t)) Tässä indeksin j arvot määräytyvät koon N j* (t) määrittämästä joukosta ja i=0,,n 1. Vahvistustermi η(t), 0<η(t)<1, pienenee ajan mukana hidastaen painoarvojen muuttumista. Naapuruston koko N j* (t) pienenee ajan kuluessa rajoittaen maksimiaktivaation alaa. 6. Toista menemällä vaiheeseen 2. Yhteenvetona algoritmista todetaan: Etsi opetussyötettä lähin täsmäävä yksikkö. Kasvata tämän yksikön ja naapurustossa olevien solmujen samanlaisuutta syötteeseen nähden. i

80 81 5.2.1. Biologiset lähtökohdat Onko kuvatulle oppimissäännölle biologista oikeutusta? Nykykäsityksen mukaan biologinen evidenssi tukee tätä ideaa. Kappaleessa 2 esitettiin biologisen hermosolun aktivaation leviävän aksonien kautta muihin hermosoluihin, joilla voi olla vahvistava tai heikentävä vaikutus. Ei kuitenkaan käsitelty kysymystä, kuinka lateraalinen eli sivuttainen etäisyys aktivaatiota levittävästä hermosolusta vaikuttaa aksoniyhteyksiin. Yksinkertaistettu, mutta todennäköinen vaikutusmalli on kuvan 5.2. meksikolainen hattu. Kuva 5.2. Meksikolainen hattu funktio kuvaa lateraalisen yhteyden vaikutusta. Fyysisesti aktiivista solua lähellä olevilla soluilla on vahvimmat yhteydet. Määrätyllä etäisyydellä olevat solut vaihtuvat ehkäiseviksi. Tähän ilmiöön perustuen ainakin osin menetelmä tukeutuu aivojen lokaalisen topologisen kuvauksen kehitykseen. Vaikutusta mallinnetaan menetelmässä käyttämällä ainoastaan lokaalisti yhdistettyjä verkkoja ja rajoittamalla painoarvojen muokkaamista lokaaleihin naapurustoihin. hankalasti laskettavia derivaattoja, kuten gradienttia käytettäessä laskettiin. Yhteyksille syötteistä hilan solmuihin annetaan aluksi pienet satunnaisluvut painoarvoiksi. Täten jokainen solmu saa yksikäsitteisen painovektorin, jonka dimension määrää syötevektorin komponenttien lukumäärä. Oppimisjakson aikana opetushahmojen joukko koko datajoukon edustava osajoukko syötetään neuroverkolle. Verkon toimintaa voidaan verrata voittaja ottaa kaiken funktioon. Verrataan etäisyyksiä eri syötehahmojen ja painovektorien välillä, kuten algoritmissa esitettiin. Solmu, jolla on syötehahmon lähin painovektori, valitaan voittajaksi. Voittajasolmu muuntaa painovektoriaan syötteen tapaiseksi. Solmu on nyt sensitiivinen tämän erityisen opetussyötteen suhteen ja antaa verkon maksimivasteen, jos tätä syötettä sovelletaan opetuksen jälkeen uudelleen. Voittajasolmun naapuruston N c solmuja muunnetaan myös, sillä verkko pyrkii luomaan alueita, jotka vastaavat arvojen levitykseen opetussyötteen ympäristössä. Näitä solmuja muokataan samoin kuin voittajasolmua, ja tästä tulee opetusjakson aikana eräänlainen keskiarvoedustaja kyseiselle hahmoluokalle. Tästä johtuen vektorit, jotka ovat lähellä opetusarvoja, saadaan luokiteltua oikein, vaikka verkko ei ole nähnyt niitä aiemmin. Tämä demonstroi verkon yleistysominaisuutta. Adaptiivisen itseorganisoituvan oppimisen kaksi keskeisintä kysymystä Kohosen verkon tapauksessa ovat painoarvojen muokkaamisprosessi ja solmujen topologisten naapurustojen käsite. Molemmat ideat eroavat aiemmin esitetyistä perceptronneuroverkoista, joten nämä avainteemat ovat olennaisia seuraavassa Kohosen verkon tarkastelussa. Kyseisen paradigman suosio saattaa johtua sen helposta lähestyttävyydestä, ts. selkeästä ja luonnollisesta oppimissäännöstä. Oppimissääntö on yksinkertainen eikä sovella

82 83 5.3. Painoarvojen opettaminen Kohosen neuroverkossa ei tarvita mitään derivaattojen laskentaa. Algoritmiin viitaten painoarvon muutos on suhteessa syötevektorin ja painovektorin erotukseen ( t + 1) = ( t) + ( t)( x ( t) ( t)) ja tässä on painovektorin i:s komponentti, i=0,,n 1, solmuun j, kun j on naapurustossa N j* (t). Suhdeluku eli oppimisnopeus η(t), 0<η(t)<1, vähentää muokkaamisnopeutta ajan mukana, missä ajalla tarkoitetaan oppimisprosessin iteraatioita. Oppimisprosessissa on kaksi vaihetta. Ensimmäinen luo eräänlaisen topologisen järjestyksen satunnaisesti suuntautuneiden solmujen kartalla. Opetusprosessi pyrkii klusteroimaan eli ryvästämään solmut topologisella kartalla heastaakseen opetusjoukosta löydettyjen luokkien alueita. Tämä on karkea kuvaus, jossa verkko keksii, kuinka monta luokkaa pitää tunnistaa ja miten ne saitsevat toisiinsa nähden kartalla. Tämä vaikuttaa suurina muutoksina solmujen suuntautumiseen, joten oppimisnopeus pidetään suurena (η>0.5) suurien painoarvomuutosten sallimiseksi ja nopean approksimoivan kuvauksen löytämiseksi. Kun stabiili karkea esitys on löydetty, paikallistettujen alueiden solmut hienosäädetään syötteen opetusvektorien avulla. Edellistä paljon pienempiä muutoksia on tehtävä painoarvoihin hienosäätöä varten, joten oppimisnopeutta on pienennettävä opetusprosessin edistyessä. Käytettäessä pientä oppimisnopeutta η hienosäätövaihe vie tavallisesti 100 1000 kertaa niin monta iteraatiota kuin karkean esityksen laskeminen. Neuroverkon uudelle opetussyötteelle on ensin määrättävä voittajasolmu. Tämä määrää piirrekartan alueen, jonka painoarvot on päivitettävä. Voittajasolmu on sellainen, jolla on parhaiten syötevektorin kanssa täsmäävä eli lähin painovektori. i Vektoreiden samanlaisuusmetriikkana on euklidinen etäisyysmitta. Tältä osin Kohosen verkossa on huomattava seuraava seikka. Vektorin euklidinen normi on pituus tai suuruusmitta. Tässä ei silti pituus ole kovin olennainen asia. Sen saan vektorin suunta avaruudessa on tärkeä. Vektorit ovat tällöin samanlaisia, jos ne osoittavat samaan suuntaan välittämättä pituudesta. Tämän vuoksi kaikki painovektorit normoidaan aluksi ennen vertailua toisiinsa. Vektorin normointi jakamalla se pituudellaan pienentää sen yksikkövektoriksi. Tämä tarkoittaa euklidisen avaruuden vektorien joukolle, että niiden suunta pysyy samana, mutta pituus kiinnitetään riippumatta niiden alkuperäispituudesta. Nyt niiden välinen vertaaminen koskee ainoastaan suunnan käsittelemistä. Lisähyötynä vektorien normoinnista on verkon opetusajan supistuminen, koska se poistaa painoavaruuden yhden vaihtelutekän. Painoarvot lähtevät suunnasta, joka on normoimatonta lähempänä haluttua tilaa. Tämä vähentää uudelleensuuntautumisaikaa opetuksen aikana. Painoarvojen alustus Toistaiseksi on mainittu, että neuroverkon painoarvojen alkuarvojen tulisi olla pieniä, normoituja satunnaislukuja. Tämä on kuitenkin yliyksinkertaistus, sillä jos ne olisivat todella satunnaisesti hajaantuneet, verkko saattaisi olla suppenematon tai saada hyvin hitaan oppimisprosessin. Syötevektorit menevät nimittäin tyypillisesti klustereihin yli hahmoavaruuden rajatun alueen vastaten toivottavasti luokkiaan (aina se ei onnistu). Jos solmuihin talletetut painovektorit ovat satunnaisesti jakautuneet, voi helposti esiintyä tilanne, jossa monet painovektoreista ovat kovin eri suunnissa kuin valtaosa opetussyötteistä. Nämä solmut eivät voita mitään parhaiten täsmäävien vertailuista ja jäävät käyttämättä topologisen verkon

84 85 muodostamisessa. Tämän seurauksena piirrekartan naapurustot sisältävät hyvin harvassa opetussolmuja, niin vähissä määrin, että ei ole ehkä riittävästi käytettävissä solmuja luokkien erottamista varten. Tämä johtaa hyvin heikkoon luokituskykyyn piirrekartan kyvyttömyyden takia erottaa syötteitä toisistaan. Painoarvojen alkuarvojen optimakauma on sellainen, joka antaisi verkolle aloitusvihjeitä, kuten opetusjoukon luokkien määrän ja todennäköiset suunnat. Toisaalta nämä ovat juuri tietoja, jotka verkon odotetaan selvittävän, joten ajatus on melko epäkäytännöllinen. Sellaista jakaumaa voidaan silti approksimoida. Eräs keino alustaa painoarvot on asettaa ne samoiksi arvoiksi. Opetusaineistoa muunnetaan niin, että opetuksen alkuvaiheissa vektorit on koottu yhteen, samankaltaisiksi suunnaltaan kuin solmujen aloitussuunnat. Tämä suo kaikille piirrekartan solmuille saman todennäköisyyden olla lähellä syötevektoreita ja näin ollen sisältyä kartan karkeaan esitysmuotoon. Opetuksen edistyessä syötteet palaavat hitaasti alkuperäissuuntiinsa, mutta koska karkea esitys on jo määritelty tässä vaiheessa, piirrekartan solmut seuraavat yksinkertaisesti syötearvoihin tehtyjä muutoksia. Toisessa, samantapaisessa menetelmässä satunnaiskohinaa lisätään opetuksen alkuvaiheessa syötteisiin yrityksenä hajauttaa vektorit aiempaa laajemmin hahmoavaruuteen käyttääkseen hyväkseen entistä useampia solmuja. On myös mahdollista liittää solmuihin kynnysarvo, joka valvoo solmun onnistumista tai epäonnistumista parhaiten täsmäävän valinnassa. Jos säännöllisesti valitaan jokin tietty solmu, tämän kynnysarvoa nostetaan tilapäisesti. Tällöin sen mahdollisuudet tulla uudelleenvalituksi pienenevät, mikä sallii muidenkin vaikuttaa piirrekartan muotoutumiseen. Eniten sovellettu tekniikka on solmujen lokaalien naapurustojen käyttö. Seuraavaksi kuvataan, miten tämä maksimoi kaikkien verkon solmujen käyttöä ja edistää solmujen topologista ryhmittymistä. 5.4. Naapurustot Mallintaakseen meksikolainen hattu funktiota Kohonen on esittänyt topologisten naapurustojen idean. Tämä on dynaamisesti muuttuva raja, joka määrää, montako voittajasolmua ympäröivää solmua sisällytetään opetusprosessissa painoarvoiltaan päivitettäviin. Jokaiselle solmulle määrätään aluksi laaja naapurusto, enimmillään koko verkon solmut. Valittaessa solmu syötteelle parhaiten täsmääväksi solmun painoarvot muokataan syötteen mukaisesti. Myös kaikki solmun naapuruston solmut muokataan samalla mitalla. Opetuksen edetessä naapuruston koko pienenee hitaasti ennaltamäärättyyn rajaan. Jotta ymmärrettäisiin, miten tämä aikaansaa topologisesti läheisten solmujen klustereita, tarkastellaan kuvaa 5.3., joka edustaa piirreklusterien topologista muotoutumista opetuksen aikana. Selvyyden vuoksi tarkastellaan ainoastaan yhden klusterin muotoutumista. Tämän keskipiste on harmaan neliökuvion keskisolmu. Kuvassa 5.3.A verkko on alkutilassaan, jossa painovektorit ovat satunnaisia ja jokaisella solmulla on laaja naapurusto. Solmujen sisään merkityt suunnat mielletään solmujen painovektorien suuntaesityksiksi. Edellä olevan mukaan opetus alkaa etsimällä jokaiselle opetussyötteelle parhaiten täsmäävä eli lähin solmu, painoarvomuutokset lasketaan ja myös naapuruston solmut säädetään. Kuvassa 5.3.B nähdään verkko opetusjoukon useiden ajojen jälkeen. Harmaalla sävytetty alue alkaa muodostaa luokan

86 87 suuntaa keskimmäisen solmun nojalla. Naapuruston koko on kutistunut, joten painoarvomuutoksilla on nyt aiempaa pienempi vaikutusala. Täysin opetettu verkko on kuvassa 5.3.C. Naapurustot ovat kutistuneet ennaltamäärättyyn neljän solmun rajaan, ja alueen kaikki solmut on säädetty edustamaan kyseisen luokan opetusjoukon arvojen keskimääräistä ulottuvuutta. Opetusalgoritmi tuottaa klusterit kaikille opetusjoukosta löydetyille luokkatyypeille. Klusterien järjestyminen kartalla ja opetuksen suppenemisajat riippuvat tavasta, jolla opetusaineisto esitetään verkolle. Kunhan verkko on järjestänyt sisäisen esityksensä, piirrekartan klusterit voidaan nimetä osoittamaan luokkiaan, jolloin verkkoa voidaan käyttää luokittelemaan aiemmin tuntemattomia syötteitä. Neuroverkko itseorganisoituu eli muodostaa sisäiset piirteet ohjauksetta, mutta luokkien nimeäminen on tehtävä käsin sen jälkeen, kun verkko on täysin opetettu. 5.5. Naapurustojen pienentäminen Edellä todettiin naapuruston pienentäminen tarpeelliseksi. Miten nopeasti naapuruston kokoa tulisi pienentää? Tähän ei ole olemassa selkeitä ja kattavia sääntöjä ja kokeita tarvitaan yksittäisissä sovelluksissa. Kohosen menetelmä ei herkästi aiheuta opetustulosten hajaantumista systeemiparametrejä muutettaessa. Oppimisnopeutta on vähennettävä opetuksen aikana, jotta muutokset tulevat yhä vähittäisemmiksi kartan kehittyessä. Tämä takaa klusterien muodostavan opetusjoukon tarkkoja sisäisiä esitysmuotoja sekä saa verkon suppenemaan ratkaisuun ennaltamäärätyssä ajassa. Lineaarisesti vähenevä oppimisnopeus opetusjoukon läpikäyntien funktiona on sovelias. Naapuruston kutistaminen vaikuttaa paikallistamalla samanlaisen aktivaation alueet. Aluksi, kuvassa A, vaikutetaan varjostetun alueen solmuihin. Näiden suunnat muuttuvat hitaasti kohti voittajasolmun suuntaa. Opetuksen edetessä naapurusto pienenee ja vain voittajan naapuruston solmuja muutetaan. Nämä muuntuvat yhä enemmän, kunnes voittajan naapuruston solmut ovat samankaltaisia paino vektoreita. Lopullisessa verkossa syöte, joka on lähellä lähtösolmun laukaissutta syötettä, saa vasteen topologisesti lähellä olevalta solmulta. Kuva 5.3. Paikallistetun naapuruston opettaminen. Opetukseen vaikuttavat oppimisnopeus, naapuruston pienentämisen nopeus ja myös naapuruston alueen muoto. Kuvassa 5.3. käytettiin ainoastaan neliönmuotoista naapurustoa. Ympyrää ja kuusikulmiotakin käytetään, ja nämä voivat olla joissakin tapauksissa parhaita. Aivan kuin oppimisnopeuden suhteen, kannattaa naapurustoillekin aloittaa melko laajoista alkuarvoista ja sallia näiden vähetä hitaasti opetuksen edetessä.

88 89 Tiheysfunktiot Klusterointi ilmiötä opetuksen aikana voidaan selittää todennäköisyystiheysfunktioilla. Tiheysfunktio on tilastollinen mitta, joka kuvaa datan jakaumaa hahmoavaruudessa. Tiheysfunktio määrittelee mille tahansa hahmoavaruuden pisteelle todennäköisyysarvon, jonka mukaan vektori on tuossa pisteessä. Tunnettaessa hahmoavaruuden todennäköisyystiheysfunktio eli tunnettaessa hahmojen jakauma avaruudessa on osoitettavissa kartan itseorganisoituvan niin, että piirrekartan solmujen tiheydellä on taipumus approksimoida hahmoavaruuden tiheysfunktiota edellyttäen, että edustava datan osajoukko on valittu neuroverkon opetusta varten. Tämän visualisoimiseksi viitataan kuvaan 5.4. Olkoon neuroverkko opetettu kaksidimensioisen hahmoavaruuden tasaisesti jakautuneella datalla yli suorakulmion alan. Opetusjoukkoon valitaan satunnaisia, riippumattomia pisteitä avaruudesta. Satunnaisuus takaa hyvän edustuvuuden koko hahmoavaruudelle. Diagrammien jono esittää painovektorien tilaa opetuksen eri vaiheissa. Painovektorit ovat kaksidimensioisia, ja ne määrittelevät pisteen painoarvo avaruudessa. Diagrammit on piirretty vetämällä viivat naapurisolmujen painojen määrittelemien pisteiden välillä. Piirrokset kuvaavat solmujen tilasuhdetta kaksiulotteisessa painoarvoavaruudessa. Neuroverkon lopputilasta (kuva 5.4d) nähdään, miten painoarvovektorit ovat itseorganisoituneita edustamaan hahmoavaruuden jakaumaa. Solmut on optimaalisesti järjestetty kattamaan mahdollisimman tarkasti hahmoavaruutta. Edellytyksenä on, että solmuja on rajoitetusti, mutta riittävästi. 5.6. Oppiva vektorikvantisointi Huolimatta siitä, että Kohosen verkko on ohjaamattoman itseorganisoinnin paradigman mukainen, se käyttää itse asiassa hyväkseen ohjattua oppimistekniikkaa. Tämän Kohonen on nimennyt oppivaksi vektorikvantisoinniksi (learning vector quantisation, LVQ). Se merkitsee menetelmää, joka hienosäätää opetetun piirrekartan optimoidakseen tämän suorituskyvyn muuttuvissa olosuhteissa. Tavanomainen tilanne on uusien opetusvektorien lisääminen verkon yksittäisten naapurustojen suorituskyvyn parantamiseksi. Kuva 5.4. Muuan esitys painovektorien tilassa järjestymisen kehitykselle. Haluttu tavoite saadaan valitsemalla opetusvektoreita x, joiden luokitus tunnetaan, ja antamalla ne neuroverkolle epäonnistuneen luokituksen selvittämiseksi. Parhaiten täsmäävän vertailu suoritetaan jälleen jokaiselle solmulle, ja voittaja n merkitään.

90 91 Voittajasolmun vektori muunnetaan seuraavien mukaan. Oikein luokitellulle syötteelle muunnetaan: n ( t + 1) = n ( t) + ( t)( x( t) n ( t)) Virheellisesti luokitellulle syötteelle muunnetaan: n sääntöjen Termi η(t) kontrolloi muuntamisnopeutta ja toimii samoin kuin oppimisessa. 5.7. Foneettinen kirjoituskone ( t + 1) = n ( t) ( t)( x( t) n ( t)) Kohonen on soveltanut piirrekarttaansa menestyksellisesti mm. puheentunnistuksen vaikealla saralla jo 1980 luvulla. Tutkimusongelma koski foneemien eli äänteiden tunnistamista, johon tehtävään Kohosen kartat soveltuvat mitä parhaiten. Foneemit muodostavat näet pienen luokittelujoukon, jossa luokan näytteillä on vähäistä vaihtelevuutta. Tällöin tarvitaan vain vähän piirteidentunnistajia topologista karttaa muodostamaan. Kullakin näistä on useita solmuja naapurustossaan, ja solmut ovat hienosäädettyjä rajoitetussa piirissä. Foneemienluokittelu ei toki ole helppo tehtävä, päinvastoin. Puheentunnistus on vaikea hahmontunnistustehtävä. Ihmisen puheentunnistus toimii monilla havaintotasoilla. Puheen signaalinanalyysin perusteista lähtien tehdään paljon tunnistustyötä myös kontekstin, päättelyn, ekstrapoloinnin, jäsentämisen ja syntaktisten sääntöjen tasoilla. Ihminen kykenee näihin toimintoihin jopa varsin kohinaisissa ympäristöissä. Hän pystyy ymmärtämään ja ylläpitämään keskustelua samaan aikaan ympäröivän suuren ihmisjoukon jopa kovasta puheensorinasta huolimatta. Jos joku sivullinen satunnaisesti puheensorinan keskellä mainitsee henkilön nimen, tämä kykenee melko todennäköisesti tunnistamaan lausutun nimensä. Puhe signaalinkäsittelyn näkökulmasta on usein varsin huonosti määriteltyä ja vaikeasti käsiteltävää. Puheen foneemit vaihtelevat paljon signaalin voimakkuuden ja muodon mukaan puhujasta puhujaan. Jopa yksittäisen puhujan tapauksessa foneemit vaihtelevat riippuen sanojen kontekstista, jossa ne muodostetaan, ja eri foneemien signaalispektrit (taajuudet) menevät säännöllisesti osin päällekkäin. Näitä asioita on tutkittu paljon monia menetelmiä soveltaen. Kohosen tekniikka on tässä menestynyt hyvin. Kohosen foneettinen kirjoituskone on ollut laite, joka kirjoitti suoraan sanelusta. Vaikka tämä lienee helpompaa suomenkielen koska se on foneettinen kieli tapauksessa kuin monille muille kielille, tehtävä on silti sangen vaikea. Kohonen laati järjestelmänsä tavallaan usean menetelmän yhdistelmänä. Neuroverkot eivät toki ole mikään yleislääke ongelmaan kuin ongelmaan. Systeemi on esitetty kaaviona kuvassa 5.5. Kuva 5.5. Kohosen neuroverkkopohjaisen foneettisen kirjoituskoneen kaavio.

92 93 Neuroverkko koskee ainoastaan osaa kokonaisuudesta. Sitä käytetään foneemien luokituksen kriittisessä kohdassa. Tämä perustuu puhesignaalin spektrin vektorikvantisointiin. 5.7.1. Esiprosessointi Melkein minkä tahansa neuroverkkosovelluksen tapauksessa esiprosessoinnilla on merkittävä osuus, mitä ei voi liikaa painottaa. Neuroverkko saattaa toimia surkeasti, jos käytetään riittämätöntä tai epäedustavaa opetusdataa. Neuroverkot muodostavat piirreinformaatiota hajautettua koodausta soveltaen. Jokaisen hahmontunnistusmenetelmän kriittistä vaihetta ei kuitenkaan saa tässäkään ohittaa, ts. on oltava datan riittävän hyvin määritellyt piirteet käytössä. Kohosen systeemi käytti esiprosessoinnissa normaaleja signaalinkäsittelymenetelmiä foneemien spektridatan saamiseksi äänisyötteestä. Mikrofonisyötteestä puhe syötettiin alipäästösuodattimeen (katkaisutaajuus 5.3 khz) ja näytteistettiin 12 bitin analogia digitaali muuntimella näytteenottotaajuuden ollessa 13.03 khz. Nopeaa Fourierin muunnos algoritmia (Fast Fourier Transform, FFT; 256 datapistettä) käytettiin spektrin laskentaan (9.83 ms intervalli). FFT tekniikka soveltui hyvin spektri komponenttien klusteriominaisuuksien saamiseen, mikä antaa hyvän lähtökohdan luokittelan opettamista varten. Se on myös nopea (O(n log n)) ja luotettava menetelmä. FFT algoritmin tulos suodatettiin ja muutettiin logaritmiseksi ennen ryhmittämistä 15 komponentin jatkuvaan hahmovektoriin. Vektorissa esitetty informaatio on 15 taajuuskaistan muunnettu spektriarvo. Kaistat rajoittuvat taajuuksiin 200 Hz 5 khz. Ennen neuroverkkoon syöttämistä spektridatasta poistettiin vielä keskiarvo (vähentämällä keskiarvo) eli tämä muutettiin arvoksi 0 sekä normalisoitiin vakiopituiseksi. Lisäinformaationa signaalista Kohonen käytti vielä puhesignaalin keskineliöarvoa (root mean square, RMS) 16. vektorikomponenttina. Esiprosessointivaiheessa äänisignaali kvantisoitiin 16 bittisten lukujen piirrevektoriin. Piirrevektori vastaa puheen pientä aikaviipaletta. Näillä piirrevektoreilla opetettiin neuroverkkoa eikä siis foneemidatalla. Verkon solmut herkistyivät silti foneemidatalle, sillä verkon syöte oli keskitetty foneemien ympäri. Verkko osasi löytää foneemit opetusjoukosta ilman näiden eksplisiittistä määrittelyä. Opetuksen aikana muodostuneet klusterit oli näin ollen nimettävä käsin jälkeenpäin. Eristetyt foneeminäytteet piti esittää neuroverkolle ja löytää maksimivasteen alueet topologisesta kartasta. Testeissä Kohonen käytti 50 näytettä kullekin foneemille nimettäessä verkkoa äänidatan opetuksen jälkeen. Topologinen piirrekartta on kuvassa 5.6. Siinä opetettu verkko on nimetty. Kuva 5.6. Foneemien piirrekartta. Piirrekartta käsitti helpoimmin määritellyt foneemit, so. ne, jotka esiintyivät suhteellisen stabiilin ja ennustettavan puhesignaalin yhteydessä. Tilanne on tässä kuvattu silti yksinkertaistettuna.

94 95 Foneemien luokittelussa käytettiin yksinkertaisia heuristisia sääntöjä. Esimerkiksi useilla foneemeilla on stationaaristyyppinen spektri, jonka mukaan ne ovat tunnistettavissa. Puhetta voidaan visualisoida dynaamisena reittinä pitkin karttaa (ks. kuva 5.7.). Reitti esittää lausuttujen foneemien stationaarisia tiloja, jotka ovat supenneet paikallistettuihin kohtiin kartalla. Luokittelu ei perustu näihin reitteihin, vaan tässä ideana oli visualisoida foneettisia jonoja ajatellen mm. kuulovammaisten oppimisvälineitä. 5.7.3. Jälkiprosessointi Foneettisen kirjoituskoneen viimeinen prosessointivaihe on käännös foneettisesta kirjoituksesta ortograafiseksi, oikeinkirjoitukseksi. Tällöin myös mahdolliset luokitusvirheet on korjattava. Valtaosa virheistä aiheutuu yhteisartikuloinneista, joissa foneemien ääntämys vaihtelee riippuen naapurifoneemien kontekstista. Tätä varten Kohonen käytti sääntöpohjaista järjestelmää, joka korjaa foneettisen käännöksen kieliopin mukaiseksi. Laaja sääntökanta (15000 20000 sääntöä) käsitteli pääosin foneemien kontekstista riippuvia kysymyksiä. Se oli toteutettu hajautusmenetelmällä. Järjestelmän tuloksena saatiin kontekstin kannalta korjattuja foneettisia merkkonoja, jotka voitiin muuntaa oikeinkirjoitetuksi tekstiksi. 5.7.4. Laitteisto ja suorituskyky Systeemi toteutettiin 1980 luvulla senaikaisella IBM PC/ATlaitteistolla, johon oli asennettu kaksi signaalinkäsittelykorttia, toinen puhesignaalin esiprosessointia ja toinen piirrekartan luokitusta varten. Noillakin, nykykoneisiin verrattuna perin hitailla laitteilla systeemi pystyi toimimaan lähes reaaliajassa; ainoastaan lyhyt väliaika vaadittiin sanojen väliin. Kuva 5.7. Kartan foneettinen reitti sanalle Humppila. 5.7.2. Lisäkartat Plosiivifoneemeilla (esim. b, t ja g) on hyvin transientit spektrit, joita luonnehtii energian alkuosan iso purske ja tätä seuraava verrattainen hiljaisuus. Näiden foneemien luokitukseen ei kartta perusmuodossaan soveltunut hyvin. Kohonen ratkaisi ongelman käyttäen lisäkarttoja (transienttikarttoja) plosiivien luokitusta varten. Lisäkartta opetettiin plosiivien spektreillä. Tällä kartan yksinkertaisella muunnoksella systeemin tunnistustarkkuus parani 6 7 %. Oikein luokiteltuja foneemeja saatiin 80 90 % puhujasta ja tekstistä riippuen. Sääntöpohjaista kieliopin korjausta käyttäen tulokseksi tuli 92 97 % oikeellisia. Oikeellisuus laskettiin ortograafisesta tulosteesta ja koski rajoittamatonta sanastoa. Systeemi oli joustava uusille puhujille, jotka lisättiin käyttäen ohjattua oppimistekniikkaa, oppivaa vektorikvantisointia (LVQ). Siinä käytettiin 100 sanaa uutta puhujaa kohti. Tämä sovellus toi hyvin esiin, miten neuroverkot ovat usein parhaimmillaan käytettäessä niitä laajan kokonaisuuden osana ratkaisemaan kriittisiä tunnistusongelmia.