Gradientní sestup je základní optimalizační algoritmus strojového učení. Hledá takové nastavení parametrů modelu, které minimalizuje ztrátovou funkci, a postupuje přitom iterativně: v aktuálním bodě spočítá gradient – vektor parciálních derivací ztráty podle všech parametrů, ukazující směr nejrychlejšího růstu – a posune parametry o malý krok v opačném směru. Délku kroku určuje rychlost učení. Počítat gradient přes celý dataset je u velkých korpusů nemyslitelné, proto se v praxi používá stochastická varianta, která gradient odhaduje z náhodné minidávky vzorků. Vzniklý šum sice trajektorii rozkmitá, ale zároveň pomáhá uniknout z plochých a nekvalitních oblastí. Nadstavbové optimalizátory přidávají moment, jenž tlumí kmitání napříč úzkými žleby, a adaptivní přeškálování kroku pro jednotlivé parametry, jak to dělá Adam. U hlubokých sítí není ztrátová plocha konvexní, takže neexistuje záruka nalezení globálního minima; empiricky se však ukazuje, že ve velmi mnoharozměrném prostoru vede většina dosažených minim k podobně dobrým výsledkům. Gradienty pro všechny vrstvy poskytuje zpětné šíření chyby.
Představte si, že stojíte v husté mlze na kopcovité pláni a chcete se dostat do nejnižšího bodu. Nevidíte na krok, ale nohama nahmatáte, kterým směrem se zem svažuje nejvíc. Uděláte krok tudy a ohmatání zopakujete. Krok nesmí být příliš malý, jinak tam budete do večera, ani příliš velký, jinak přeskočíte údolí a začnete se odrážet ze svahu na svah. A protože ohmatat celou pláň nejde, spolehnete se na sondu jen kolem svých nohou – trochu se proto zamotáte, ale i to má výhodu: nezapadnete v první mělké kaluži, kterou potkáte.