Stochastic Gradient Descent (SGD) – optymalizacja wag na losowych próbkach.
Jest to metoda optymalizacji stosowana w uczeniu maszynowym, szczególnie w sieciach neuronowych, służąca do minimalizacji funkcji straty poprzez iteracyjne dostosowywanie wag modelu. Polega na aktualizacji parametrów na podstawie gradientu wyliczonego z losowo wybranej niewielkiej podpróbki danych treningowych, zamiast całego zbioru danych. Dzięki temu algorytm jest bardziej efektywny obliczeniowo i może szybciej zbiegać do minimum funkcji, zwłaszcza w sytuacjach, gdy dysponuje się dużymi zbiorami danych.
W porównaniu do tradycyjnego spadku gradientowego (ang. gradient descent), który oblicza gradient sumaryczny na całym zbiorze, wariant stochastyczny wprowadza pewien element losowości, co pozwala uniknąć utknięcia w lokalnych minimach i sprzyja znalezieniu lepszego rozwiązania globalnego. Metoda jest szeroko stosowana w praktyce, a jej efektywność może być dalej poprawiona poprzez techniki takie jak dostosowywanie tempa uczenia (learning rate), dozowanie momentum czy mini-batch SGD, gdzie wagi aktualizowane są na podzbiorach danych o niewielkiej, stałej wielkości.