Oversigt over Hyperparameter Machine Learning

For enhver model har vi brug for nogle parametre, som hjælper med at skabe en base for løsningen af ​​problem / analyse og evaluering af modellen. Nogle af disse parametre læres af dataene, og andre må vi udtrykkeligt definere fra vores ende. De parametre, der kan læres fra dataene uden at blive defineret eksplicit, kaldes modelparametre. Parameteren, der defineres eksplicit af brugeren, kaldes Hyperparametre. Hyperparametre er også kun parametre for model, men udtrykket hyperparametre bruges i maskinlæring, så de let kan skelnes og ikke forveksles med modelparametre, der læres fra datasættet.

Hvad er Hyperparameter Machine Learning?

I de fleste rammer inden for maskinlæring har hyperparametre ikke en streng definition. Disse hyperparametre styrer det underliggende system i en model, der styrer de primære (modale) parametre for modellen. Lad os prøve at forstå hyperparametrene med følgende eksempel.

  • Det er meget afgørende at indstille din violin, når man er på læringsstadiet, fordi man på det tidspunkt skaber forbindelser mellem forskellige sanser. Ører, fingre og øjne lærer alle violinen på samme tid. Nu I begyndelsen At vænne sig til lyden af ​​violin ud af tone skaber en dårlig smag af lyd, der vil ødelægge ens oplevelse af at blive forelsket i violinindlæringsprocessen.
  • Derfor kan indstilling af violin virkelig hjælpe en i processen med at lære violin. På samme måde er hyperparameter en slags indstilling til Machine Learning-modellen for at give den rigtige retning.
  • Hyperparametre defineres generelt inden anvendelse af en maskinlæringsalgoritme på et datasæt.
  • Nu er næste opgave, hvad der skal være hyperparameter, og hvad der skal være dens værdi. Fordi man skal vide, hvilke strenge der skal til, og hvordan man indstiller violinen, før man tuning den. Det samme gælder hyperparametre, vi er nødt til at definere, hvad hyperparametre og hvad der skal være dens værdi, dybest set afhænger det af hver opgave og hvert datasæt.
  • For at forstå dette, lad os tage perspektivet med modeloptimering.
  • Ved implementeringen af ​​maskinlæringsmodellen spiller modeloptimering en vigtig rolle. Der er en lang række grene af maskinlæring, som udelukkende er dedikeret til optimering af maskinlæringsmodellen. Det opfattes generelt, at for at optimere modellen, er vi nødt til at ændre koden, så fejlen kunne minimeres.
  • Der er dog skjulte elementer, der påvirker optimering af maskinlæring, der ligger uden for modellen og har stor indflydelse på modeladfærd. Disse skjulte elementer benævnes hyperparametre, dette er kritiske komponenter til optimering af enhver maskinlæringsmodel.
  • Hyperparametre er fine tunere / indstillinger, der kontrollerer opførelsen af ​​en model. Disse hyperparametre er defineret uden for modellen, men har et direkte forhold til modelydelsen. Hyperparametre kan betragtes som ortogonale i forhold til modellen.
  • Kriterierne for at definere et hyperparameter er meget fleksible og abstrakte. Der er bestemt nogle hyperparametre som antallet af skjulte lag, indlæringshastigheden for en model, der er veletableret, og der er også nogle indstillinger, der kan behandles som hyperparameter for en bestemt model, som at kontrollere modellens kapacitet.
  • Der er chancer for, at algoritmen kan overpasse en model, hvis algoritmer lærer direkte gennem indstillinger. Da det er tydeligt, læres / afstemes ikke hyperparametre gennem træningssæt, så test eller valideringssæt bruges til valg af hyperparametre. I broadway indstiller vi forskellige hyperparameterværdier, den, der fungerer bedst med et test- eller valideringssæt, betragtes som vores bedste hyperparameter.

Kategorier af Hyperparameter

