paint-brush
Kuptimi i gradientit mesatar stokastiknga@kustarev
31,726 lexime
31,726 lexime

Kuptimi i gradientit mesatar stokastik

nga Andrey Kustarev4m2024/06/06
Read on Terminal Reader
Read this story w/o Javascript

Shume gjate; Te lexosh

Zbritja e gradientit është një optimizim popullor që përdoret për gjetjen e minimumeve globale të funksioneve objektive të ofruara. Algoritmi përdor gradientin e funksionit objektiv për të përshkuar pjerrësinë e funksionit derisa të arrijë pikën më të ulët. Zbritja e gradientit të plotë (FG) dhe zbritja e gradientit stokastik (SGD) janë dy variacione të njohura të algoritmit. FG përdor të gjithë grupin e të dhënave gjatë çdo përsëritjeje dhe siguron një shkallë të lartë konvergjence me një kosto të lartë llogaritëse. Në çdo përsëritje, SGD përdor një nëngrup të dhënash për të ekzekutuar algoritmin. Është shumë më efikas, por me një konvergjencë të pasigurt. Gradienti mesatar Stochastic (SAG) është një tjetër variacion që ofron përfitimet e të dy algoritmeve të mëparshme. Ai përdor mesataren e gradientëve të kaluar dhe një nëngrup të të dhënave për të siguruar një shkallë të lartë konvergjence me llogaritje të ulëta. Algoritmi mund të modifikohet më tej për të përmirësuar efikasitetin e tij duke përdorur vektorizim dhe mini-batch.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Kuptimi i gradientit mesatar stokastik
Andrey Kustarev HackerNoon profile picture
0-item


Zbritja e gradientit është teknika më e popullarizuar e optimizimit në modelimin e mësimit të makinerive (ML). Algoritmi minimizon gabimin midis vlerave të parashikuara dhe të vërtetës bazë. Meqenëse teknika e konsideron secilën pikë të të dhënave për të kuptuar dhe minimizuar gabimin, performanca e saj varet nga madhësia e të dhënave të trajnimit. Teknikat si Zbritja e Gradientit Stochastic (SGD) janë krijuar për të përmirësuar performancën e llogaritjes, por me koston e saktësisë së konvergjencës.


Gradienti mesatar Stochastic balancon qasjen klasike, të njohur si Zbritja me gradient të plotë dhe SGD, dhe ofron të dyja përfitimet. Por përpara se të përdorim algoritmin, së pari duhet të kuptojmë rëndësinë e tij për optimizimin e modelit.

Optimizimi i objektivave të mësimit të makinerisë me zbritje gradient

Çdo algoritëm ML ka një funksion humbje të lidhur që synon të minimizojë ose përmirësojë performancën e modelit. Matematikisht, humbja mund të përkufizohet si:


Është thjesht ndryshimi midis prodhimit aktual dhe atij të parashikuar, dhe minimizimi i këtij ndryshimi do të thotë që modeli ynë i afrohet vlerave bazë të së vërtetës.


Algoritmi i minimizimit përdor zbritjen e gradientit për të kapërcyer funksionin e humbjes dhe për të gjetur një minimum global. Çdo hap kalimi përfshin përditësimin e peshave të algoritmit për të optimizuar rezultatin.


Zbritja e thjeshtë me gradient

Algoritmi konvencional i zbritjes së gradientit përdor mesataren e të gjithë gradientëve të llogaritur në të gjithë grupin e të dhënave. Cikli i jetës së një shembulli të vetëm trajnimi duket si më poshtë:



Ekuacioni i përditësimit të peshës duket si më poshtë:

Ku W përfaqëson peshat e modelit dhe dJ/dW është derivati i funksionit të humbjes në lidhje me peshën e modelit. Metoda konvencionale ka një shkallë të lartë konvergjence, por bëhet e shtrenjtë nga ana llogaritëse kur kemi të bëjmë me grupe të dhënash të mëdha që përfshijnë miliona pika të dhënash.

Zbritja stokastike e gradientit (SGD)

Metodologjia SGD mbetet e njëjtë si GD e thjeshtë, por në vend që të përdorë të gjithë grupin e të dhënave për të llogaritur gradientët, ajo përdor një grup të vogël nga inputet. Metoda është shumë më efikase, por mund të lëvizë shumë rreth minimumit global pasi çdo përsëritje përdor vetëm një pjesë të të dhënave për të mësuar.

