i praksis med maskine og dyb læring er modelparametre egenskaberne ved træningsdata, der lærer alene under træning af klassificeringsenheden eller anden ML-model. For eksempel vægte og fordomme eller opdelte punkter i beslutningstræet.
Model Hyperparametre er i stedet egenskaber, der styrer hele træningsprocessen. De inkluderer variabler, der bestemmer netværksstrukturen (for eksempel antal skjulte enheder) og de variabler, der bestemmer, hvordan netværket trænes (for eksempel læringshastighed). Model hyperparametre er indstillet før træning (før optimering af vægte og bias).
for eksempel er her nogle model indbyggede konfigurationsvariabler :
læringshastighed
Antal epoker
skjulte lag
skjulte enheder
aktiveringsfunktioner
Hyperparametre er vigtige, da de direkte styrer træningens algo-opførsel og har vigtig indflydelse på ydeevnen af modellen under træning.
valg af passende hyperparametre spiller en nøglerolle i succesen med neurale netværksarkitekturer i betragtning af virkningen på den lærte model. For eksempel, hvis læringshastigheden er for lav, vil modellen gå glip af de vigtige mønstre i dataene; omvendt, hvis den er høj, kan den have kollisioner.
valg af gode hyperparametre giver to hovedfordele:
effektiv søgning på tværs af mulige hyperparametre; og
lettere styring af et stort sæt eksperimenter til hyperparameterindstilling.
Hyperparametre kan groft opdeles i 2 kategorier:
1. Optimering af hyperparametre, 2. Model specifikke hyperparametre
de er mere relateret til optimerings-og træningsprocessen.
1.1. Læringshastighed:
Hvis modelindlæringshastigheden er alt for mindre end optimale værdier, vil det tage meget længere tid (hundreder eller tusinder) af epoker at nå en ideel tilstand. På den anden side, hvis læringshastigheden er meget større end optimal værdi, ville den overskride den ideelle tilstand, og algoritmen konvergerer muligvis ikke. En rimelig start læring sats = 0.001.
vigtigt at overveje, at: a) modellen vil have hundreder og tusinder af parametre hver med sin egen fejlkurve. B) fejlkurver er ikke rene u-former; i stedet har de en tendens til at have mere komplekse former med lokale minima.
1.2. Mini-Batch Størrelse:
batchstørrelse har en effekt på ressourcekravene i træningsprocessen, hastigheden og antallet af iterationer på en ikke-triviel måde.
historisk har der været en debat om at lave stokastisk træning, hvor du passer et enkelt eksempel på datasættet til modellen og kun bruger et eksempel til at udføre et fremadpas, beregne fejlen/backpropagate & Indstil justerede værdier for alle hyperparametre. Og så gør dette igen for hvert eksempel i datasættet.
eller måske bedre at fodre hele dataene til træningstrinnet og beregne gradienten ved hjælp af den fejl, der genereres ved at se på alle eksemplerne i datasættet. Dette kaldes batch træning.
almindeligt anvendt teknik i dag er at indstille en mini-batch størrelse. Stokastisk træning er , når minibatch Størrelse =1, og Batchtræning er, når mini-batchstørrelsen = antal eksempler i træningssættet. Anbefalede startværdier til eksperimentering: 1, 2, 4, 8, 16, 32, 64, 128, 256.
en større mini-batch størrelse tillader beregningsmæssige boosts, der udnytter matricen multiplikation i uddannelse beregninger . Det kommer dog på bekostning af at have brug for mere hukommelse til træningsprocessen. En mindre mini-batchstørrelse inducerer mere støj ved fejlberegninger, ofte mere nyttigt til at forhindre, at træningsprocessen stopper ved lokale minima. En dagsværdi for mini-batchstørrelse= 32.
så mens computational boost driver os til at øge mini-batchstørrelsen, tilskynder denne praktiske algoritmiske fordel til faktisk at gøre den mindre.
1.3. Antal epoker:
for at vælge det rigtige antal epoker til træningstrinnet er den metriske, vi skal være opmærksomme på, Valideringsfejlen.