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.
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.
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.
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.
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:
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
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.
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.