Hyperparameter (maskininlärning)
I maskininlärning är en hyperparameter en parameter vars värde används för att styra inlärningsprocessen. Däremot härleds värdena för andra parametrar (typiskt nodvikter) via träning.
Hyperparametrar kan klassificeras som modellhyperparametrar, som inte går att sluta sig till när maskinen anpassas till träningsuppsättningen eftersom de hänvisar till modellvalsuppgiften , eller algoritmhyperparametrar, som i princip inte har någon inverkan på modellens prestanda utan påverkar hastigheten och kvaliteten på inlärningsprocessen. Ett exempel på en modellhyperparameter är topologin och storleken på ett neuralt nätverk. Exempel på algoritmhyperparametrar är inlärningshastighet och batchstorlek samt minibatchstorlek. Batchstorlek kan referera till det fullständiga dataprovet där minibatchstorleken skulle vara en mindre provuppsättning.
Olika modellträningsalgoritmer kräver olika hyperparametrar, vissa enkla algoritmer (som vanlig minsta kvadratregression) kräver ingen. Givet dessa hyperparametrar, lär träningsalgoritmen parametrarna från data. Till exempel LASSO en algoritm som lägger till en regulariseringshyperparameter till vanlig minsta kvadratregression, som måste ställas in innan man uppskattar parametrarna genom träningsalgoritmen.
Överväganden
Den tid som krävs för att träna och testa en modell kan bero på valet av dess hyperparametrar. En hyperparameter är vanligtvis av kontinuerlig eller heltalstyp, vilket leder till optimeringsproblem av blandad typ. Förekomsten av vissa hyperparametrar är beroende av värdet av andra, t.ex. kan storleken på varje gömt lager i ett neuralt nätverk vara beroende av antalet lager.
Svårighet att lära sig parametrar
Vanligtvis, men inte alltid, kan hyperparametrar inte läras in med välkända gradientbaserade metoder (såsom gradient descent, LBFGS) - som vanligtvis används för att lära sig parametrar. Dessa hyperparametrar är de parametrar som beskriver en modellrepresentation som inte kan läras in med vanliga optimeringsmetoder men som ändå påverkar förlustfunktionen. Ett exempel skulle vara toleranshyperparametern för fel i stödvektormaskiner.
Oträningsbara parametrar
Ibland kan hyperparametrar inte läras från träningsdata eftersom de aggressivt ökar kapaciteten hos en modell och kan pressa förlustfunktionen till ett oönskat minimum (överanpassning till och ta upp brus i data), i motsats till korrekt kartläggning av rikedomen av strukturen i datan. Till exempel, om vi behandlar graden av en polynomekvation som passar en regressionsmodell som en träningsbar parameter , skulle graden öka tills modellen perfekt passar data, vilket ger låga träningsfel, men dålig generaliseringsprestanda.
Stämbarhet
De flesta prestandavariationer kan tillskrivas bara några få hyperparametrar. Justerbarheten för en algoritm, hyperparameter eller interagerande hyperparametrar är ett mått på hur mycket prestanda som kan uppnås genom att justera den. För en LSTM , medan inlärningshastigheten följt av nätverksstorleken är dess mest avgörande hyperparametrar, har batchning och momentum ingen signifikant effekt på dess prestanda.
Även om viss forskning har förespråkat användningen av minibatchstorlekar i tusental, har andra arbeten funnit den bästa prestandan med minibatchstorlekar mellan 2 och 32.
Robusthet
En inneboende stokasticitet i lärande innebär direkt att den empiriska hyperparameterprestandan inte nödvändigtvis är dess verkliga prestanda. Metoder som inte är robusta för enkla ändringar i hyperparametrar, slumpmässiga frön eller till och med olika implementeringar av samma algoritm kan inte integreras i verksamhetskritiska styrsystem utan betydande förenkling och robustisering.
Speciellt förstärkningsinlärningsalgoritmer kräver mätning av deras prestanda över ett stort antal slumpmässiga frön, och även mätning av deras känslighet för val av hyperparametrar . Deras utvärdering med ett litet antal slumpmässiga frön fångar inte prestanda tillräckligt på grund av hög varians. Vissa metoder för förstärkningsinlärning, t.ex. DDPG (Deep Deterministic Policy Gradient), är mer känsliga för hyperparameterval än andra.
Optimering
Hyperparameteroptimering hittar en tupel av hyperparametrar som ger en optimal modell som minimerar en fördefinierad förlustfunktion på givna testdata. Objektivfunktionen tar en tupel av hyperparametrar och returnerar den associerade förlusten.
Reproducerbarhet
Förutom att ställa in hyperparametrar, innebär maskininlärning att lagra och organisera parametrarna och resultaten och se till att de är reproducerbara. I avsaknad av en robust infrastruktur för detta ändamål, utvecklas forskningskoden ofta snabbt och äventyrar väsentliga aspekter som bokföring och reproducerbarhet . Online samarbetsplattformar för maskininlärning går längre genom att tillåta forskare att automatiskt dela, organisera och diskutera experiment, data och algoritmer. Reproducerbarhet kan vara särskilt svårt för modeller för djupinlärning .