tynkä Mitä on metaoppiminen? - Unite.AI
Liity verkostomme!

AI 101

Mitä on metaoppiminen?

mm
Päivitetty on

Mitä on metaoppiminen?

Yksi nopeimmin kasvavista koneoppimisen tutkimusalueista on meta-oppiminen. Meta-oppiminen on koneoppimiskontekstissa koneoppimisalgoritmien käyttöä auttamaan muiden koneoppimismallien koulutuksessa ja optimoinnissa. Kun meta-oppimisesta on tulossa yhä suositumpi ja uusia meta-oppimistekniikoita kehitetään, on hyödyllistä ymmärtää, mitä meta-oppiminen on, ja ymmärtää sen eri tavoista soveltaa sitä. Tarkastellaan meta-oppimisen taustalla olevia ideoita, meta-oppimisen tyyppejä, sekä joitakin tapoja, joilla meta-oppimista voidaan käyttää.

Donald Maudsley keksi termin meta-oppimisen kuvaamaan prosessia, jossa ihmiset alkavat muokata oppimaansa ja tulevat "enenevässä määrin sisäistettyjen havaintojen, tutkimuksen, oppimisen ja kasvun tapojen hallintaan". Myöhemmin kognitiiviset tutkijat ja psykologit kuvailivat meta-oppimista "oppimisen oppimiseksi".

Meta-oppimisen koneoppimisversiossa yleistä ajatusta "oppimaan oppimisesta" sovelletaan tekoälyjärjestelmiin. Tekoälyssä meta-oppiminen on keinotekoisesti älykkään koneen kykyä oppia suorittamaan erilaisia ​​monimutkaisia ​​tehtäviä ottamalla yhden tehtävän oppimiseen käytetyt periaatteet ja soveltaen niitä muihin tehtäviin. Tekoälyjärjestelmät on yleensä koulutettava suorittamaan tehtävä hallitsemalla monia pieniä alitehtäviä. Tämä koulutus voi kestää kauan, eivätkä tekoälyagentit siirrä helposti yhden tehtävän aikana opittua tietoa toiseen tehtävään. Metaoppimismallien ja -tekniikoiden luominen voi auttaa tekoälyä oppimaan yleistämään oppimismenetelmiä ja hankkimaan uusia taitoja nopeammin.

Metaoppimisen tyypit

Optimoijan meta-oppiminen

Meta-oppimista käytetään usein optimoimaan jo olemassa olevan hermoverkon suorituskykyä. Optimoijan meta-oppimismenetelmät toimivat tyypillisesti säätämällä eri hermoverkon hyperparametreja perushermoverkon suorituskyvyn parantamiseksi. Tuloksena on, että kohdeverkoston pitäisi tulla paremmin suoriutumaan tehtävästä, johon sitä koulutetaan. Yksi esimerkki meta-oppimisen optimoijasta on verkon käyttö parantamiseen kaltevuus laskeutuminen Tulokset.

Muutaman kuvan metaoppiminen

Muutaman otoksen meta-oppimisen lähestymistapa on sellainen, jossa suunnitellaan syvä neuroverkko, joka pystyy yleistämään harjoitustietojoukoista näkymättömiin tietokokonaisuuksiin. Muutaman otoksen luokittelun esiintymä on samanlainen kuin normaali luokitustehtävä, mutta sen sijaan datanäytteet ovat kokonaisia ​​tietojoukkoja. Malli on koulutettu moniin erilaisiin oppimistehtäviin/tietosarjoihin, ja sitten se on optimoitu huippusuorituskykyä varten lukuisissa harjoitustehtävissä ja näkymättömässä datassa. Tässä lähestymistavassa yksi koulutusnäyte jaetaan useisiin luokkiin. Tämä tarkoittaa, että jokainen harjoitusnäyte/tietojoukko voisi mahdollisesti koostua kahdesta luokasta, yhteensä 4 laukausta. Tässä tapauksessa kokonaisharjoitustehtävä voitaisiin kuvata 4 laukauksen 2-luokan luokitustehtävänä.

