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:
Notatki z wykładu mówią:
Możemy również uregulować wszystkie nasze parametry theta w jednym podsumowaniu:
stosuje się później do terminu regularyzacji sieci neuronowych :
Przypomnijmy, że funkcja kosztu regulowanej regresji logistycznej wynosiła:
W przypadku sieci neuronowych będzie to nieco bardziej skomplikowane:
- Dlaczego używana jest tutaj stała połowa? Czyli jest on anulowany w pochodnej ?
- Dlaczego podział według przykładów szkoleniowych? Jak ilość przykładów treningu wpływa na różne rzeczy?
regularization
Tom Hale
źródło
źródło
Odpowiedzi:
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 .
źródło
Funkcja utraty na zestawie treningowymjot( θ ) 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ść jot( θ ) na m . Oczywiście 2 znajduje się w mianowniku, aby uprościć pochodne potrzebne do algorytmu optymalizacyjnego zastosowanego do określenia optymalnegoθ .
źródło
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:
grez
pokazuje, że poprawia to wydajność w praktyce.źródło
Byłem również zdezorientowany, ale potem w wykładzie dla deeplearning.ai Andrew sugeruje, że jest to tylko stała skalowania:
http://www.youtube.com/watch?v=6g0t3Phly2M&t=2m50s
Być może istnieje głębszy powód używania 1/2 m, ale podejrzewam, że jest to po prostu hiperparametr.
źródło