Regularyzacja: dlaczego pomnożyć przez 1/2 metra?


10

W notatkach z 3 wykładów z kursu Coursera Machine Learning Andrew Ng do funkcji kosztów dodawany jest termin w celu wdrożenia regularyzacji:

J+(θ)=J(θ)+λ2mj=1nθj2

Notatki z wykładu mówią:

Możemy również uregulować wszystkie nasze parametry theta w jednym podsumowaniu:

minθ 12m [i=1m(hθ(x(i))y(i))2+λ j=1nθj2]

12m stosuje się później do terminu regularyzacji sieci neuronowych :

Przypomnijmy, że funkcja kosztu regulowanej regresji logistycznej wynosiła:

J(θ)=1mi=1m[y(i) log(hθ(x(i)))+(1y(i)) log(1hθ(x(i)))]+λ2mj=1nθj2

W przypadku sieci neuronowych będzie to nieco bardziej skomplikowane:

J(Θ)=1mi=1mk=1K[yk(i)log((hΘ(x(i)))k)+(1yk(i))log(1(hΘ(x(i)))k)]+λ2ml=1L1i=1slj=1sl+1(Θj,i(l))2
  • Dlaczego używana jest tutaj stała połowa? Czyli jest on anulowany w pochodnej ?J
  • Dlaczego podział według przykładów szkoleniowych? Jak ilość przykładów treningu wpływa na różne rzeczy?m

czy jesteś pewien, że 1 / m jest na regularyzacji, a nie na J (theta) AFAIK @DikranMarsupial przyjmuje takie założenie ...... czy też sam J (theta) ma termin 1 / m?
seanv507

To założenie jest niepoprawne - stosuje się zarówno do funkcji kosztów nieregulowanych, jak i terminu regularyzacji. Zaktualizowałem pytanie, aby podać pełne formuły. 12m
Tom Hale,

Odpowiedzi:


5

Załóżmy, że masz 10 przykładów i nie dzielisz kosztów regularyzacji L2 przez liczbę przykładów m . Wtedy „dominacja” kosztu regularyzacji L2 w porównaniu z kosztem entropii krzyżowej wyniesie 10: 1, ponieważ każdy przykład szkolenia może przyczynić się do całkowitego kosztu proporcjonalnie do 1 / m = 1/10.

Jeśli masz więcej przykładów, powiedzmy 100, wówczas „dominacja” kosztu regularyzacji L2 będzie wynosić około 100: 1, więc musisz odpowiednio zmniejszyć λ , co jest niewygodne. Lepiej mieć stałą λ niezależnie od wielkości partii.

Aktualizacja: Aby wzmocnić ten argument, stworzyłem notatnik jupyter .


1
Hmm, ale czy nie jest celem współczynnika 1 / m przed funkcją kosztu, że każdy przykład szkolenia w równym stopniu przyczynia się do kosztu? Ponieważ już uśredniamy poszczególne koszty, nie powinno to być przyczyną dominacji terminu L2. Widzę jednak z twojej wielkiej symulacji, że współczynnik 1 / m również przed terminem L2 pomaga. Po prostu nie mam za tym intuicji (jeszcze).
Milania

Dlaczego jest to niewygodne? łatwo jest podzielić koszt L2 przez liczbę próbek. Myślę, że może sformułowałeś to w niewłaściwy sposób. Myślę, że chciałeś powiedzieć, że niewygodne jest ręczne skalowanie kosztu L2 za każdym razem, lepiej podzielić przez liczbę próbek w ramach wzoru, aby skalować je automatycznie.
SpaceMonkey

6

Funkcja utraty na zestawie treningowym J(θ) jest ogólnie sumą wzorców składających się z zestawu treningowego, więc gdy zestaw treningowy staje się większy, pierwszy termin skaluje się zasadniczo liniowo z m. Możemy zawęzić zakres wyszukiwania dla dobrej wartościλ całkiem sporo, jeśli najpierw podzielimy termin regularyzacji m aby zrównoważyć zależność J(θ) na m. Oczywiście 2 znajduje się w mianowniku, aby uprościć pochodne potrzebne do algorytmu optymalizacyjnego zastosowanego do określenia optymalnegoθ.


Dziękujemy za wyjaśnienie nieregularnego skalowania kosztów za pomocą m. Nadal nie rozumiem, jak się dzielęm pomoże singielowi λ wartość działa lepiej przy bardzo różnych wartościach m. Nieregulowany koszt jest już silnie uzależnionym, więc po co dbać o termin regularyzacji, od którego zależy n parametry, a nie mprzykłady? Czy to dlatego, że przy większej liczbie przykładów treningu wariancja zmniejszy się, biorąc pod uwagę tę samą liczbę parametrów?
Tom Hale

Funkcja straty w pytaniu jest średnią we wszystkich przykładach (tzn. Jest dzielona przez m), a nie sumą, więc tak naprawdę nie rozumiem, jak działa ta odpowiedź.
Denziloe

@Denziloe stosuje się to również do terminu regularyzacji.
Dikran Torbacz

2

Zastanawiałem się nad dokładnie tą samą rzeczą, biorąc udział w tym kursie, i ostatecznie trochę to zbadałem. Dam ci krótką odpowiedź tutaj, ale możesz przeczytać bardziej szczegółowy przegląd w poście na blogu, który o tym napisałem .

Uważam, że przynajmniej częściowo powodem tych współczynników skalowania jest to, że regularyzacja L² prawdopodobnie weszła w dziedzinę głębokiego uczenia się poprzez wprowadzenie powiązanej, ale nie identycznej koncepcji spadku masy ciała.

Współczynnik 0,5 jest wtedy dostępny, aby uzyskać ładny współczynnik tylko λ dla rozkładu masy w gradiencie, a skalowanie według m ... cóż, istnieje co najmniej 5 różnych motywacji, które znalazłem lub wymyśliłem:

  1. Efekt uboczny opadania gradientu wsadowego: gdy zamiast tego sformalizowana jest pojedyncza iteracja opadania gradientu w całym zestawie treningowym, w wyniku czego algorytm nazywany jest czasami spadkiem gradientu okresowego, współczynnik skalowania 1 / m, wprowadzany w celu uczynienia funkcji kosztu porównywalnym w zestawach danych o różnych rozmiarach jest automatycznie stosowany do terminu zaniku masy.
  2. Przeskaluj do wagi jednego przykładu: Zobacz interesującą intuicję Greza.
  3. Reprezentatywność zestawu treningowego: Rozsądne jest zmniejszanie regularyzacji wraz ze wzrostem rozmiaru zestawu treningowego, ponieważ statystycznie rośnie również jego reprezentatywność dla ogólnego rozkładu. Zasadniczo im więcej mamy danych, tym mniej jest potrzeby regularyzacji.
  4. Zapewnianie porównywalności λ: miejmy nadzieję, że ograniczając potrzebę zmiany λ, gdy zmienia się m, to skalowanie sprawia, że ​​sam λ jest porównywalny w różnych zestawach danych o różnych rozmiarach. To sprawia, że ​​λ jest bardziej reprezentatywnym estymatorem faktycznego stopnia regularyzacji wymaganego przez określony model konkretnego problemu uczenia się.
  5. Wartość empiryczna: wspaniały notebook grezpokazuje, że poprawia to wydajność w praktyce.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.