Załóżmy, że jesteśmy w następującej sytuacji. Mamy pewne dane , gdzie każdy może być liczbą lub wektorem, i chcielibyśmy wyznaczyć funkcję która aproksymuje zależność , w tym sensie, że najmniejsze kwadraty błąd:{xja,yja}xjafafa(xja) ≈yja
12)∑ja(yja- f(xja))2)
jest mały.
Teraz pojawia się pytanie, czym chcielibyśmy być domeną . Zdegenerowany wybór dla domeny to tylko punkty w naszych danych szkoleniowych. W takim przypadku możemy po prostu zdefiniować , obejmując całą pożądaną domenę, i gotowe. Okrągłym sposobem na uzyskanie tej odpowiedzi jest zejście gradientowe z tą dyskretną przestrzenią jako domeną. To wymaga nieco zmiany punktu widzenia. Spójrzmy na stratę jako funkcję punktu prawdziwego i prognozy (na razie nie jest funkcją, ale tylko wartością prognozy)fafa(xja) = yy fafa
L ( f; y) =12)( y- f)2)
a następnie weź gradient w stosunku do prognozy
∇faL ( f; y) = f- y
Następnie aktualizacja gradientu, zaczynając od wartości początkowej wynosiy0
y1=y0-∇fa(y0, y) =y0- (y0- y) = y
Dzięki tej konfiguracji odzyskujemy nasze idealne prognozy w kroku gradientu, co jest miłe!
Błąd tu jest, oczywiście, że chcemy należy określić na wiele więcej niż tylko nasze punkty danych szkolenia. Aby to zrobić, musimy zrobić kilka ustępstw, ponieważ nie jesteśmy w stanie ocenić funkcji straty ani jej gradientu w żadnym innym punkcie niż nasz zestaw danych treningowych. fa
Wielka idea jest słabo przybliżonej . ∇ L.
Start
z początkowym domysłem przy , prawie zawsze prostą stałą funkcją , jest to zdefiniowane wszędzie. Teraz wygeneruj nowy działający zestaw danych, oceniając gradient funkcji utraty na danych treningowych, używając wstępnej domysły dla :ff(x)=f0f
W={xi,f0−y}
Now approximate
∇L montując słabą uczący się . Powiedzieć otrzymujemy przybliżenie . Uzyskaliśmy rozszerzenie danych w całej domenie w postaci , chociaż straciliśmy precyzję w punktach treningowych, ponieważ pasujemy do małego ucznia.WF≈∇LWF(X)
Finally
, użyj zamiast w aktualizacji gradientu w całej domenie:F∇Lf0
f1(x)=f0(x)−F(x)
się z , nowego przybliżenia , nieco lepszego niż . Zacznij od i iteruj, aż będziesz zadowolony.f1ff0f1
Mamy nadzieję, że widać, że naprawdę ważne jest przybliżenie gradientu straty. W przypadku minimalizacji metodą najmniejszych kwadratów przyjmuje to postać surowych reszt, ale w bardziej wyrafinowanych przypadkach nie. Maszyna wciąż jednak obowiązuje. Tak długo, jak można zbudować algorytm do obliczania utraty i gradientu strat na danych treningowych, możemy użyć tego algorytmu do przybliżenia funkcji minimalizującej tę stratę.