Gradienti mesatar Stokastik

Qasja Stochastic Average Gradient (SAG) u prezantua si një terren i mesëm midis GD dhe SGD. Zgjedh një pikë të rastësishme të të dhënave dhe përditëson vlerën e saj bazuar në gradientin në atë pikë dhe një mesatare të ponderuar të gradientëve të kaluar të ruajtur për atë pikë të caktuar të të dhënave.


Ngjashëm me SGD, SAG modelon çdo problem si një shumë e fundme funksionesh konvekse dhe të diferencueshme. Në çdo përsëritje të caktuar, ai përdor gradientët aktualë dhe mesataren e gradientëve të mëparshëm për përditësimin e peshës. Ekuacioni merr formën e mëposhtme:



Shkalla e Konvergjencës

Midis dy algoritmeve të njohura, gradienti i plotë (FG) dhe zbritja e gradientit stokastik (SGD), algoritmi FG ka një shkallë më të mirë konvergjence pasi përdor të gjithë grupin e të dhënave gjatë çdo përsëritjeje për llogaritje.

Megjithëse SAG ka një strukturë të ngjashme me SGD, shkalla e saj e konvergjencës është e krahasueshme dhe ndonjëherë më e mirë se qasja e gradientit të plotë. Tabela 1 më poshtë përmbledh rezultatet nga eksperimentet e Schmidt et. al .

Burimi: https://arxiv.org/pdf/1309.2388

Ndryshime të mëtejshme

Pavarësisht performancës së tij të mahnitshme, disa modifikime janë propozuar në algoritmin origjinal SGD për të ndihmuar në përmirësimin e performancës.


  • Ripeshimi në përsëritjet e hershme: Konvergjenca SAG mbetet e ngadaltë gjatë përsëritjeve të para pasi algoritmi normalizon drejtimin me n (numri total i pikave të të dhënave). Kjo siguron një vlerësim të pasaktë pasi algoritmi nuk ka parë ende shumë pika të dhënash. Modifikimi sugjeron normalizimin me m në vend të n, ku m është numri i pikave të të dhënave që shihen të paktën një herë deri në atë përsëritje të veçantë.
  • Mini-batch: Qasja Stochastic Gradient përdor mini-batch për të përpunuar disa pika të dhënash në të njëjtën kohë. E njëjta qasje mund të zbatohet për SAG. Kjo lejon vektorizimin dhe paralelizimin për efikasitet të përmirësuar të kompjuterit. Ai gjithashtu redukton ngarkesën e kujtesës, një sfidë e spikatur për algoritmin SAG.
  • Eksperimentimi në madhësinë e hapit: Madhësia e hapit të përmendur më parë (116L) ofron rezultate të mahnitshme, por autorët eksperimentuan më tej duke përdorur madhësinë e hapit prej 1L. Kjo e fundit siguroi konvergjencë edhe më të mirë. Megjithatë, autorët nuk ishin në gjendje të paraqisnin një analizë formale të rezultateve të përmirësuara. Ata arrijnë në përfundimin se madhësia e hapit duhet të eksperimentohet për të gjetur atë optimale për problemin specifik.


Mendimet Përfundimtare

Zbritja e gradientit është një optimizim popullor që përdoret për gjetjen e minimumeve globale të funksioneve objektive të ofruara. Algoritmi përdor gradientin e funksionit objektiv për të përshkuar pjerrësinë e funksionit derisa të arrijë pikën më të ulët.

Zbritja e gradientit të plotë (FG) dhe zbritja e gradientit stokastik (SGD) janë dy variacione të njohura të algoritmit. FG përdor të gjithë grupin e të dhënave gjatë çdo përsëritjeje dhe siguron një shkallë të lartë konvergjence me një kosto të lartë llogaritëse. Në çdo përsëritje, SGD përdor një nëngrup të dhënash për të ekzekutuar algoritmin. Është shumë më efikas, por me një konvergjencë të pasigurt.


Gradienti mesatar Stochastic (SAG) është një tjetër variacion që ofron përfitimet e të dy algoritmeve të mëparshme. Ai përdor mesataren e gradientëve të kaluar dhe një nëngrup të të dhënave për të siguruar një shkallë të lartë konvergjence me llogaritje të ulëta. Algoritmi mund të modifikohet më tej për të përmirësuar efikasitetin e tij duke përdorur vektorizim dhe mini-batch.