For forskellige typer datasæt og i henhold til modellen kan vi have forskellige hyperparametre for at øge modellens ydelse. Stort set kan hyperparametrene kategoriseres i to kategorier.

  • Hyperparameter til optimering
  • Hyperparametre til specifikke modeller

Lad os diskutere hver af disse.

1. Hyperparametre til optimering

Som navnet antyder, bruges disse hyperparametre til optimering af modellen.

  • Læringshastighed

Dette hyperparameter bestemmer, hvor meget de nyligt erhvervede data vil tilsidesætte de gamle tilgængelige data. Hvis denne hyperparameter værdi er høj, vil højere indlæringshastighed ikke optimere modellen ordentligt, fordi der er chancer for, at den hopper over minimaene. På den anden side, hvis indlæringshastigheden tages meget mindre, vil konvergensen være meget langsom.

Læringshastigheden spiller en afgørende rolle i optimeringen af ​​modelydelsen, fordi modeller i nogle tilfælde har hundreder af parametre (modelparametere) med fejlkurve, indlæringshastigheden vil bestemme hyppigheden af ​​krydskontrol med alle parametrene. Det er også svært at finde det lokale minimum for fejlkurver, fordi de generelt har uregelmæssige kurver.

  • Batch størrelse

For at fremskynde læringsprocessen er træningssættet opdelt i forskellige batches. I tilfælde af stokastisk procedure for træning af modellen, trænes, evalueres og tilbageprogrammeres en lille batch for at justere værdierne for alle dine hyperparametre, dette gentages for hele træningssættet.

Hvis batchstørrelsen er større, end det vil øge læringstiden og kræver mere hukommelse at behandle til matrixmultiplikation. Hvis batchstørrelsen er mindre end der vil være mere støj i fejlberegningen.

  • Antal epoker

Epok repræsenterer en komplet cyklus for data, der skal læres i Machine Learning. Epoker spiller en meget vigtig rolle i den iterative læringsproces.

En valideringsfejl overvejes til bestemmelse af det rigtige antal epoker. Man kan øge antallet af epoker, så længe der er en reduktion i en valideringsfejl. Hvis valideringsfejl ikke forbedres for på hinanden følgende epoker, er det et signal til at stoppe et stigende antal epoker. Det er også kendt som tidligt stop.

2. Hyperparametre til specifikke modeller

Nogle hyperparametre er involveret i strukturen af ​​selve modellen. Nogle af disse er som følger.

  • Antal skjulte enheder

Det er vigtigt at definere et antal skjulte enheder til neurale netværk i modeller for dyb læring. Dette hyperparameter bruges til at definere modellens indlæringskapacitet. For komplekse funktioner skal vi definere et antal skjulte enheder, men husk, at det ikke bør overpasse modellen.

  • Antal lag

Det er indlysende, at et neuralt netværk med 3 lag vil give bedre ydelse end det for to lag. At øge mere end 3 hjælper ikke så meget i neurale netværk. For CNN gør et stigende antal lag modellen bedre.

Konklusion

Hyperparametre defineres eksplicit, inden en maskinlæringsalgoritme anvendes til et datasæt. Hyperparametre bruges til at definere kompleksiteten på højere niveau af modellen og indlæringskapaciteten. Hyperparametre kan også være indstillinger for modellen. Nogle hyperparametre er defineret til optimering af modellerne (Batchstørrelse, indlæringshastighed osv.), Og nogle er specifikke for modellerne (Antal skjulte lag osv.).

Anbefalede artikler

Dette er en guide til Hyperparameter Machine Learning. Her diskuterer vi oversigten og hvad der er hyperparameter-maskinlæring med dets kategorier. Du kan også se på de følgende artikler for at lære mere -

  1. Introduktion til maskinlæring
  2. Uovervåget maskinlæring
  3. Typer af maskinlæringsalgoritmer
  4. Anvendelser af maskinlæring
  5. Implementering af neurale netværk
  6. Top 6 sammenligninger mellem CNN vs RNN

Kategori: