Jak modele naprawdę się uczą — od zwykłego spadku gradientu po Adama
Akumulacja gradientu symuluje większy wsad, gdy pamięć jest ograniczona. Zamiast wykonywać krok po każdym mikro-wsadzie, dodajesz gradienty z kilku mikro-wsadów, a potem wykonujesz jeden krok optymalizatora.
Efektywny rozmiar wsadu to rozmiar mikro-wsadu razy liczba kroków akumulacji. Dzięki temu małe GPU może zachowywać się bardziej tak, jakby trenowało na większym wsadzie.
Beczka na deszczówkę oddaje ten pomysł. Mała miarka nie podleje od razu całego ogrodu, więc wlewasz kilka miarek do beczki, a potem korzystasz z ilości zebranej w beczce. Akumulacja gradientu zbiera kilka małych wkładów gradientowych przed jedną aktualizacją. Poniższy rysunek to dosłownie ten proces: każdy nowy człon to jedna miarka, a rosnące słupki to beczka wypełniająca się do swojej sumy. Akumulacja gradientu to suma częściowa gradientów, którą wypłacasz jako pojedynczy krok.