Stokastisk gradientnedstigning (SGD) är en populär optimeringsalgoritm som används i maskininlärning, djupinlärning och neurala nätverk för att minimera förlustfunktionen (även känd som kostnadsfunktionen, felfunktionen eller objektivfunktionen) under träning.
Till skillnad från den traditionella gradient descent-algoritmen som uppdaterar modellparametrarna för varje träningsexempel (batch), uppdaterar SGD parametrarna för varje enskilt träningsexempel. Med andra ord, SGD väljer ett enstaka träningsexempel slumpmässigt, beräknar gradienten för förlustfunktionen med avseende på modellparametrarna med hjälp av det exemplet och uppdaterar sedan parametrarna i riktning mot den gradienten.
SGD används ofta eftersom det är beräkningseffektivt, kräver mindre minne än batchgradientnedstigning och kan konvergera snabbare eftersom uppdateringarna av parametrarna görs oftare. Det kan dock vara känsligt för inlärningshastigheten och valet av minibatchstorlek, vilket kan påverka dess prestanda.
Publiceringsdatum: