Ukończyłem kurs uczenia maszynowego Andrew Nga około rok temu, a teraz piszę moje badanie matematyki w szkole średniej na temat działania regresji logistycznej i technik optymalizacji wydajności. Jedną z tych technik jest oczywiście regularyzacja.
Celem regularyzacji jest zapobieganie nadmiernemu dopasowaniu poprzez rozszerzenie funkcji kosztów o cel prostoty modelu. Możemy to osiągnąć poprzez karanie wielkości wag przez dodanie do funkcji kosztu każdego z kwadratów wag, pomnożonego przez jakiś parametr regularyzacji.
Teraz algorytm uczenia maszynowego będzie dążył do zmniejszenia wielkości ciężarów przy jednoczesnym zachowaniu dokładności zestawu treningowego. Chodzi o to, że osiągniemy punkt pośrodku, w którym możemy stworzyć model, który uogólnia dane i nie próbuje dopasować się do całego szumu stochastycznego, ponieważ jest mniej skomplikowany.
Mój błąd jest dlaczego mamy karać rozmiar z ciężarami? Dlaczego większe ciężary tworzą bardziej złożone modele, a mniejsze ciężary tworzą modele prostsze / bardziej płynne? Andrew Ng twierdzi w swoim wykładzie, że wyjaśnienie jest trudne do nauczenia, ale chyba szukam teraz tego wyjaśnienia.
Prof. Ng rzeczywiście podał przykład, w jaki sposób nowa funkcja kosztu może powodować, że wagi cech (tj. X ^ 3 i x ^ 4) dążą do zera, tak że stopień modelu jest zmniejszony, ale to nie tworzy pełnego wyjaśnienie.
Moją intuicją jest to, że mniejsze wagi będą bardziej „akceptowalne” w przypadku cech z wyższymi wykładnikami niż te z mniejszymi wykładnikami (ponieważ cechy o małych wagach są jak podstawa funkcji). Mniejsze ciężary oznaczają mniejsze „wkłady” w funkcje o wysokim zamówieniu. Ale ta intuicja nie jest bardzo konkretna.
Odpowiedzi:
Jeśli korzystasz z regularyzacji , nie tylko minimalizujesz błąd w próbie, ale .O u t O fS.a m p l e Er r o r ≤ In S.a m p l e Er r o r + Mo de l C.o m p l e x i t yP.e n a l t y
Dokładniej, dla hipotezy , gdzie jest jakimś parametrem, zwykle , jest liczbą przykładów w zestawie danych, a to pewna kara zależna od wag , . Jest to znane jako błąd rozszerzony . Teraz możesz zminimalizować powyższą funkcję tylko wtedy, gdy ciężary są raczej małe.h∈Hλλ∈(0,1)mΩwΩ=wTwjota u g( h ( x ) , y, λ , Ω ) = J( h ( x ) , y) + λ2 mΩ h ∈ H. λ λ ∈ ( 0 , 1 ) m Ω w Ω = wT.w
Oto kod R do zabawy
Zamiast karać całą przestrzeń hipotezy , kaŜdą hipotezę kaŜemy indywidualnie. Czasami odnosimy się do hipotezy przez wektor wagowy .h h wH. h h w
Jeśli chodzi o to, dlaczego małe wagi idą w parze z niską złożonością modelu, spójrzmy na następującą hipotezę: . W sumie otrzymaliśmy trzy parametry aktywnej masy . Teraz na bardzo małą wartość, . Zmniejsza to złożoność modelu do: . Zamiast trzech aktywnych parametrów masy mamy tylko dwa pozostałe.w 1 , … , w 3 w 3 w 3 = 0 h 1 ( x ) = x 1 × w 1 + x 2 × w 2h1( x ) = x1× w1+ x2)× w2)+ x3)× w3) w1, … , W3) w3) w3)= 0 h1( x ) = x1× w1+ x2)× w2)
źródło
Nie jestem pewien, czy naprawdę wiem, o czym mówię, ale spróbuję. To nie tyle posiadanie małych ciężarów, które zapobiegają nadmiernemu dopasowaniu (tak myślę), to bardziej fakt, że bardziej regularne regulowanie zmniejsza przestrzeń modelu. W rzeczywistości możesz uregulować około 10000000, jeśli chcesz, biorąc normę L2 swoich wartości X minus wektor 10000000s. Zmniejszyłoby to również nadmierne dopasowanie (oczywiście powinieneś mieć trochę uzasadnienia, aby to zrobić (np. Twoje wartości Y są 10000000 razy większe niż suma twoich wartości X, ale tak naprawdę nikt tego nie robi, ponieważ możesz po prostu przeskalować dane).
Odchylenie i wariancja są funkcją złożoności modelu. Jest to związane z teorią VC, więc spójrz na to. Im większa przestrzeń możliwych modeli (tj. Wartości, które wszystkie parametry mogą przyjąć w zasadzie), tym bardziej prawdopodobne jest, że model się dopasuje. Jeśli Twój model może zrobić wszystko, od bycia linią prostą do poruszania się we wszystkich kierunkach, jak fala sinusoidalna, która może również poruszać się w górę i w dół, o wiele bardziej prawdopodobne jest wykrywanie i modelowanie przypadkowych zaburzeń w danych, które nie są wynikiem sygnał bazowy, ale wynik po prostu szczęścia w tym zbiorze danych (dlatego zdobycie większej ilości danych pomaga przeregulować, ale nie za słabo).
Podczas normalizacji zasadniczo zmniejszasz przestrzeń modelu. Nie musi to oznaczać, że bardziej płynne / spłaszczone funkcje mają większe odchylenie i mniejszą wariancję. Pomyśl o modelu liniowym, który jest nałożony na sinusoidę, która jest ograniczona, aby mieć naprawdę małe oscylacje amplitudowe, które w zasadzie nic nie robią (to w zasadzie rozmyta linia). Ta funkcja jest w pewnym sensie super perwersyjna, ale tylko nieco przewyższa regresję liniową. Powodem, dla którego gładsze / bardziej płaskie funkcje mają tendencję do większego odchylenia i mniejszej wariancji, jest to, że jako naukowiec danych zakładamy, że jeśli mamy ograniczoną przestrzeń próbki, wolelibyśmy maszyną okazjonalną zachować modele gładsze i prostsze i wyrzucić modele które poruszają się i oscylują w każdym miejscu. Rozsądne jest najpierw wyrzucenie kręconych modeli,
Regularyzacja, podobnie jak regresja kalenicy, zmniejsza przestrzeń modelu, ponieważ powoduje, że dalsza odległość od zera (lub dowolnej liczby) jest droższa. Dlatego gdy model ma do wyboru wzięcie pod uwagę niewielkich zakłóceń w danych, bardziej prawdopodobne jest, że nie będzie to możliwe, ponieważ (ogólnie) zwiększy to wartość parametru. Jeśli to zaburzenie jest spowodowane przypadkową szansą (tj. Jedna z twoich zmiennych x miała niewielką korelację losową z twoimi zmiennymi y), model nie weźmie tego pod uwagę w porównaniu z regresją nieregulowaną, ponieważ regresja nieregulowana nie wiąże się z żadnymi kosztami zwiększenie rozmiarów beta. Jeśli jednak to zaburzenie jest spowodowane rzeczywistym sygnałem, regaryzowana regresja najprawdopodobniej go ominie, dlatego ma on większe odchylenie (i dlaczego występuje kompromis odchylenia).
źródło
Historia:
Moja babcia chodzi, ale nie wspina się. Niektóre babcie tak robią. Jedna babcia była znana z wspinania się na Kilimandżaro .
Ten uśpiony wulkan jest duży. Jest 16 000 stóp powyżej podstawy. (Nie nienawidzę moich jednostek imperialnych). Czasami ma także lodowce.
Jeśli wspinasz się na rok, w którym nie ma lodowca, i dojdziesz do szczytu, czy jest to ten sam szczyt, jakby był lodowiec? Wysokość jest inna. Ścieżka, którą musisz obrać, jest inna. Co jeśli wejdziesz na szczyt, gdy grubość lodowca jest większa? Czy to czyni to bardziej osiągnięciem? Około 35 000 ludzi próbuje się wspinać każdego roku, ale tylko około 16 000 odnosi sukces.
Zastosowanie:
Więc wytłumaczyłbym mojej babci kontrolę wagi (czyli minimalizowanie złożoności modelu) w następujący sposób:
Babciu, twój mózg jest niesamowitym myślicielem, niezależnie od tego, czy go znasz. Gdybym zapytał, ilu z 16 000 osób, które uważają, że osiągnęli szczyt, rzeczywiście to zrobił, powiedziałbyś „wszyscy”.
Gdybym włożył czujniki do butów wszystkich 30 000 wspinaczy i zmierzył wysokość nad poziomem morza, to niektórzy z tych ludzi nie dostaliby się tak wysoko jak inni i mogliby się nie zakwalifikować. Kiedy to robię, przechodzę do stałego modelu - mówię, że jeśli wysokość nie jest równa jakimś percentylowi zmierzonych maksymalnych wysokości, to nie jest to szczyt. Niektórzy skaczą na górę. Niektórzy po prostu przekraczają linię i siadają.
Mógłbym dodać czujnik do szerokości i długości geograficznej i dopasować niektóre równania wyższego rzędu, a może mógłbym uzyskać lepsze dopasowanie i mieć więcej osób, może nawet dokładnie 45% wszystkich, którzy spróbują.
Powiedzmy, że następny rok będzie rokiem „wielkiego lodowca” lub roku „bez lodowca”, ponieważ jakiś wulkan naprawdę przekształca albedo ziemi. Jeśli wezmę mój złożony i wymagający model z tego roku i zastosuję go do ludzi, którzy wspinają się w przyszłym roku, model będzie miał dziwne wyniki. Może wszyscy „zdadzą”, a nawet będą zbyt wysoko, aby przejść. Może nikt nie przejdzie i pomyśli, że nikt nie ukończył wspinaczki. Zwłaszcza gdy model jest złożony, zwykle nie uogólnia się dobrze. Może dokładnie pasować do tegorocznych danych „szkoleniowych”, ale kiedy pojawiają się nowe dane, źle się zachowuje.
Dyskusja:
Gdy ograniczysz złożoność modelu, zazwyczaj możesz uzyskać lepszą generalizację bez nadmiernego dopasowania. Korzystanie z prostszych modeli, które są bardziej zbudowane w celu dostosowania do rzeczywistych odmian, zwykle daje lepsze wyniki, a wszystkie inne są równe.
Teraz masz ustaloną topologię sieci, więc mówisz „moja liczba parametrów jest stała” - nie mogę mieć zmienności złożoności modelu. Nonsens. Zmierz entropię w odważnikach. Kiedy entropia jest wyższa, oznacza to, że niektóre współczynniki mają znacznie większą „informatywność” niż inne. Jeśli masz bardzo niską entropię, oznacza to, że ogólnie współczynniki mają podobny poziom „informatywności”. Informatywność niekoniecznie jest dobrą rzeczą. W demokracji chcesz, aby wszyscy ludzie byli równi, a rzeczy takie jak George Orwell „bardziej równi od innych” są miarą awarii systemu. Jeśli nie masz ku temu dobrego powodu, chcesz, aby ciężary były do siebie bardzo podobne.
Osobiście: zamiast używać voodoo lub heurystyki, wolę takie „kryteria informacyjne”, ponieważ pozwalają mi uzyskać wiarygodne i spójne wyniki. AIC , AICc i BIC to niektóre typowe i przydatne punkty wyjścia. Powtarzanie analizy w celu ustalenia stabilności rozwiązania lub zakresu wyników kryteriów informacyjnych jest powszechnym podejściem. Można spojrzeć na umieszczenie pułapu na entropii w odważnikach.
źródło
Prosta intuicja jest następująca. Pamiętaj, że do regularyzacji funkcje powinny zostać znormalizowane, aby mieć około. ta sama skala.
Powiedzmy, że funkcja minimalizacji jest tylko sumą kwadratów błędów:
Teraz rozważ regularyzację, w tym przypadku LASSO. Funkcje, które należy zminimalizować, to wtedy
Dodanie dodatkowej funkcji powoduje teraz dodatkową karę: suma współczynników bezwzględnych staje się większa! Zmniejszenie SSE powinno przeważać nad dodatkową karą. Nie można już dodawać dodatkowych funkcji bez kosztów.
Połączenie standaryzacji funkcji i karania sumy współczynników bezwzględnych ogranicza przestrzeń wyszukiwania, co prowadzi do mniejszego przeregulowania.
Teraz LASSO:
dąży do zerowania współczynników, podczas gdy regresja kalenicy:
ma tendencję do proporcjonalnego zmniejszania współczynników. Można to postrzegać jako efekt uboczny rodzaju funkcji karającej. Poniższe zdjęcie pomaga w tym:
Funkcja kary regularyzacyjnej w praktyce daje „budżet” dla parametrów, jak pokazano powyżej w obszarze niebieskozielonym.
Zdjęcie pochodzi z https://onlinecourses.science.psu.edu/stat857/node/158
Podsumowując: regularyzacja penalizuje dodawanie dodatkowych parametrów, a w zależności od rodzaju regularyzacji zmniejszy wszystkie współczynniki (grzbiet) lub ustawi liczbę współczynników na 0, utrzymując pozostałe współczynniki, o ile budżet na to pozwala (lasso)
źródło
Dodając szum Guassian do wejścia, model uczenia się będzie zachowywał się jak regulator L2-kara.
Aby zobaczyć dlaczego, rozważ regresję liniową, w której do funkcji dodawany jest szum iid. Utrata będzie teraz funkcją błędów + udziału normy wagowej.
patrz wyprowadzenie: https://www.youtube.com/watch?v=qw4vtBYhLp0
źródło
Pamiętam, że podczas zajęć na uniwersytecie mój nauczyciel powiedział, że karanie dużych parametrów może zmniejszyć nadmierne dopasowanie, ponieważ zapobiega nadmiernemu obciążeniu modelu konkretnymi cechami danych, co powoduje nadmierne dopasowanie, ponieważ model zapamiętuje tylko niektóre specyficzne cechy danych i odnosi się do etykieta zamiast próbować nauczyć się ogólnych zasad.
źródło