AI 101
Mitkä ovat neuroverkkot?

Mitä ovat tekoälyverkkot (ANN)?
Monet suurimmat edistysaskeleet tekoälyssä ovat ohjattu tekoälyverkoilla. Tekoälyverkkot (ANN) ovat matemaattisten funktioiden yhdistelmä, jotka on liitetty yhteen ihmisaivojen hermoverkkojen innoittamassa muodossa. Nämä ANN:t pystyvät poistamaan monimutkaisia malleja tiedoista, soveltamaan näitä malleja näkemättömiin tietoihin, jotta ne voivat luokitella/tunnistaa tiedot. Tällä tavoin kone “oppii”. Tämä on nopea katsaus neuroverkkoihin, mutta tarkastellaan neuroverkkoihin tarkemmin, jotta ymmärretään, mitä ne ovat ja miten ne toimivat.
Monikerrosmallin selitys
Ennen kuin tarkastelemme monimutkaisempia neuroverkkoja, otamme hetken aikaa tarkastellaan yksinkertaista tekoälyverkon versiota, monikerrosmallia (MLP).

Kuvitellaan tehdas, jossa on kokoonpanolinja. Tällä kokoonpanolinjalla työntekijä vastaanottaa kohteen, tekee siihen joitain muutoksia ja antaa sen seuraavalle työntekijälle, joka tekee samoin. Tämä prosessi jatkuu, kunnes viimeinen työntekijä antaa lopulliset kosketukset kohteeseen ja asettaa sen vyölle, joka vie sen tehtaan ulkopuolelle. Tässä vertauskuvassa on useita “kerroksia” kokoonpanolinjassa, ja tuotteet siirtyvät kerrokselta toiselle työntekijältä toiselle. Kokoonpanolinjalla on myös sisään- ja ulostulo.
Monikerrosmalli voidaan ajatella hyvin yksinkertaisena tuotantolinjana, joka koostuu kolmesta kerroksesta: sisääntulokerros, piilokerros ja ulostulokerros. Sisääntulokerros on se, mihin data syötetään MLP:hen, ja piilokerroksessa on jonkin verran “työntekijöitä”, jotka käsittelevät dataa, ennen kuin se siirretään ulostulokerrokseen, joka antaa tuotteen ulkomaailmalle. 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 solmuun, jotka kutsutaan “painoiksi”. Painot ovat oletuksia siitä, miten tietopisteet liittyvät toisiinsa, kun ne siirtyvät verkoston läpi. Toisin sanoen painot heijastavat sitä vaikutusta, jonka yksi hermosolu voi olla toisella hermosolulla. Painot menevät “käynnistysfunktion” 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.
Vertauskuva ihmisaivoihin, joka viitataan “tekoälyverkkoon”, tulee siitä, että ihmisaivojen hermosolut ovat yhdistettyjä samalla tavalla kuin solmut tekoälyverkossa.
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 menetelmä, jota kutsutaan “taustajakautumiseksi”, joka mahdollistaa verkkojen sovittaa hermosolujen painoja ja siten oppia paljon tehokkaammin. Taustajakautuminen muuttaa neuroverkon painoja, jotta verkko pystyy paremmin havainnoimaan todelliset mallit tiedoissa.
Syvät neuroverkkot
Syvät neuroverkkot ottavat monikerrosmallin perusrakenteen ja tekevät siitä suuremman lisäämällä enemmän piilokerroksia mallin keskivaiheille. Sen sijaan, että olisi vain sisääntulo-, piilo- ja ulostulokerros, on useita piilokerroksia keskellä ja edellisen piilokerroksen tulokset muodostavat seuraavan piilokerroksen syötteen, kunnes data on kulkenut koko verkoston läpi ja palautettu.
Syvän neuroverkon useat piilokerrokset pystyvät tulkimaan monimutkaisempia malleja kuin perinteinen monikerrosmalli. Syvän neuroverkon eri kerrokset oppivat eri osien tietojen malleja. Esimerkiksi, jos syötetiedot koostuvat kuvista, verkon ensimmäinen osa saattaa tulkita kuvien valoisuutta tai tummuutta, kun taas myöhemmät kerrokset poimivat esiin muotoja ja reunoja, joita voidaan käyttää tunnistamaan kuvissa olevia objekteja.
Erilaiset neuroverkkotyypit

On olemassa erilaisia neuroverkkotyyppejä, ja kunkin neuroverkkotyyppien on omat edut ja haittansa (ja siten omat käyttötapauksensa). Yllä kuvattu syvän neuroverkon tyyppi on yleisin neuroverkkotyyppi, ja se tunnetaan usein eteenpäin syötettävänä neuroverkkona.
Yksi neuroverkkojen muunnelma on rekurrenttinen neuroverkko (RNN). Rekurrenttisissa neuroverkoissa käytetään silmukkamekanismeja säilyttämään tietoa aiemmista tiloista, mikä tarkoittaa, että ne voivat tulkita tietoja, joissa järjestys on merkityksellinen. RNN:t ovat hyödyllisiä johdonmukaisista/aikajärjestyksistä tiedoista johtuvien mallien johtamisessa. Rekurrenttiset neuroverkkot voivat olla joko yksisuuntaisia tai kaksisuuntaisia. Kaksisuuntaisessa neuroverkossa verkko voi ottaa huomioon tietoa myös myöhemmästä osasta järjestystä. Koska kaksisuuntainen RNN ottaa enemmän tietoa huomioon, se pystyy paremmin johtamaan oikeat mallit tiedoista.
Convolutional neuroverkko on erityinen neuroverkkotyyppi, joka on taitava tulkimaan kuvissa olevia malleja. CNN toimii siirtämällä suodatinta kuvan pikseleihin ja saamalla numeerisen edustuksen kuvan pikseleistä, jonka se voi sitten analyysin kohteeksi ottaa. CNN on rakennettu siten, että konvoluutio kerrokset, jotka poimivat pikselit kuvasta, tulevat ensin, ja sitten tiiviisti yhdistetyt eteenpäin syötettävät kerrokset, jotka todella oppivat tunnistamaan objekteja, tulevat sen jälkeen.












