stub Hva er metalæring? - Unite.AI
Kontakt med oss

AI 101

Hva er metalæring?

mm
oppdatert on

Hva er metalæring?

Et av de raskest voksende forskningsområdene innen maskinlæring er området metalæring. Metalæring, i maskinlæringssammenheng, er bruken av maskinlæringsalgoritmer for å hjelpe til med opplæring og optimalisering av andre maskinlæringsmodeller. Ettersom meta-læring blir mer og mer populært og flere meta-læringsteknikker utvikles, er det en fordel å ha en forståelse av hva meta-læring er og å ha en følelse av de ulike måtene den kan brukes på. La oss undersøke ideene bak meta-læring, typer metalæring, samt noen av måtene metalæring kan brukes på.

Begrepet meta-læring ble laget av Donald Maudsley for å beskrive en prosess der folk begynner å forme det de lærer, og blir "i økende grad i kontroll over vaner med persepsjon, undersøkelser, læring og vekst som de har internalisert". Senere vil kognitive forskere og psykologer beskrive meta-læring som "å lære å lære".

For maskinlæringsversjonen av meta-læring brukes den generelle ideen om å "lære hvordan man lærer" på AI-systemer. I AI-forstand er meta-læring evnen til en kunstig intelligent maskin til å lære å utføre ulike komplekse oppgaver, ta prinsippene den brukte for å lære en oppgave og bruke den på andre oppgaver. AI-systemer må vanligvis trenes for å utføre en oppgave gjennom mestring av mange små underoppgaver. Denne opplæringen kan ta lang tid og AI-agenter overfører ikke lett kunnskapen som er lært under en oppgave til en annen oppgave. Å lage metalæringsmodeller og -teknikker kan hjelpe AI med å lære å generalisere læringsmetoder og tilegne seg nye ferdigheter raskere.

Typer metalæring

Optimizer Meta-læring

Meta-læring brukes ofte for å optimalisere ytelsen til et allerede eksisterende nevralt nettverk. Optimizer-metalæringsmetoder fungerer vanligvis ved å justere hyperparametrene til et annet nevralt nettverk for å forbedre ytelsen til det nevrale basisnettverket. Resultatet er at målnettverket skal bli flinkere til å utføre oppgaven det trenes på. Et eksempel på en meta-læringsoptimalisering er bruken av et nettverk for å forbedre gradient nedstigning resultater.

Få-Shots Meta-læring

En metalæringstilnærming med få skudd er en der et dypt nevralt nettverk er konstruert som er i stand til å generalisere fra treningsdatasettene til usynlige datasett. En forekomst av få-skuddsklassifisering ligner på en vanlig klassifiseringsoppgave, men i stedet er dataprøvene hele datasett. Modellen er trent på mange forskjellige læringsoppgaver/datasett, og deretter er den optimalisert for topp ytelse på mangfoldet av treningsoppgaver og usynlige data. I denne tilnærmingen er en enkelt treningsprøve delt opp i flere klasser. Dette betyr at hver treningsprøve/datasett potensielt kan bestå av to klasser, for totalt 4 skudd. I dette tilfellet kan den totale treningsoppgaven beskrives som en 4-skudds 2-klasses klassifiseringsoppgave.

I få-skuddslæring er tanken at de individuelle treningsprøvene er minimalistiske og at nettverket kan lære å identifisere objekter etter å ha sett bare noen få bilder. Dette er omtrent som hvordan et barn lærer å skille gjenstander etter å ha sett bare et par bilder. Denne tilnærmingen har blitt brukt til å lage teknikker som generative modeller og minneforsterkede nevrale nettverk.

Metrisk metalæring

Metrisk basert meta-læring er bruken av nevrale nettverk for å avgjøre om en beregning brukes effektivt og om nettverket eller nettverkene treffer målberegningen. Metrisk meta-læring ligner få-skudd-læring ved at bare noen få eksempler brukes for å trene nettverket og få det til å lære det metriske rommet. Den samme metrikken brukes på tvers av det mangfoldige domenet, og hvis nettverkene avviker fra metrikken, anses de å mislykkes.

Tilbakevendende Model Meta-læring

Tilbakevendende modell meta-læring er bruken av meta-læringsteknikker til tilbakevendende nevrale nettverk og lignende langtidsminne-nettverk. Denne teknikken fungerer ved å trene RNN/LSTM-modellen til å lære et datasett sekvensielt og deretter bruke denne trente modellen som grunnlag for en annen elev. Meta-læreren tar med seg den spesifikke optimaliseringsalgoritmen som ble brukt til å trene den første modellen. Den nedarvede parameteriseringen til meta-læreren gjør at den raskt kan initialiseres og konvergere, men fortsatt være i stand til å oppdatere for nye scenarier.

Hvordan fungerer metalæring?

Den nøyaktige måten meta-læring utføres på varierer avhengig av modellen og oppgavens art. Men generelt sett en meta-læringsoppgave innebærer å kopiere over parameterne av det første nettverket inn i parameterne til det andre nettverket/optimalisatoren.

Det er to opplæringsprosesser i meta-læring. Metalæringsmodellen trenes vanligvis etter at flere trinn med trening på basismodellen er gjennomført. Etter frem-, bakover- og optimaliseringstrinnene som trener basismodellen, gjennomføres forovertreningspasset for optimaliseringsmodellen. For eksempel, etter tre eller fire trinn med trening på basismodellen, beregnes et meta-tap. Etter at meta-tapet er beregnet, beregnes gradientene for hver meta-parameter. Etter at dette skjer, oppdateres metaparameterne i optimizeren.

En mulighet for å beregne meta-tapet er å fullføre forovertreningspasset til den innledende modellen og deretter kombinere tapene som allerede er beregnet. Meta-optimalisatoren kan til og med være en annen meta-lærer, men på et visst tidspunkt må en diskret optimizer som ADAM eller SGD brukes.

Mange dyplæringsmodeller kan ha hundretusener eller til og med millioner av parametere. Å lage en meta-lærer som har et helt nytt sett med parametere vil være beregningsmessig dyrt, og av denne grunn brukes vanligvis en taktikk som kalles koordinatdeling. Koordinatdeling innebærer å konstruere meta-læreren/optimalisatoren slik at den lærer en enkelt parameter fra basismodellen og deretter bare kloner den parameteren i stedet for alle de andre parameterne. Resultatet er at parameterne optimizeren har ikke avhenger av parameterne til modellen.

Blogger og programmerer med spesialiteter innen Maskinlæring og Dyp læring emner. Daniel håper å hjelpe andre å bruke kraften til AI til sosialt gode.