Śledzenie nachylenia
Załóżmy, że błąd modelu to krajobraz z wzgórzami i dolinami, gdzie współrzędne poziome są parametrami, a wysokość reprezentuje funkcję straty. Gradient wskazuje na najsteeperze wzrost, dlatego spadek gradientowy porusza się w przeciwnym kierunku:
θ = θ − η · ∇J(θ) θ = parametry, η = stopa uczenia, ∇J(θ) = gradient funkcji straty Ustawienie η za wysokie prowadzi do przeskoku doliny, co może spowodować skok lub rozbieżność; ustawienie za niskie sprawia, że trening porusza się bardzo wolno. Obliczanie pełnego gradientu na całym zestawie danych jest wolne, dlatego praktyka używa spadku gradientu mini-batch — szacowania gradientu na podzbiorze losowym (często 32-512 przykładów) na każdym kroku. To jest szybkie i dodaje pomocniczą szum, który może wyrwać optymalizator z nędznych regionów.
θ = θ − η · ∇J(θ) θ = parameters, η = learning rate, ∇J(θ) = gradient of loss
Momentum, RMSprop i Adam
Prosty SGD ma trudności z długimi, szmalczystymi dolinami, przeskakiwając po ścianach i krawędziach podłogi. Momentum akumuluje prędkość wykładniczo ważoną na podstawie poprzednich gradientów (v = β·v + ∇J(θ), zazwyczaj β≈0,9), co prowadzi do powolnego wzrostu prędkości i anulowania się oscylacji. RMSprop z kolei dzieli każdy krok przez średnie kwadratowe pierwiastkowane ostatnich wartości gradientów, co daje każdemu parametrowi własny adaptatywny stopień uczenia — tłumaczy noisowe parametry i wzmocnia ciche. Adam łączy oba te podejścia: pierwszy moment podobny do momentum plus drugi moment podobny do RMSprop, z korekcją białego przekroju dla początkowych kroków. Z odpowiednimi domyślnymi parametrami (β₁=0,9, β₂=0,999, ε=1e-8) często trenuje się w sposób wiarygodny z minimalnymi dostosowaniami, co jest powodem, dla którego stało się standardowym robakiem w uczeniu głębokim — mimo że dobrze dostosowany SGD z momentum czasami generalizuje lepiej, szczególnie w dziedzinie wizji komputerowej.
Saddle points, a nie lokalne minimum, są prawdziwym przeszkodą
Zwykle się myli, że spadanie gradientu znajduje jedno globalne minimum — w praktyce, zwłaszcza dla sieci neuronowych, znajduje dobre enough minimum, co jest zwykle wystarczające. Drugie pomyłka polega na tym, że lokalne minimum stanowią główną zagrożenie; w rzeczywistych, bardzo wielodimensionalnych krajobrazach strat, prawdziwe lokalne minimum są statystycznie rzadkie, a saddle points — gdzie gradient się zeruje, ale powierzchnia krzywej jest w niektórych kierunkach w górę i w innych w dół — stanowią większą przeszkodę, ponieważ proste spadanie gradientu może tam zatrzymać się. Przyspieszenie i adaptacyjne metody pomagają przeniknąć przez te obszary.
Często zadawane pytania
Jak jest gradient descent w prostych słowach?
Gradient descent to iteracyjny metoda, która powtarzająco przesuwa parametry modelu w kierunku, który najbardziej zmniejsza funkcję błędu (funkcję straty). Przykładowo, poprzez śledzenie spadku tej funkcji, ostatecznie osiąga konfigurację, która prowadzi do dokładnych przewidywań.
Co na prawdę robi momentum?
Momentum akumuluje eksponencjalnie wagę średniej z poprzednich gradientów, co sprawia, że aktualizacja zdobywa prędkość w kierunku konserwatywnych zmian i łagodzi oscylacje pośród niskich dolnych valley. To zazwyczaj przyspiesza zbieżność i pomaga optimizatorowi płynąć przez płaskie obszary powierzchni straty.
Dlaczego Adam jest tak popularny?
Adam łączy smaczną kierunkowość momentum z adaptacyjną skali dla każdego parametru w RMSprop, a także poprawę biaścioru na początku. Zazwyczaj trenuje się wiarygodnie z minimalnymi dostosowaniami, co jest powodem, dlaczego stało się on domyślnym roboczym narzędziem poza uczeniem głębokim — choć dobrze dostosowany SGD z momentum czasami lepiej generalizuje.
Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Gradient Descent Visualiser i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.
▶ Otwórz symulację Gradient Descent Visualiser