41

Rozumiem, co robi Gradient Descent. Zasadniczo próbuje przejść do lokalnego optymalnego rozwiązania, powoli przesuwając się w dół krzywej. Próbuję zrozumieć, jaka jest rzeczywista różnica między spadkiem gradientu planu a metodą Newtona?Jaka jest różnica między gradientem zejścia a spadkiem gradientu Newtona?

Z Wikipedii przeczytałem krótką linijkę "Metoda Newtona wykorzystuje informacje o krzywiznach, aby wybrać bardziej bezpośrednią trasę." Co to intuicyjnie oznacza?

+2

Krzywizna dotyczy tego, w jaki sposób metoda Newtona wykorzystuje pochodną drugiego rzędu fuction. Pochodzenie gradientowe jest zazwyczaj pierwszego rzędu. – akk

+1

Zobacz ten wykład od początku do końca: https://www.youtube.com/watch?v=sTCtkkqrY8A&index=15&list=PL3940DD956CDF0622 –

Odpowiedz

49

Przy lokalnym minimum (lub maksimum) x, pochodna funkcji docelowej f znika: f'(x) = 0 (przy założeniu wystarczającej gładkości)).

Pochylenie gradientowe próbuje znaleźć takie minimum x, korzystając z informacji z pierwszej pochodnej f: Po prostu następuje po najbardziej stromym zejście z bieżącego punktu. To jest jak rzucanie piłką w dół wykresu f, aż dojdzie do odpoczynku (przy jednoczesnym zaniedbaniu bezwładności).

metoda Newtona próbuje znaleźć punkt x spełniającego f'(x) = 0 poprzez zbliżenie f' z funkcją liniową g a następnie rozwiązywanie korzenia tej funkcji jawnie (nazywa się metodę korzeniowy rozpoznawczej Newtona). Korzeń g niekoniecznie jest korzeniem f', ale w wielu okolicznościach jest to dobre przypuszczenie (Wikipedia article on Newton's method for root finding ma więcej informacji na temat kryteriów zbieżności). Podczas aproksymowania f' metoda Newtona wykorzystuje f'' (krzywizna f). Oznacza to, że ma wyższe wymagania co do gładkości f, ale oznacza to również, że (przy użyciu większej ilości informacji) często zbiegają się szybciej.

+0

Zawsze widzę wzmianki o wyborze "najbardziej stromego" zejście'. Co to znaczy? Czy to jest najbardziej ujemna liczba 'f '(x)'? –

+0

@Chowza: jeśli Twoja domena jest wielowymiarowa, np. jeśli 'f' mapuje 2D na liczby rzeczywiste, to gradient' f' w dowolnym punkcie nie jest liczbą skalarną, ale wektorem. Powodem jest to, że "nachylenie" "f" w tym punkcie zależy od kierunku, w którym patrzysz. To jest jak stanie na szczycie góry: Jeśli spojrzysz na północ, góra może spaść bardzo ostro, ale do drugiej boki mogą być mniej strome. Wybór najbardziej stromego zjazdu oznacza więc wybór kierunku, który powoduje największą zmianę w funkcji celu. –

8

Mówiąc prosto, zejście gradientem, po prostu zrób mały krok w kierunku, w którym myślisz, że zero jest, a następnie przeliczyć ponownie; Metoda Newtona, idziesz tam do końca.

+0

Czy "cała droga" jest prawdziwa dla funkcji niekwadratowej? – bers

+1

Tak, w przypadku funkcji niekątnych przybliżasz tylko pierwszą pochodną do linii. To jest trochę zafalowane, ale myślę, że intuicja jest w porządku. – dashnick

+0

Ok, zgadzam się. Aż do "gdzie * myślisz * zero" jest niewątpliwie poprawne. – bers

Powiązane problemy