Oversikt over Hyperparameter Machine Learning

For alle modeller trenger vi noen parametere, som hjelper deg med å gi et grunnlag for løsning av problem / analyse og evaluering av modellen. Noen av disse parametrene skal læres av dataene, og noen må vi definere fra vår slutt eksplisitt. Parametrene som kan læres fra dataene uten å være definert eksplisitt, kalles modellparametere. Parameteren som er definert eksplisitt av brukeren kalles Hyperparametre. Hyperparametre er også bare parametere for modell, men begrepet hyperparametere brukes i maskinlæring, slik at de lett kan skilles fra hverandre og ikke forveksles med modellparametere som læres fra datasettet.

Hva er Hyperparameter Machine Learning?

For de fleste rammer innen maskinlæring har ikke hyperparametere en streng definisjon. Disse hyperparametrene styrer det underliggende systemet til en modell som guider de primære (modale) parametrene til modellen. La oss prøve å forstå hyperparametrene med følgende eksempel.

  • Det er veldig avgjørende å stille inn fiolinen din når man er på læringsstadiet fordi man på den tiden skaper forbindelser mellom forskjellige sanser. Ører, fingre og øyne lærer alt fiolin samtidig. Nå I begynnelsen Å bli vant til lyden av fiolin uten tone skaper en dårlig smak av lyd, noe som vil ødelegge hele opplevelsen av å bli forelsket i fiolinens læringsprosess.
  • Det er derfor tuning av fiolin virkelig kan hjelpe en i prosessen med å lære fiolin. På samme måte er hyperparameter en slags innstilling for Machine Learning-modellen for å gi riktig retning.
  • Hyperparametre er generelt definert før du bruker en maskinlæringsalgoritme på et datasett.
  • Nå er neste oppgave hva som skal være hyperparameteret og hva som skal være dens verdi. Fordi man må vite hvilke strenger som trengs for å bli innstilt og hvordan man kan stille inn fiolinen før man stiller den inn. Det samme gjelder hyperparametre, vi må definere hvilke hyperparametre og hva som skal være dens verdi, i utgangspunktet avhenger det av hver oppgave og hvert datasett.
  • For å forstå dette, la oss ta perspektivet med modelloptimalisering.
  • I implementeringen av maskinlæringsmodellen spiller modelloptimalisering en viktig rolle. Det er et stort antall grener av maskinlæring som utelukkende er dedikert til optimalisering av maskinlæringsmodellen. Det oppfattes generelt at for å optimalisere modellen, må vi endre koden slik at feilen kan minimeres.
  • Imidlertid er det skjulte elementer som påvirker maskinens læringsoptimalisering som er utenfor modellen og som har stor innflytelse på modellatferd. Disse skjulte elementene blir referert til som hyperparametre, dette er kritiske komponenter for optimalisering av hvilken som helst maskinlæringsmodell.
  • Hyperparametre er fine tunere / innstillinger som kontrollerer oppførselen til en modell. Disse hyperparametrene er definert utenfor modellen, men har et direkte forhold til modellytelsen. Hyperparametre kan betraktes som ortogonale til modell.
  • Kriteriene for å definere et hyperparameter er veldig fleksible og abstrakte. Det er sikkert noen hyperparametre som antall skjulte lag, læringshastigheten til en modell som er godt etablert og også noen innstillinger som kan behandles som hyperparameter for en bestemt modell, som å kontrollere kapasiteten til modellen.
  • Det er stor sjanse for at algoritmen kan overpasse en modell hvis algoritmer lærer gjennom innstillinger direkte. Siden det er klart, læres ikke / innstilles hyperparametere gjennom treningssettet, så test eller valideringssett brukes til valg av hyperparametre. I broadway setter vi forskjellige hyperparameterverdier, den som fungerer best med et test- eller valideringssett blir sett på som vårt beste hyperparameter.

Kategorier av Hyperparameter