Muutaman otoksen oppimisessa ajatuksena on, että yksittäiset harjoitusnäytteet ovat minimalistisia ja verkosto voi oppia tunnistamaan esineitä muutaman kuvan nähtyään. Tämä on samantapaista kuin lapsi oppii erottamaan esineet nähtyään vain muutaman kuvan. Tätä lähestymistapaa on käytetty luomaan tekniikoita, kuten kertaluonteisia generatiivisia malleja ja muistilisättyjä hermoverkkoja.

Metric meta-oppiminen

Metriikkaan perustuva meta-oppiminen on hermoverkkojen käyttöä sen määrittämiseksi, käytetäänkö metriikkaa tehokkaasti ja osuuko verkko tai verkot kohdemetriikkaa. Metrinen meta-oppiminen on samanlaista kuin harvoin tapahtuva oppiminen siinä mielessä, että vain muutamia esimerkkejä käytetään verkoston kouluttamiseen ja sen oppimiseen metristä tilaa. Samaa mittaria käytetään eri toimialueissa, ja jos verkot poikkeavat mittarista, niiden katsotaan epäonnistuvan.

Toistuva mallin meta-oppiminen

Toistuvan mallin meta-oppiminen on meta-oppimistekniikoiden soveltamista toistuviin hermoverkkoihin ja vastaaviin pitkän lyhytaikaisen muistin verkkoihin. Tämä tekniikka toimii opettamalla RNN/LSTM-mallia oppimaan peräkkäin tietojoukko ja käyttämällä sitten tätä koulutettua mallia toisen oppijan perustana. Meta-oppija ottaa käyttöön erityisen optimointialgoritmin, jota käytettiin alkuperäisen mallin kouluttamiseen. Meta-learnerin peritty parametrointi mahdollistaa sen nopean alustamisen ja lähentymisen, mutta pystyy silti päivittämään uusia skenaarioita.

Miten metaoppiminen toimii?

Metaoppimisen tarkka toteutustapa vaihtelee mallin ja käsillä olevan tehtävän luonteen mukaan. Yleensä kuitenkin meta-oppimisen tehtävä sisältää parametrien kopioimisen ensimmäisen verkon parametreihin toisen verkon/optimoijan parametreihin.

Metaoppimisessa on kaksi koulutusprosessia. Meta-oppimismallia opetetaan tyypillisesti sen jälkeen, kun perusmalliin on suoritettu useita koulutusvaiheita. Perusmallia harjoittavien eteenpäin-, taaksepäin- ja optimointivaiheiden jälkeen optimointimallille suoritetaan eteenpäinharjoittelupassi. Esimerkiksi kolmen tai neljän perusmallin harjoittelun jälkeen metahäviö lasketaan. Kun metahäviö on laskettu, gradientit lasketaan kullekin metaparametrille. Tämän jälkeen optimoijan metaparametrit päivitetään.

Yksi mahdollisuus laskea meta-häviö on lopettaa alkuperäisen mallin eteenpäinharjoittelupassi ja sitten yhdistää jo lasketut häviöt. Meta-optimoija voi olla jopa toinen meta-oppija, vaikka jossain vaiheessa on käytettävä erillistä optimoijaa, kuten ADAM tai SGD.

Monilla syväoppimismalleilla voi olla satoja tuhansia tai jopa miljoonia parametreja. Täysin uudet parametrit sisältävän meta-oppijan luominen olisi laskennallisesti kallista, ja tästä syystä käytetään tyypillisesti koordinaattien jakamiseksi kutsuttua taktiikkaa. Koordinaattien jakamiseen kuuluu meta-oppijan/optimoijan suunnittelu niin, että se oppii yhden parametrin perusmallista ja sitten vain kloonaa tämän parametrin kaikkien muiden parametrien tilalle. Tuloksena on, että optimoijan hallussa olevat parametrit eivät riipu mallin parametreista.

Bloggaaja ja ohjelmoija erikoisaloilla Koneen oppiminen ja Deep Learning aiheita. Daniel toivoo voivansa auttaa muita käyttämään tekoälyn voimaa yhteiskunnalliseen hyvään.