paint-brush
Fahatakarana ny Stochastic Average Gradientny@kustarev
31,726 HENOINA
31,726 HENOINA

Fahatakarana ny Stochastic Average Gradient

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

Lava loatra; Mamaky

Ny fidinana gradient dia fanatsarana malaza ampiasaina amin'ny fitadiavana ny kely indrindra manerantany amin'ireo asa tanjona nomena. Ny algorithm dia mampiasa ny gradient amin'ny tanjona tanjona mba hamakivakiana ny slope asa mandra-pahatongany amin'ny teboka ambany indrindra. FG (Full Gradient Descent) sy Stochastic Gradient Descent (SGD) dia karazany roa malaza amin'ny algorithm. FG dia mampiasa ny angon-drakitra manontolo mandritra ny famerimberenana tsirairay ary manome taham-pifamoivoizana avo lenta amin'ny vidiny avo lenta. Isaky ny miverina, ny SGD dia mampiasa ampahany amin'ny angona mba hampandehanana ny algorithm. Mahomby lavitra izy io saingy miaraka amin'ny convergence tsy azo antoka. Stochastic Average Gradient (SAG) dia fiovaovana hafa izay manome tombony amin'ny algorithm teo aloha. Mampiasa ny salan'isan'ny gradient taloha sy ny ampahany amin'ny angon-drakitra izy io mba hanomezana taham-pivondronana avo miaraka amin'ny kajy ambany. Ny algorithm dia azo ovaina bebe kokoa hanatsarana ny fahombiazany amin'ny fampiasana vectorization sy mini-batch.

People Mentioned

Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Fahatakarana ny Stochastic Average Gradient
Andrey Kustarev HackerNoon profile picture
0-item


Ny gradient descent no teknika fanatsarana malaza indrindra amin'ny modeling machine learning (ML). Ny algorithm dia manamaivana ny lesoka eo amin'ny soatoavina voavinavina sy ny fahamarinana fototra. Koa satria ny teknika dia mihevitra ny teboka tsirairay mba hahatakarana sy hanamaivanana ny fahadisoana, miankina amin'ny haben'ny angona fanofanana ny fahombiazany. Ny teknika toy ny Stochastic Gradient Descent (SGD) dia natao hanatsarana ny fahombiazan'ny kajy fa amin'ny vidin'ny fahamarinan'ny convergence.


Stochastic Average Gradient dia mampifandanja ny fomba fanao mahazatra, fantatra amin'ny anarana hoe Full Gradient Descent sy SGD, ary manome tombony roa. Saingy alohan'ny ahafahantsika mampiasa ny algorithm dia tsy maintsy takatsika aloha ny maha-zava-dehibe ny fanatsarana ny modely.

Fanamafisana ny tanjon'ny fianarana milina miaraka amin'ny gradient descent

Ny algorithm ML tsirairay dia manana fiasa fatiantoka mifandray izay mikendry ny hanamaivana na hanatsara ny fahombiazan'ny modely. Amin'ny matematika, ny fatiantoka dia azo faritana toy izao:


Ny fahasamihafan'ny vokatra tena izy sy ny vokatra vinavinaina fotsiny izany, ary ny fampihenana an'io fahasamihafana io dia midika fa ny modely ataontsika dia manakaiky kokoa ny soatoavina marina.


Ny algorithm fanamafisam-peo dia mampiasa fidinana miandalana mba hamakiana ny fiasan'ny fatiantoka ary hitadiavana ny kely indrindra manerantany. Ny dingana tsirairay dia ahitana fanavaozana ny lanjan'ny algorithm mba hanatsarana ny vokatra.


Plain Gradient Descent

Ny algorithm fidinana miandalana mahazatra dia mampiasa ny salan'ny gradient rehetra kajy manerana ny angona manontolo. Toy izao manaraka izao ny tsingerin'ny fiainan'ny ohatra fanofanana tokana:



Ny equation fanavaozana lanja dia toy izao manaraka izao:

Raha W dia maneho ny lanjan'ny maodely ary dJ/dW dia ny derivative ny asa fatiantoka mifandraika amin'ny lanjan'ny modely. Ny fomba mahazatra dia manana taham-pifanampiana avo lenta saingy lasa lafo amin'ny fikajiana rehefa mifandray amin'ny angona lehibe misy teboka angon-drakitra an-tapitrisany.

Stochastic Gradient Descent (SGD)

Ny fomba fiasa SGD dia mijanona ho mitovy amin'ny GD tsotra, fa raha tokony hampiasa ny angon-drakitra manontolo hanombanana ny gradients, dia mampiasa ampahany kely avy amin'ny fampidirana. Mahomby kokoa ny fomba fiasa saingy mety hivezivezy be loatra amin'ny faran'izao tontolo izao satria ny ampahany tsirairay amin'ny angon-drakitra ho an'ny fianarana dia tsy mampiasa afa-tsy ny fampitaovana.