For forskjellige typer datasett og i henhold til modellen kan vi ha forskjellige hyperparametre for å øke ytelsen til modellen. Stort sett kan hyperparametrene kategoriseres i to kategorier.

  • Hyperparameter for optimalisering
  • Hyperparametre for spesifikke modeller

La oss diskutere hver av disse.

1. Hyperparametre for optimalisering

Som navnet antyder, brukes disse hyperparametrene for optimalisering av modellen.

  • Læringsfrekvens

Dette hyperparameteret bestemmer hvor mye de nyinnsamlede dataene vil overstyre de gamle tilgjengelige dataene. Hvis verdien av denne hyperparameteren er høy, er den høyere læringsfrekvensen som ikke vil optimalisere modellen ordentlig fordi det er sjanser for at den vil hoppe over minimumene. På den annen side, hvis læringsgraden blir tatt mindre, vil konvergensen være veldig langsom.

Læringsfrekvensen spiller en avgjørende rolle i optimaliseringen av modellytelsen fordi modeller i noen tilfeller har hundrevis av parametere (modellparametere) med feilkurve, og læringsfrekvensen vil avgjøre frekvensen av kryssjekking med alle parametrene. Det er også vanskelig å finne de lokale minimaene for feilkurver fordi de generelt har uregelmessige kurver.

  • Partistørrelse, Gruppestørrelse

For å få fart på læringsprosessen er treningssettet delt inn i forskjellige partier. Når det gjelder stokastisk prosedyre for trening av modellen, blir en liten gruppe trent, evaluert og tilbakeprogrammert for å justere verdiene til alle dine hyperparametre, gjentas dette for hele treningssettet.

Hvis batchstørrelsen er større enn det vil øke læringstiden og vil kreve mer minne for å bearbeide for matriser multiplikasjon. Hvis batchstørrelsen er mindre enn det vil være mer støy i feilberegningen.

  • Antall epoker

Epok representerer en komplett syklus for data som skal læres i maskinlæring. Epoker spiller en veldig viktig rolle i den iterative læringsprosessen.

En valideringsfeil vurderes for å bestemme riktig antall epoker. Man kan øke antallet epoker så lenge det er en reduksjon i en valideringsfeil. Hvis valideringsfeil ikke forbedres for påfølgende epoker, er det et signal om å stoppe et økende antall epoker. Det er også kjent som tidlig stopp.

2. Hyperparametre for spesifikke modeller

Noen hyperparametre er involvert i strukturen til selve modellen. Noen av disse er som følger.

  • Antall skjulte enheter

Det er viktig å definere en rekke skjulte enheter for nevrale nettverk i dype læringsmodeller. Dette hyperparameteret brukes til å definere modellens læringsevne. For komplekse funksjoner må vi definere et antall skjulte enheter, men husk at den ikke skal overfylle modellen.

  • Antall lag

Det er åpenbart at et nevralt nettverk med 3 lag vil gi bedre ytelse enn det for to lag. Å øke mer enn 3 hjelper ikke så mye i nevrale nettverk. Når det gjelder CNN, gjør stadig flere lag modellen bedre.

Konklusjon

Hyperparametere defineres eksplisitt før du bruker en maskinlæringsalgoritme på et datasett. Hyperparametre brukes til å definere kompleksiteten på høyere nivå av modellen og lærekapasiteten. Hyperparametre kan også være innstillinger for modellen. Noen hyperparametere er definert for optimalisering av modellene (batchstørrelse, læringsfrekvens osv.), Og noen er spesifikke for modellene (antall skjulte lag osv.).

Anbefalte artikler

Dette er en guide til Hyperparameter Machine Learning. Her diskuterer vi oversikten og hva som er hyperparameter-maskinlæring med dens kategorier. Du kan også se på følgende artikler for å lære mer -

  1. Introduksjon til maskinlæring
  2. Uovervåket maskinlæring
  3. Typer maskinlæringsalgoritmer
  4. Bruksområder for maskinlæring
  5. Implementering av nevrale nettverk
  6. Topp 6 sammenligninger mellom CNN vs RNN

Kategori: