Przejdź do treści
coden

Spadek gradientu: jak uczy się model

Współczynnik uczenia, zygzak w wąskich dolinach, momentum, Adam, stochastyczny spadek w minipartiach i minima lokalne — z animacjami prawdziwych trajektorii.

24 minut Matěj Žalmánek 2026-10-15

Seria Podstawy AI Część 11 z 52
  1. Mapa sztucznej inteligencji: co jest czym i jak to do siebie pasuje
  2. Krótka historia sztucznej inteligencji: od Turinga do modeli językowych
  3. Dane, model, trening, inferencja: podstawowe pojęcia na jednym przykładzie
  4. Jak czytać zapis matematyczny: symbole, indeksy, sumy i kwantyfikatory
  5. Zbiory i relacje: klocki, z których składają się definicje w AI
  6. Funkcje i odwzorowania: dlaczego każdy model AI jest funkcją
  7. Logika i dowody: reguły, według których rozumuje AI
  8. Grafy i drzewa: struktura, na której opierają się przeszukiwanie i sieci neuronowe
  9. Algebra liniowa dla uczenia maszynowego: wektory, macierze i dlaczego AI głównie mnoży
  10. Pochodne, gradient i reguła łańcuchowa: jak model ustala, w którą stronę się uczyć
  11. Spadek gradientu: jak uczy się model
  12. Czym jest prawdopodobieństwo: od rzutu kostką do aksjomatów Kołmogorowa
  13. Prawdopodobieństwo warunkowe i twierdzenie Bayesa: jak zmienić ocenę, gdy dowiesz się czegoś nowego
  14. Zmienna losowa i dystrybuanta: jedna funkcja, która mówi o rozkładzie wszystko
  15. Funkcja gęstości i funkcja prawdopodobieństwa: dlaczego zmienna ciągła ma w punkcie prawdopodobieństwo zero
  16. Wartość oczekiwana, wariancja i kowariancja: gdzie leży rozkład, jak jest szeroki i co z czym się wiąże
  17. Przegląd rozkładów prawdopodobieństwa: Bernoulliego, dwumianowy, Poissona, jednostajny, normalny i wykładniczy
  18. Prawo wielkich liczb i centralne twierdzenie graniczne: dlaczego średnie zachowują się tak przewidywalnie
  19. Statystyka i estymacja parametrów: największa wiarygodność, MAP i przedziały ufności
  20. Teoria informacji: entropia, entropia krzyżowa i dywergencja KL — skąd się biorą funkcje straty
  21. Przeszukiwanie przestrzeni stanów: BFS, DFS, UCS i A* z animacjami
  22. Gry i przeciwnik: minimax, przycinanie alfa-beta i Monte Carlo tree search
  23. Spełnianie ograniczeń: backtracking, propagacja ograniczeń i AC-3 na sudoku i mapie czeskich krajów
  24. Logika i systemy z bazą wiedzy: wnioskowanie w przód i wstecz, rezolucja i systemy ekspertowe
  25. Planowanie: STRIPS, świat klocków, heurystyki z relaksacji i planowanie w agentach AI
  26. Przeszukiwanie lokalne i symulowane wyżarzanie: komiwojażer przez czeskie miasta wojewódzkie
  27. Algorytmy genetyczne: populacja, krzyżowanie, mutacja i selekcja na plecaku na wycieczkę
  28. Strategie ewolucyjne i programowanie genetyczne: od reguły jednej piątej do prawa Keplera
  29. Optymalizacja kolonią mrówek: jak ślad feromonowy znajduje krótką drogę
  30. Optymalizacja rojem cząstek: bezwładność, własne doświadczenie i doświadczenie roju
  31. Neuroewolucja: ewolucja wag i kształtu sieci neuronowych oraz algorytm NEAT
  32. Zbiory rozmyte i funkcje przynależności: jak zapisać „trochę ciepło”
  33. Logika rozmyta a prawdopodobieństwo: dlaczego „trochę ciepło” nie znaczy „prawdopodobnie ciepło”
  34. Logika rozmyta: t-normy, implikacje i reguły JEŻELI–TO
  35. Sterowanie rozmyte: Mamdani i Sugeno od wentylatora po wahadło na wózku
  36. Klasteryzacja rozmyta: algorytm fuzzy c-means i punkty między skupieniami
  37. Systemy neuro-rozmyte (ANFIS): reguły rozmyte, które uczą się z danych
  38. Łańcuchy Markowa: macierz przejścia, rozkład stacjonarny i PageRank
  39. Ukryte modele Markowa: algorytm Viterbiego i nieuczciwe kasyno
  40. Sieci bayesowskie: dlaczego trawa jest mokra i co z tego wynika dla zraszacza
  41. Filtr Kalmana: jak z niedokładnych pomiarów oszacować, gdzie jest samochód i jak szybko jedzie
  42. Rodzaje uczenia maszynowego: nadzorowane, nienadzorowane, półnadzorowane i inne
  43. Prompty, kontekst i RAG: jak dać modelowi właściwe informacje
  44. Wariacyjne autoenkodery (VAE): nowe obrazki z ciągłej przestrzeni latentnej
  45. Generatywne sieci przeciwstawne (GAN): fałszerz kontra detektyw
  46. Modele dyfuzyjne: jak z czystego szumu powstaje obraz
  47. Procesy decyzyjne Markowa: stany, akcje, nagrody i równania Bellmana
  48. Q-learning i DQN: uczenie się wartości akcji od tabeli po sieć neuronową
  49. Policy gradient i PPO: uczenie się bezpośrednio polityki
  50. Jak działa agent AI: model językowy w pętli z narzędziami
  51. Programowanie z agentami AI: zadanie, testy i kontrola
  52. Ocena i bezpieczeństwo systemów AI: jak mierzyć i jak pilnować

