Kognitiivinen mallintaminen Neuraalimallinnus, luento 1 Nelli Salminen nelli.salminen@helsinki.fi D433 Neuraalimallinnuksen osuus neljä luentokertaa, muutokset alla olevaan suunnitelmaan todennäköisiä kurssikirjasta käsitellään osa I kirja ei ole välttämätön kolmet laskarit, kahdet lasku- ja pohdintatehtäviä, kolmannet artikkelien pohjalta 1
Luentojen sisältö, 12.2. yleistä konnektionistisista malleista, peruskaavoja ja notaatiota (kirjan luku 1) (demo visuaalisesta reseptiivisestä kentästä) assosiatiivinen verkko, Hebbiläinen oppiminen (luku 3) demo assosiatiivisesta verkosta perseptroni ja sen oppimissääntö, monikerroksiset verkot ja backpropagation (luku 5) Luentojen sisältö, 19.2. lisää perseptronista ja backpropagationista (luku 5) demo: käsinkirjoitettujen lukujen tunnistus backpropagation opetetulla verkolla rinnakkaisen ja hajautetun tiedonkäsittelyn yleisiä ominaisuuksia (luku 2) demoja monikerroksisella verkolla 2
Luentojen sisältö, 26.2. kilpaileva oppiminen (luku 6) Kohosen verkko demo itseorganisoituvasta verkosta autoassosiatiivinen verkko (luku 4) demo autoassosiatiivisesta verkosta Luentojen sisältö, 4.3. ajan esittäminen neuroverkoissa, takaisinkytketyt verkot, dynaamiset systeemit (luku 7) esimerkkimalleja (toivomukset tervetulleita!) 3
Neuraalimallinnuksen motivaatio aivotoiminnan inspiroimaa tiedonkäsittelyä ihmisen käyttäytymisen kaltaisia tuloksia tiedonkäsittely on hajautettua ja rinnakkaista muistia ja tiedonkäsittelyä ei ole erotettu toisistaan saadaan kvantitatiivisia tuloksia jotka ovat verrattavissa behavioraalisen tutkimuksen tuloksiin, esim. reaktioaika, virheellisten suoritusten määrä yksinkertaisella matematiikalla saadaan aikaan todella monimutkaisia toimintoja Neuronin perusominaisuudet neuronilla on useita dendriittejä, joiden aktivaatio yhdistyy soomassa, aktivaatio kulkee edelleen aksonia pitkin eli neuroni integroi informaatiota useasta lähteestä yhdeksi tulosteeksi 4
Neuronin perusominaisuudet synapsit voivat olla eksitoivia tai inhiboivia ja niitä on eri vahvuisia neuronit voivat edistää tai ehkäistä toistensa aktivaatiota ja tämän vaikutuksen voimakkuus riippuu niiden välisen yhteyden voimakkuudesta Neuronin perusominaisuudet kaikki tai ei mitään aktiopotentiaalit aktiopotentiaalien esiintymistiheydellä on ala- ja yläraja neuronien aktiviteetilla on ala- ja yläraja 5
Neuronin perusominaisuudet kokemus muokkaa synaptisia yhteyksiä neuroverkkoja opetetaan muuttamalla neuronien välisiä yhteyksiä Matemaattinen malli neuronista syöte (dendriitit), x summaus (sooma) tuloste (aksoni), y x 1 + x 2 + x 3 = Σ i x i = y eli 0.5 + 0.1 + 0.7 = 1.3 6
Matemaattinen malli neuronista otetaan mukaan eri vahvuiset yhteydet eli painokertoimet w 1*0.5 + 5*0.1 + 3*0.7 = 3.1 eli w 1 *x 1 + w 2 *x 2 + w 3 *x 3 = Σ i w i * x i = y Matemaattinen malli neuronista negatiivinen painokerroin kuvaa inhibitorista yhteyttä 7
Matemaattinen malli neuronista esimerkiksi aktiviteetin alaraja voi olla 0 ja yläraja 1 eli s(y) = 0, jos y < 0 s(y) = 1, jos y > 1 s(y) = y, muutoin toistaiseksi käytetään äärimmäisen yksinkertaista funktiota, pelkkä kynnysarvo, esim. s(y) = 0, jos y<1, s(y) = 1, jos y>=1 Hebbiläinen oppiminen Hebbin sääntö: neurons that fire together wire together eli vahvistetaan yhteyksiä niiden neuronien välillä jotka ovat samanaikaisesti aktiivisia assosiatiivista oppimista 8
Hebbiläinen/assosiatiivinen oppiminen opetustilanteessa esitetään input-output pareja yhteyksiä vahvistetaan sellaisten solujen välillä jotka ovat aktiivisia samanaikaisesti Hebbiläinen/assosiatiivinen oppiminen otetaan yksi solu kerrallaan w on painokerroin Δw on muutos painokertoimessa a on neuronin aktivaatio ε on oppimisnopeus Δw jk = ε * a j * a k eli painokertoimien muutos on suhteessa neuronien aktiviteettiin jos neuroni ei ole aktiivinen painokertoimissa ei tapahdu muutoksia 9
Perseptroni perseptroniksi sanotaan yksikerroksista neuroverkkoa jossa on vain feedforward-yhteyksiä y = w 1 * x 1 + w 2 * x 2 + w 3 * x 3 = Σ i w i * x i Perseptroni painokertoimia säätämällä perseptroni voidaan opettaa luokittelemaan aineisto kahteen ryhmään toisen ryhmän syötteisiin perseptroni aktivoituu, toiseen ei 10
Perseptronin oppimissääntö perseptronille esitetään syöte ja painokertoimia muutetaan jos se antaa väärän tulosteen oppiminen perustuu perseptronin tekemiin virheisiin (ei solujen samanaikaiseen aktiviteettiin kuten hebbiläinen/assosiatiivinen oppiminen) kun perseptroni lakkaa tekemästä virheitä, se lakkaa myös oppimasta Perseptronin oppimissääntö 0. annetaan painokertoimille satunnaiset alkuarvot 1. esitetään syöte 2. katsotaan oliko tuloste oikea vai väärä 3. jos vastaus oli oikea siirrytään kohtaan 1., jos vastaus oli väärä muutetaan painokertoimia 4. painokertoimia muutetaan riippuen siitä oliko syöte kohde vai ei, jatketaan kohdasta 1. 11
Perseptronin oppimissääntö 0. w = satunnaislukuja 1. y = Σ i w i * x i 2. y == haluttu tuloste? 3. jos y == haluttu tuloste, siirrytään kohtaan 1. 4. dw = ε * x, jos x on kohde, dw = -1 * ε * x, jos x ei ole kohde, w(t+1) = w(t)+dw, jatketaan kohdasta 1. Perseptronin oppimissääntö dw = ε * x, jos x on kohde dw = -1 * ε * x, jos x ei ole kohde tehdään siis painokertoimista samankaltainen kuin kohteet ja päinvastainen kuin muut syötteet tämä toimii aina kun luokittelu on sellainen joka pystytään perseptronilla tekemään mutta miksi? 12
Mikä aktivoi neuronin? viimeksi nähtiin että hebbiläisellä oppimisella saatiin painokertoimia jotka kertoivat jotain syötteestä samoin käy perseptronin oppimissäännössä neuronin aktivoi parhaiten syöte joka on sama kuin neuronin painokertoimet Pistetulo input ja painokertoimet voidaan molemmat ajatella vektoreiksi tai pisteiksi avaruuteen neuronin aktiviteetti on itse asiassa näiden kahden vektorin pistetulo 13
Pistetulo samanmittaisille vektoreille voidaan laskea pistetulo w*x = w 1 *x 1 + w 2 *x 2 = Σ i w i * x i sama tulos saadaan myös näin: w*x = w x cos(θ) pistetulon suuruus riippuu siis vektorien välisestä kulmasta ja vektorien pituuksista Vektoreiden pistetulo w*x = w x cos(θ) pistetulo on suurimmillaan kun vektorit ovat samansuuntaiset, nolla kun vektorit ovat suorassa kulmassa, pienimmillään kun vektorit ovat vastakkaisen suuntaiset 14
Pistetulon tulkinta hermosolulle aktiviteetti on syötteen ja painokertoimien pistetulo suurimman aktiviteetin tuottaa syöte joka on saman suuntainen kuin painokertoimet Neuroni lineaarisena luokittelijana yksi neuroni voi jakaa mahdolliset syötteet kahteen luokkaan, toinen aktivoi neuronin ja toinen ei yksi vertori jakaa avaruuden kahteen osaan, pisteisiin joiden kanssa pistetulo on suurempi kuin nolla ja pisteisiin joiden kanssa pistetulo on pienempi tai yhtä suuri kuin nolla 15
Perseptronin rajoitteet perseptroni on siis lineaarinen luokittelija, se ei pysty luokitteluun joka on epälineaarinen esim. XOR-operaatio Ratkaisu perseptronin rajoitteisiin: monikerroksinen verkko monikerroksisella verkolla voi tehdä epälineaarisia luokitteluita mutta miten opettaa tällaista verkkoa? 16
Monikerroksinen verkko output-soluille voidaan määrittää haluttu aktivaatio ja virhe entä piilokerroksen solut? Backpropagation lasketaan virhe output-soluille kuljetetaan virhettä verkossa vastavirtaa kuten aktivaatiota kuljetetaan myötävirtaan 17
Gradient descent backpropagation on yksi gradient descent oppimisen muoto perustuu liikkumiseen virheavaruudessa suuntaan joka pienentää virhettä Gradient descent virhe voidaan esittää painokertoimien funktiona tälle funktiolle voidaan muodostaa derivaatta kullekin painokertoimelle erikseen (osittaisderivaatta) derivaatasta nähdään mihin suuntaan painokertoimia tulisi muuttaa jotta virhe pienenisi 18
Gradient descent paikallisten minimien ongelma, oppiminen voi jumiutua virheen paikalliseen minimiin vaikka parempikin ratkaisu voisi olla olemassa Gradient descent backpropagation ei ole biologisesti realistinen oikeista hermostoista ei ole löydetty mekanismeja virheetiedon kuljettamiseksi verkossa taaksepäin backpropagation on globaali oppimissääntö, se perustuu laajempiin tietoihin kuin vain kahden solun aktiviteettiin lokaalit säännöt, kuten hebbiläinen oppiminen, käyttävät tietoa ainoastaan kahden solun aktiviteetista ja ovat siten realistisempia 19