Stochastic Salan'ny Gradient

Ny fomba fiasa Stochastic Average Gradient (SAG) dia nampidirina ho toerana afovoany eo anelanelan'ny GD sy SGD. Mifidy teboka angon-drakitra kisendrasendra izy ary manavao ny sandany mifototra amin'ny gradient amin'io teboka io ary ny salan'isa mavesatra amin'ny gradient taloha voatahiry ho an'io teboka data manokana io.


Mitovy amin'ny SGD, ny SAG dia mamolavola ny olana rehetra ho toy ny fitambaran'ny convex, fiasa azo avahana. Amin'ny famerimberenana rehetra, dia mampiasa ny gradient amin'izao fotoana izao sy ny salan'isan'ny gradient teo aloha ho an'ny fanavaozana lanja. Ny equation dia manana endrika manaraka:



tahan'ny Convergence

Eo anelanelan'ireo algorithma malaza roa, ny gradient feno (FG) sy ny gradient stochastic (SGD), ny algorithm FG dia manana taham-pifanampiana tsara kokoa satria mampiasa ny angon-drakitra manontolo mandritra ny famandrihana isaky ny kajy.

Na dia manana rafitra mitovy amin'ny SGD aza ny SAG, ny tahan'ny fifanandrinana dia azo ampitahaina ary indraindray tsara kokoa noho ny fomba fiasa feno gradient. Ny tabilao 1 etsy ambany dia mamintina ny vokatry ny andrana amin'ny Schmidt et. al .

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

Fanovana fanampiny

Na dia eo aza ny zava-bitany mahatalanjona, fanovana maromaro no naroso tamin'ny algorithm SGD tany am-boalohany mba hanampy amin'ny fanatsarana ny fampisehoana.


  • Famerenana lanja amin'ny famerimberenana tany am-boalohany: Mijanona miadana ny fifanojoan'ny SAG mandritra ny famerimberenana vitsivitsy voalohany satria ny algorithm dia mamarana ny lalana amin'ny n (totalan'ny teboka angon-drakitra). Manome vinavina tsy marina izany satria mbola tsy nahita teboka angon-drakitra maro ny algorithm. Ny fanovana dia manolo-kevitra ny hanara-dalàna amin'ny m fa tsy n, izay m dia ny isan'ny teboka angon-drakitra hita indray mandeha farafahakeliny mandra-pahatongan'io fanovana manokana io.
  • Mini-batch: Ny fomba fiasa Stochastic Gradient dia mampiasa batch kely mba hikarakarana teboka maromaro miaraka. Ny fomba fiasa mitovy amin'izany dia azo ampiharina amin'ny SAG. Izany dia mamela ny vectorization sy ny parallelization ho fanatsarana ny fahombiazan'ny solosaina. Mampihena ihany koa ny fitadidiana, fanamby lehibe ho an'ny algorithm SAG.
  • Fanandramana amin'ny habe: Ny haben'ny dingana voalaza teo aloha (116L) dia manome vokatra mahagaga, saingy mbola nanandrana tamin'ny fampiasana ny haben'ny dingana 1L ny mpanoratra. Ity farany dia nanome convergence tsara kokoa. Na izany aza, tsy afaka nanolotra fanadihadiana ofisialy momba ny vokatra nohatsaraina ireo mpanoratra. Manatsoaka hevitra izy ireo fa ny haben'ny dingana dia tokony andrana mba hahitana ny tsara indrindra amin'ny olana manokana.


Hevitra farany

Ny fidinana gradient dia fanatsarana malaza ampiasaina amin'ny fitadiavana ny kely indrindra manerantany amin'ireo asa tanjona nomena. Ny algorithm dia mampiasa ny gradient amin'ny tanjona tanjona mba hamakivakiana ny fihenjanana mandra-pahatongany amin'ny teboka ambany indrindra.

FG (Full Gradient Descent) sy Stochastic Gradient Descent (SGD) dia karazany roa malaza amin'ny algorithm. FG dia mampiasa ny angon-drakitra manontolo mandritra ny famerimberenana tsirairay ary manome taham-pifamoivoizana avo lenta amin'ny vidiny avo lenta. Isaky ny miverina, ny SGD dia mampiasa ampahany amin'ny angona mba hampandehanana ny algorithm. Mahomby lavitra izy io saingy miaraka amin'ny convergence tsy azo antoka.


Stochastic Average Gradient (SAG) dia fiovaovana hafa izay manome tombony amin'ny algorithm teo aloha. Mampiasa ny salan'isan'ny gradient taloha sy ny ampahany amin'ny angon-drakitra izy io mba hanomezana taham-pivondronana avo miaraka amin'ny kajy ambany. Ny algorithm dia azo ovaina bebe kokoa hanatsarana ny fahombiazany amin'ny fampiasana vectorization sy mini-batch.