Pełny program serii Gotowe: 52 z 83 tematów

Czego się dowiesz
  • Jak działa spadek gradientu i dlaczego współczynnik uczenia ma największe znaczenie.
  • Dlaczego zwykły spadek w wąskiej dolinie idzie zygzakiem i jak rozwiązują to momentum i Adam.
  • Dlaczego sieci uczą się na małych losowych partiach i co oznaczają minima lokalne i punkty siodłowe.

Warto wiedzieć wcześniej: Pochodne, gradient i reguła łańcuchowa: jak model ustala, w którą stronę się uczyć

W poprzednich częściach przygotowaliśmy wszystko, co potrzebne: model to funkcja z parametrami, funkcja straty to krajobraz nad przestrzenią parametrów, a gradient wskazuje najbardziej stromy kierunek pod górę. Teraz połączymy to w algorytm, którym uczy się niemal każda sieć neuronowa na świecie — spadek gradientu. Jego idea mieści się w jednym zdaniu, a jego szczegóły decydują o tym, czy model nauczy się w godzinę, w tydzień, czy wcale.

1. Idea: z góry we mgle

Definicja — spadek gradientu

Dla funkcji straty J(θ) wybieramy początkowe parametry θ0 i współczynnik uczenia η > 0 i powtarzamy

θt+1 = θt − η ∇J(θt),

dopóki strata wyraźnie się poprawia.

Mówiąc prościej

Stoisz w gęstej mgle na wzgórzu i chcesz zejść do doliny. Nic nie widzisz, tylko stopami czujesz nachylenie. Robisz krok tam, gdzie teren opada najbardziej, i znów się rozglądasz. Gradient to właśnie to nachylenie, współczynnik uczenia to długość kroku. Nic więcej w tym nie ma.

2. Współczynnik uczenia: jak długi krok

Długość kroku to najważniejszy wybór w całym algorytmie. Pokażemy to na najprostszym krajobrazie, paraboli J(x) = x2, ze startem w x = 4. Pochodna to 2x, więc każdy krok wykonuje x ← x − η · 2x = (1 − 2η)x. Dwanaście kroków dla czterech różnych współczynników uczenia:

parametr x (bez jednostki) strata f(x) (bez jednostki) η = 0,1 — wolno
parametr x (bez jednostki) strata f(x) (bez jednostki) η = 0,4 — szybko
parametr x (bez jednostki) strata f(x) (bez jednostki) η = 0,9 — oscyluje
parametr x (bez jednostki) strata f(x) (bez jednostki) η = 1,05 — rozbiega się
Dwanaście kroków po paraboli x² dla czterech współczynników uczenia
  • η = 0,1 — każdy krok skraca odległość od minimum tylko o jedną piątą. Po dwunastu krokach kulka jest dopiero w x ≈ 0,27.
  • η = 0,4 — każdy krok skraca ją pięciokrotnie; po kilku krokach kulka jest praktycznie na dnie.
  • η = 0,9 — krok jest tak długi, że kulka przeskakuje na drugą stronę. Mimo to się zbliża, bo skacze po coraz krótszych łukach.
  • η = 1,05 — za każdym razem przeskakuje dalej, niż była: zamiast w dół leci na zewnątrz i po dwunastu krokach jest w x ≈ 12,55. Uczenie rozbiega się.
Twierdzenie — kiedy spadek na paraboli jest zbieżny

Dla J(x) = x2 jest xt = (1 − 2η)t x0, więc spadek jest zbieżny wtedy i tylko wtedy, gdy |1 − 2η| < 1, czyli 0 < η < 1. Najszybciej dla η = 0,5 — wtedy trafia do minimum jednym krokiem.

Mówiąc prościej

Mały krok jest bezpieczny, ale powolny. Duży krok jest szybki, dopóki nie przestrzeli. Zbyt duży krok psuje uczenie: błąd zamiast maleć rośnie, aż staje się nieskończony.

3. Wąskie doliny i zygzak

Prawdziwe krajobrazy to nie okrągłe misy. Zwykle są to długie, wąskie doliny — w jednym kierunku strome, w drugim prawie płaskie. Weźmy J(x, y) = x2/2 + 10y2, w kierunku y dwudziestokrotnie bardziej stromą. Zwykły spadek ma tu problem: współczynnik uczenia musi być mały ze względu na stromy kierunek (inaczej w y by się rozbiegał), a przy tak małym kroku w płaskim kierunku x ledwo się porusza. Do tego w kierunku y ciągle przeskakuje z jednej strony na drugą:

parametr x (bez jednostki) parametr y (bez jednostki)
Trzy metody w wąskiej dolinie: ile kroków do straty poniżej 0,01 spadek gradientu: 36 krokówmomentum: 9 krokówAdam: 9 kroków

Każda metoda ma swój najlepszy współczynnik uczenia, znaleziony metodą prób. Mimo to zwykły spadek potrzebuje 36 kroków i idzie zygzakiem, podczas gdy momentum i Adam są na dole po 9. Dlaczego, pokażą następne dwa rozdziały.

4. Momentum: kula z bezwładnością

Definicja — spadek z momentum

vt+1 = β vt − η ∇J(θt),   θt+1 = θt + vt+1,

gdzie v to „prędkość”, a β ∈ [0, 1) mówi, ile z niej zostaje na następny krok (typowo 0,9; w naszej dolinie najlepiej 0,6).

Mówiąc prościej

Zamiast ostrożnego piechura — ciężka kula. Tam, gdzie gradient wskazuje ciągle w tę samą stronę (wzdłuż doliny), kula nabiera prędkości. Tam, gdzie kierunek się zmienia (w poprzek doliny), ruchy tam i z powrotem wzajemnie się znoszą. Zygzak wygasa, a kula rozpędza się w dół.

5. Adam: własny krok dla każdego parametru

Definicja — Adam (Kingma i Ba, 2014)

m ← β1m + (1 − β1)g,   s ← β2s + (1 − β2)g2,   θ ← θ − η m̂ / (√ŝ + ε),

gdzie g = ∇J(θ), wszystkie operacje są wykonywane po składowych, a m̂, ŝ to m, s z korektą początkowego obciążenia (podzielone przez 1 − βt). Zwykłe wartości: β1 = 0,9, β2 = 0,999.

Mówiąc prościej

Adam to momentum, które dodatkowo dla każdego parametru pamięta, jak duże gradienty w nim zwykle występują, i dzieli przez nie krok. W stromym kierunku robi więc krótsze kroki, w płaskim dłuższe — jakby dolina rozciągnęła się w okrągłą misę. Dlatego idzie do celu niemal prosto (na rysunku tylko na końcu trochę go mija, bo wciąż niesie bezwładność) i dlatego jest dziś domyślnym wyborem do trenowania sieci neuronowych.

6. Stochastyczny spadek: uczenie partiami

Definicja — stochastyczny spadek gradientu (SGD)

