AI 101
Mitkä ovat neuroverkkot?

Mitä ovat tekoiset neuroverkkot (ANNs)?
Monet suurimmista edistysaskelista tekoälyssä ovat ohjattu tekoisilla neuroverkoilla. Tekoiset neuroverkkot (ANNs) ovat matemaattisten funktioiden yhdistelmä, joka on liitetty yhteen ihmisen aivojen neuroverkkoja mukailevassa muodossa. Nämä ANNs pystyvät erottamaan monimutkaisia malleja datasta ja soveltamaan näitä malleja näkemättömiin tietoihin, jotta ne voivat luokitella/tunnistaa tiedon. Tällä tavoin kone “oppii”. Tämä on nopea katsaus neuroverkoista, mutta tarkastellaan neuroverkkoja tarkemmin, jotta ymmärretään paremmin, mitä ne ovat ja miten ne toimivat.
Monikerrosmallin selitys
Ennen kuin tarkastelemme monimutkaisempia neuroverkkoja, otamme hetken aikaa tarkastellaan yksinkertaista versiota ANNs:ta, monikerrosmallia (MLP).

Kuvitellaan tehtaan tuotantoketju. Tällä tuotantoketjulla työntekijä vastaanottaa tuotteen, tekee siihen joitain muutoksia ja sitten välittää sen seuraavalle työntekijälle, joka tekee samoin. Tämä prosessi jatkuu, kunnes viimeinen työntekijä antaa tuotteelle viimeistelyn ja asettaa sen vyölle, joka vie sen tehtaan ulkopuolelle. Tässä analogiassa on useita “kerroksia” tuotantoketjussa, ja tuotteet siirtyvät kerroksesta toiseen työntekijältä toiselle. Tuotantoketjussa on myös sisääntulopiste ja ulostulopiste.
Monikerrosmalli voidaan ajatella yksinkertaisena tuotantoketjuna, joka koostuu kolmesta kerroksesta: sisääntulokerroksesta, piilokerroksesta ja ulostulokerroksesta. Sisääntulokerros on se, mihin data syötetään MLP:hen, ja piilokerroksessa on jokin määrä “työntekijöitä”, jotka käsittelevät dataa ennen kuin välittävät sen ulostulokerrokselle, joka antaa tuotteen ulkopuoliselle maailmalle. Monikerrosmallissa nämä työntekijät ovat “hermosoluja” (tai solmuja) ja kun he käsittelevät dataa, he muokkaavat sitä sarjan matemaattisten funktioiden kautta.
Verkoston sisällä on rakenteita, jotka yhdistävät solmun toiseen, jotka kutsutaan “painoiksi”. Painot ovat oletus siitä, miten datakohtia liittyvät toisiinsa, kun ne siirtyvät verkoston läpi. Toisin sanoen painot heijastavat sitä, kuinka suuri vaikutus yhdellä hermosolulla on toisella hermosolulla. Painot menevät “aktivaatiofunktion” läpi, kun ne poistuvat nykyisestä solmusta, mikä on tietty matemaattinen funktio, joka muuttaa dataa. Ne muuttavat lineaarisen datan epälineaarisiksi edustuksiksi, mikä mahdollistaa verkoston analyysin monimutkaisista malleista.
Analogia ihmisen aivoihin, joka viittaa “tekoiseen neuroverkkoon”, tulee siitä, että ihmisen aivossa olevat hermosolut ovat yhdistettyjä samalla tavalla kuin solmut ANNs: ssä.
Vaikka monikerrosmallit ovat olleet olemassa 1940-luvulta lähtien, niissä oli useita rajoituksia, jotka estivät niiden olemasta erityisen hyödyllisiä. Viimeisten muutaman vuosikymmenen aikana on kuitenkin kehitetty tekniikka, jota kutsutaan “taustajakautumiseksi”, joka mahdollisti verkkojen sovittaa hermosolujen painoja ja oppia siten paljon tehokkaammin. Taustajakautuminen muuttaa painoja neuroverkossa, jotta se voi paremmin havaita todelliset mallit datassa.
Syvät neuroverkkot
Syvät neuroverkkot ottavat monikerrosmallin perusmuodon ja tekevät siitä suuremman lisäämällä enemmän piilokerroksia mallin keskivaiheille. Sen sijaan, että olisi sisääntulokerros, piilokerros ja ulostulokerros, on useita piilokerroksia keskellä ja edellisen piilokerroksen tulostus muodostaa seuraavan piilokerroksen syötteen, kunnes data on kulkenut koko verkoston läpi ja palautunut.
Syvän neuroverkon useat piilikerrokset pystyvät tulkkaamaan monimutkaisempia malleja kuin perinteinen monikerrosmalli. Syvän neuroverkon eri kerrokset oppivat datan eri osien malleja. Esimerkiksi, jos syötteenä oleva data koostuu kuvista, verkon ensimmäinen osa tulkitsee kuvapikseleiden kirkkautta tai tummuutta, kun taas myöhemmät kerrokset poimivat muodot ja reunat, joita voidaan käyttää kuvissa olevien objektiiden tunnistamiseen.
Erilaiset tyypit neuroverkoista

On olemassa erilaisia tyyppejä neuroverkoista, ja kunkin eri neuroverkkotyyppien on omat edut ja haittansa (ja siten omat käyttötarkoituksensa). Yllä kuvattu syvän neuroverkon tyyppi on yleisin neuroverkkotyyppi, ja se tunnetaan usein eteenpäin syötettävänä neuroverkkona.
Toinen neuroverkkoihin perustuva variointi on rekurrenttinen neuroverkko (RNN). Rekurrenttisissa neuroverkoissa käytetään silmukkamekanismeja tallentamaan tietoa aiemmista analyysin tiloista, mikä tarkoittaa, että ne voivat tulkita dataa, jossa järjestys on merkityksellistä. RNN:t ovat hyödyllisiä johdonmukaisen/ajallisen datan mallien johdannassa. Rekurrenttiset neuroverkkot voivat olla joko yksisuuntaisia tai kaksisuuntaisia. Kaksisuuntaisessa neuroverkossa verkko voi ottaa huomioon myös myöhempiä tietoja sekä aikaisempia osia sekvenssistä. Koska kaksisuuntainen RNN ottaa enemmän tietoa huomioon, se pystyy paremmin piirtämään oikeat mallit datasta.
Konvoluutioverkko on erityinen tyyppi neuroverkkoa, joka on taitava tulkkaamaan kuvissa olevia malleja. CNN toimii siirtämällä suodatinta kuvan pikseleiden yli ja saamalla numeerisen edustuksen kuvan pikseleistä, jonka se voi sitten analysoida malleja varten. CNN on rakennettu siten, että konvoluutio kerrokset, jotka poistavat pikselit kuvasta, tulevat ensin, ja sitten tiiviisti yhdistetyt eteenpäin syötettävät kerrokset, jotka oppivat tunnistamaan objekteja, tulevat tämän jälkeen.












