In die domein van masjienleer, veral wanneer platforms soos Google Cloud Machine Learning gebruik word, is die begrip van hiperparameters belangrik vir die ontwikkeling en optimalisering van modelle. Hiperparameters is instellings of konfigurasies buite die model wat die leerproses dikteer en die werkverrigting van die masjienleeralgoritmes beïnvloed. Anders as modelparameters, wat tydens die opleidingsproses uit die data geleer word, word hiperparameters gestel voor die aanvang van opleiding en bly deurgaans konstant.
Hiperparameters kan breedweg in verskeie tipes gekategoriseer word op grond van hul rol en funksie in die masjienleerpyplyn. Hierdie kategorieë sluit modelhiperparameters, optimeringshiperparameters en dataverwerkinghiperparameters in. Elke tipe speel 'n duidelike rol in die vorming van hoe 'n model uit data leer en veralgemeen na nuwe, onsigbare data.
Model Hiperparameters
1. Argitektuur Hiperparameters: Dit definieer die struktuur van die model. In neurale netwerke, byvoorbeeld, sluit argitektuurhiperparameters die aantal lae, die aantal nodusse per laag en die tipe aktiveringsfunksies wat gebruik word in. Byvoorbeeld, 'n diep neurale netwerk kan hiperparameters hê wat drie versteekte lae spesifiseer met onderskeidelik 128, 64 en 32 nodusse, en ReLU (Rektified Linear Unit) as die aktiveringsfunksie.
2. Regularisering Hiperparameters: Regulariseringstegnieke word aangewend om oorpassing te voorkom, wat plaasvind wanneer 'n model geraas in die opleidingsdata leer eerder as die onderliggende patroon. Algemene regulasiehiperparameters sluit die L1- en L2-regulariseringskoëffisiënte in. Hierdie koëffisiënte beheer die straf wat toegepas word op groot gewigte in die model. Byvoorbeeld, die stel van 'n hoër L2-regulariseringskoëffisiënt sal groot gewigte meer penaliseer, en sodoende die model aanmoedig om kleiner gewigte te handhaaf en potensieel veralgemening te verbeter.
3. Uitvalsyfer: In neurale netwerke is uitval 'n regulariseringstegniek waar lukraak geselekteerde neurone tydens opleiding geïgnoreer word. Die uitvalkoers is 'n hiperparameter wat die fraksie van neurone spesifiseer wat tydens elke oefeniterasie moet val. 'n Uitvalkoers van 0.5 beteken dat 50% van die neurone lukraak in elke iterasie gedaal word, wat help om ooraanpassing te verminder.
Optimalisering hiperparameters
1. Leertempo: Dit is miskien een van die mees kritieke hiperparameters in die opleiding van neurale netwerke. Die leertempo bepaal die grootte van die stappe wat geneem word na die minimum van die verliesfunksie. 'n Hoë leertempo kan veroorsaak dat die model te vinnig na 'n suboptimale oplossing konvergeer, terwyl 'n lae leertempo die opleidingsproses buitensporig stadig kan maak of in plaaslike minima kan vassteek.
2. Bondel grote: Hierdie hiperparameter definieer die aantal oefenmonsters wat in een iterasie van die opleidingsproses gebruik word. Kleiner bondelgroottes kan lei tot 'n meer akkurate skatting van die gradiënt, maar kan die tyd wat nodig is om 'n epog te voltooi, verhoog. Omgekeerd kan groter groepgroottes opleiding bespoedig, maar kan lei tot minder akkurate modelle.
3. Momentum: Gebruik in optimeringsalgoritmes soos Stogastiese Gradient Descent met momentum, hierdie hiperparameter help om die gradiëntvektore in die regte rigting te versnel, en lei dus tot vinniger konvergering. Dit help om die ossillasies in die optimaliseringspad glad te maak.
4. Aantal Tydperke: Hierdie hiperparameter definieer die aantal volledige passe deur die opleidingdatastel. ’n Hoër aantal tydperke gee die model gewoonlik meer geleentheid om uit die data te leer, maar dit kan ook die risiko van oorpas verhoog.
Dataverwerking hiperparameters
1. Eienskapskaal: Voordat 'n model opgelei word, moet kenmerke dikwels geskaal word. Hiperparameters wat met kenmerkskaal verband hou, sluit die keuse van skaalmetode in, soos Min-Max-skaal of Standaardisering. Hierdie keuse kan die werkverrigting van die model aansienlik beïnvloed, veral vir algoritmes wat sensitief is vir kenmerkskaal soos Ondersteuningsvektormasjiene en K-Means-groepering.
2. Datavergrotingsparameters: In beeldverwerkingstake word datavergroting gebruik om die grootte van 'n opleidingdatastel kunsmatig uit te brei deur gewysigde weergawes van beelde in die datastel te skep. Hiperparameters sluit hier die tipes transformasies wat toegepas word in, soos rotasie, translasie, blaai en zoem, en die waarskynlikheid dat elke transformasie toegepas word.
3. Steekproefmetodes: In gevalle waar data ongebalanseerd is, kan tegnieke soos oorsteekproefneming van die minderheidsklas of ondersteekproefneming van die meerderheidsklas gebruik word. Die hiperparameters hier sluit die verhouding van minderheid tot meerderheid klasmonsters in.
Hiperparameter-instelling
Die proses om die optimale hiperparameters te kies staan bekend as hiperparameterinstelling. Dit is 'n kritieke stap aangesien die keuse van hiperparameters die model se werkverrigting aansienlik kan beïnvloed. Algemene metodes vir hiperparameter-instelling sluit in:
1. Roostersoektog: Hierdie metode behels die definisie van 'n rooster van hiperparameterwaardes en om elke kombinasie uitputtend te probeer. Alhoewel dit eenvoudig is, kan roostersoektog rekenkundig duur wees, veral met 'n groot aantal hiperparameters.
2. Ewekansige soektog: In plaas daarvan om elke moontlike kombinasie te probeer, kies ewekansige soektog ewekansige kombinasies van hiperparameters. Hierdie benadering is dikwels meer doeltreffend as roostersoektog en kan tot beter resultate lei, veral wanneer slegs 'n paar hiperparameters invloedryk is.
3. Bayesiese optimalisering: Dit is 'n meer gesofistikeerde benadering wat die prestasie van die hiperparameters modelleer as 'n waarskynlikheidsfunksie en poog om die beste stel hiperparameters te vind deur eksplorasie en ontginning te balanseer.
4. Outomatiese masjienleer (AutoML): Platforms soos Google Cloud AutoML gebruik gevorderde algoritmes om outomaties na die beste hiperparameters te soek. Dit kan tyd en hulpbronne bespaar, veral vir praktisyns wat dalk nie diep kundigheid in masjienleer het nie.
Praktiese voorbeelde
Oorweeg 'n scenario waar 'n mens 'n konvolusionele neurale netwerk (CNN) oplei vir beeldklassifikasie met behulp van Google Cloud Machine Learning. Die hiperparameters kan die volgende insluit:
– Aantal konvolusionele lae en hul onderskeie filtergroottes, wat argitektuurhiperparameters is.
- Leertempo en bondelgrootte, wat optimaliseringshiperparameters is.
– Datavergrotingstegnieke soos rotasie en flippen, wat dataverwerking hiperparameters is.
Deur hierdie hiperparameters sistematies te verstel, kan 'n mens die model se akkuraatheid en veralgemeningsvermoë aansienlik verbeter.
In 'n ander voorbeeld, wanneer 'n besluitboomklassifiseerder gebruik word, kan hiperparameters die maksimum diepte van die boom, die minimum aantal monsters wat nodig is om 'n nodus te verdeel, en die kriterium wat vir splitsing gebruik word, insluit. Elkeen van hierdie hiperparameters kan die kompleksiteit van die model en sy vermoë om te veralgemeen beïnvloed.
In wese is hiperparameters die grondslag vir die masjienleerproses, wat beide die doeltreffendheid en doeltreffendheid van die modelopleiding beïnvloed. Hul noukeurige keuse en afstemming kan lei tot modelle wat nie net goed presteer op opleidingsdata nie, maar ook effektief veralgemeen na nuwe, onsigbare data.
Ander onlangse vrae en antwoorde t.o.v EITC/AI/GCML Google Cloud Machine Learning:
- As ek 'n Google-model gebruik en dit op my eie instansie oplei, behou Google die verbeterings wat uit my opleidingsdata gemaak is?
- Hoe weet ek watter ML-model om te gebruik voordat ek dit oplei?
- Wat is 'n regressietaak?
- Hoe kan 'n mens oorskakel tussen Vertex AI en AutoML-tabelle?
- Is dit moontlik om Kaggle te gebruik om finansiële data op te laai en statistiese ontleding en vooruitskatting uit te voer deur ekonometriese modelle soos R-kwadraat, ARIMA of GARCH te gebruik?
- Kan masjienleer gebruik word om die risiko van koronêre hartsiekte te voorspel?
- Wat is die werklike veranderinge as gevolg van die hernaam van Google Cloud Machine Learning as Vertex AI?
- Wat is die prestasie-evalueringsmaatstawwe van 'n model?
- Wat is lineêre regressie?
- Is dit moontlik om verskillende ML-modelle te kombineer en 'n meester-KI te bou?
Bekyk meer vrae en antwoorde in EITC/AI/GCML Google Cloud Machine Learning