Jeśli strata jest średnią po danych, J(θ) = (1/n) ∑i Li(θ), SGD zastępuje pełny gradient średnią po losowej minipartii B ⊂ {1, …, n}: g = (1/|B|) ∑i ∈ B ∇Li(θ). Przejście przez wszystkie dane nazywa się epoką.

Mówiąc prościej

Obliczenie gradientu po miliardzie przykładów jest kosztowne. Wystarczy spojrzeć na kilka losowych i wziąć ich średnią: oszacowanie nachylenia jest trochę zaszumione, ale kosztuje ułamek pracy. Za cenę jednego dokładnego kroku robisz setki przybliżonych.

Na regresji liniowej z 40 punktami porównamy pełny spadek (gradient po wszystkich 40 punktach) z SGD w partiach po 4 punkty:

0.10.010.001 krok (iteracja) strata MSE (skala log.)
Strata w ciągu 60 kroków (oś logarytmiczna) pełny spadek SGD, partie po 4

Po 60 krokach pełny spadek ma stratę 0,0017, a SGD 0,0027 — krzywa SGD jest wyboista, ale niemal równie nisko. Tyle że każdy krok SGD przeszedł tylko przez 4 punkty zamiast 40, czyli dziesięć razy mniej pracy. Przy prawdziwych danych z milionami przykładów ta różnica jest decydująca. A szum ma też zaletę: pomaga wyskoczyć z płytkich dołków.

7. Minima lokalne i punkty siodłowe

Spadek gradientu znajduje dno tej doliny, w której zaczął. Funkcja wypukła ma tylko jedno dno, przy niewypukłej zależy to od startu. Funkcja x4 − 3x2 + x z części o funkcjach ma dwa minima:

minimum lokalne minimum globalne parametr x (bez jednostki) strata f(x) (bez jednostki)
Ten sam algorytm, inny start, inne dno

Kulka, która startuje w x = 2, kończy w minimum lokalnym przy x ≈ 1,13 z wartością ≈ −1,07. Kulka z x = −2 znajduje minimum globalne przy x ≈ −1,30 z wartością ≈ −3,51. W wysokich wymiarach sieci neuronowych okazuje się, że złe minima lokalne są rzadsze, niż można by się spodziewać — większym kłopotem bywają punkty siodłowe, miejsca, gdzie gradient jest zerowy, ale w jednym kierunku krajobraz idzie w górę, a w innym w dół. Szum SGD i momentum pomagają się z nich zsunąć.

8. Jak to się robi w praktyce

  • Adam albo SGD z momentum — dwa najczęstsze wybory. Adam działa dobrze od razu, SGD z momentum bywa po starannym dostrojeniu odrobinę lepszy.
  • Harmonogram współczynnika uczenia — na początku powolny rozbieg (warmup), potem stopniowe zmniejszanie. Duże kroki przydają się daleko od celu, małe blisko niego.
  • Rozmiar partii — typowo od 32 do tysięcy przykładów; ogranicza go pamięć karty graficznej.
  • Epoki i wczesne zatrzymanie — dane przechodzi się wielokrotnie, a trening zatrzymuje się, gdy przestaje się poprawiać błąd na danych, których model nie widział.
  • Normalizacja danych — gdy wejścia mają podobny zakres, krajobraz jest bardziej okrągły, a spadek łatwiejszy.

9. Podsumowanie

  • Spadek gradientu powtarza θ ← θ − η∇J(θ): krok przeciw gradientowi.
  • Współczynnik uczenia decyduje: mały jest powolny, duży oscyluje, zbyt duży się rozbiega.
  • W wąskich dolinach zwykły spadek idzie zygzakiem; momentum dodaje bezwładność, Adam własny krok dla każdego parametru.
  • SGD liczy gradient z małych partii — szumi, ale każdy krok jest wielokrotnie tańszy.
  • Spadek znajduje dno doliny, w której zaczął; w niewypukłych krajobrazach liczy się start.

Tą częścią kończy się matematyka, której potrzebujesz, by zrozumieć uczenie. Kolejne moduły serii — prawdopodobieństwo, uczenie maszynowe i sieci neuronowe — na niej się opierają.

Masz inne zdanie? Napisz na support@coden-app.com.

Agent na twoim komputerze, sterowany z telefonu