W przeciwieństwie do innych artykułów, uważam, że wpis wikipedia na ten temat jest nieczytelny dla osoby niebędącej – osoba matką (jak ja).
Zrozumiałem podstawową ideę, że preferujesz modele z mniejszą liczbą reguł. Nie rozumiem, jak przejść od zestawu reguł do „wyniku regularyzacji”, którego można użyć do sortowania modeli od najmniejszego do najbardziej nadmiernego.
Czy możesz opisać prostą metodę regularyzacji ?
Interesuje mnie analiza statystycznych systemów handlu. Byłoby wspaniale, gdybyś mógł opisać, czy / jak mogę zastosować regularyzację do analizy dwóch następujących modeli predykcyjnych:
Model 1 – cena rośnie, gdy:
- exp_moving_avg ( price, period = 50)> exp_moving_avg (price, period = 200)
Model 2 – cena rośnie, gdy:
- price [n] < cena [n-1] 10 razy z rzędu
- exp_moving_avg (cena, okres = 200) rośnie
Ale Bardziej interesuje mnie zrozumienie, w jaki sposób robisz regularyzację. Jeśli więc znasz lepsze modele wyjaśniające to, zrób to.
Komentarze
- Przykładem jest regresja grzbietowa, która jest OLS z ograniczeniem sumy kwadratów współczynników. To wprowadzi odchylenie do modelu, ale zmniejszy wariancję współczynników, czasami znacznie. LASSO jest inną pokrewną metodą, ale stawia L1 ograniczenie wielkości współczynników. Ma tę zaletę, że pomija współczynniki. Jest to przydatne w przypadku p > n sytuacji Uregulowanie w pewnym sensie oznacza ” zmniejszenie ” model, aby uniknąć nadmiernego dopasowania (i zmniejszyć wariancję współczynników), co zwykle poprawia predykcyjną wydajność modelu '.
- @HairyBeast Należy umieść swój miły komentarz jako odpowiedź. Jeśli to możliwe, spróbuj dodać ilustracyjny przykład, aby OP mógł dowiedzieć się, jak przekłada się na dany problem.
- @HairyBeast, więc mogę powiedzieć, że regularyzacja jest tylko metodą realizacji idei kompromis między odchyleniami i zmiennością ?
- Ten film wideo okazał się bardzo pomocny, szczególnie w wizualizacji różnych form regularyzacji Lp: youtube. com / watch? v = sO4ZirJh9ds
- Regularyzacja służy do rozwiązania problemu nadmiernego dopasowania w wyuczonym modelu. Próbowałem wyjaśnić w prostym języku angielskim i wizualnie. Poniżej znajduje się link do artykułu medium.com/@vamsi149/…
Odpowiedź
Upraszczając, regularyzacja to dostrajanie lub wybieranie preferowanego poziomu złożoności modelu, aby modele lepiej przewidywały (generalizowały). Jeśli tego nie zrobisz, Twoje modele mogą być zbyt złożone i nadmiernie dopasowane lub zbyt proste i niedopasowane, co w obu przypadkach daje słabe prognozy.
Jeśli zastosujesz metodę najmniejszych kwadratów, dopasuj złożony model do małego zestawu danych szkoleniowych prawdopodobnie będziesz przesadzony, to jest najczęstsza sytuacja. Optymalna złożoność modelu zależy od rodzaju procesu, który modelujesz i jakości danych, więc nie ma a-priori poprawnej złożoności modelu.
Aby uregulować, potrzebujesz 2 rzeczy:
- Sposób testowania, jak dobre są twoje modele w prognozowaniu, na przykład za pomocą walidacji krzyżowej lub zestawu danych walidacyjnych nie można w tym celu użyć błędu dopasowania ).
- Parametr strojenia, który umożliwia zmianę złożoności lub gładkości modelu lub wybór modeli o różnej złożoności / gładkości.
Zasadniczo dostosowujesz parametr złożoności (lub zmieniasz model) i znajdujesz wartość, która daje najlepsze prognozy modelu.
Zwróć uwagę, że zoptymalizowany błąd regularyzacji nie będzie dokładnym oszacowaniem ogólnej prognozy błąd, więc po uregulowaniu w końcu będziesz musiał użyć dodatkowego zbioru danych do walidacji lub przeprowadzić dodatkową analizę statystyczną, aby uzyskać bezstronny błąd prognozy.
Alternatywą dla (krzyżowych) testów walidacyjnych jest użycie Bayesian Priors lub inne metody karania za złożoność lub brak płynności, ale wymagają one większego wyrafinowania statystycznego oraz znajomości problemu i cech modelu.
Komentarze
- +1 ode mnie. Podoba mi się, że ta odpowiedź zaczyna się od początku i jest tak łatwa do zrozumienia …
- Czy regularyzacja naprawdę jest kiedykolwiek używana do zmniejszenia niedopasowania? Z mojego doświadczenia wynika, że regularyzacja jest stosowana na modelu złożonym / wrażliwym, aby zmniejszyć złożoność / wrażliwość, ale nigdy na modelu prostym / niewrażliwym, aby zwiększyć złożoność / wrażliwość.
- Ta odpowiedź jest już dość stara, ale zakładam, że Toby miał na myśli to, że regularyzacja jest opartym na zasadach sposobem dopasowania modelu o odpowiedniej złożoności, biorąc pod uwagę ilość danych; jest to alternatywa zarówno dla wybrania a priori modelu ze zbyt małą liczbą parametrów (lub niewłaściwych), jak i dla wybrania modelu, który jest zbyt skomplikowany i zawiera nadmierne dopasowanie.
Odpowiedź
Załóżmy, że uczysz się poprzez empiryczną minimalizację ryzyka.
Dokładniej:
- masz swoją nieujemną funkcję straty $ L (\ text {wartość rzeczywista}, \ text {przewidywana wartość}) $, która charakteryzuje jak złe przewidywania są
- chcesz dopasować swój model w taki sposób, aby jego przewidywania minimalizowały funkcję średniej straty, obliczaną tylko na danych treningowych (jedynych posiadanych danych)
Następnie celem procesu uczenia się jest znalezienie $ \ text {Model} = \ text {argmin} \ sum L (\ text {faktyczna}, \ text {predicted} (\ text {Model})) $ (this nazywa się empiryczną minimalizacją ryzyka).
Ale jeśli nie masz wystarczającej ilości danych i jest ogromna liczba zmiennych w twoim modelu, bardzo prawdopodobne jest znalezienie takiego modelu, który nie tylko wyjaśnia wzorce ale także wyjaśnia losowy szum w danych. Efekt ten nazywa się nadmiernym dopasowaniem i prowadzi do pogorszenia zdolności generalizacji modelu.
Aby uniknąć nadmiernego dopasowania, do funkcji celu wprowadza się człon regularyzacyjny: $ \ text {Model} = \ text {argmin} \ sum L (\ text {acta l}, \ text {predicted} (\ text {Model})) + \ lambda R (\ text {Model}) $
Zwykle ten termin $ R (\ text {Model}) $ narzuca specjalna kara na skomplikowane modele. Na przykład w modelach z dużymi współczynnikami (regularyzacja L2, $ R $ = suma kwadratów współczynników) lub z wieloma, jeśli współczynniki niezerowe (regularyzacja L1, $ R $ = suma bezwzględnych wartości współczynników). Jeśli trenujemy drzewo decyzyjne, $ R $ może być jego głębokością.
Innym punktem widzenia jest to, że $ R $ wprowadza naszą wcześniejszą wiedzę na temat formy najlepszego modelu („nie ma też” duże współczynniki „,” jest prawie prostopadłe do $ \ bar a $ „)
Odpowiedź
Krótko mówiąc, regularyzacja polega na korzystaniu z rozwiązań, których oczekujesz. Jak wspomniałeś, możesz na przykład skorzystać z „prostych” rozwiązań, dla pewnej definicji prostoty. Jeśli twój problem ma reguły, jedna definicja może być mniej reguł. Ale to jest zależne od problemu.
Zadajesz jednak właściwe pytanie. Na przykład w maszynach wektorów pomocniczych ta „prostota” pochodzi z zrywania więzi w kierunku „maksymalnego marginesu”. Margines ten jest coś, co można jasno zdefiniować w kategoriach problemu. W artykule o SVM w Wikipedii znajduje się bardzo dobre wyprowadzenie geometryczne. Okazuje się, że termin regularyzacyjny to , zapewne przynajmniej, „sekretny sos” maszyn SVM.
Jak robisz regularyzację? Ogólnie rzecz biorąc, jest to związane z metodą, której używasz, jeśli używasz maszyn SVM, robisz regularyzację L2, jeśli używasz LASSO, „wykonujesz regularyzację L1 (zobacz, co mówi włochata bestia). Jeśli jednak” opracowujesz własną metodę, musisz wiedzieć, jak określić pożądane rozwiązania z niepożądanych i mają funkcję, która to kwantyfikuje. Na końcu „będziesz mieć warunek kosztu i okres regularyzacji i chcesz zoptymalizować sumę obu.
Odpowiedź
Techniki regularyzacyjne to techniki stosowane w modelach uczenia maszynowego, które sprawiają, że granica decyzji / dopasowany model jest bardziej płynna. Techniki te pomagają zapobiegać nadmiernemu dopasowaniu.
Przykłady: L1, L2, Dropout, Weight Decay in Neural Networks. Parametr $ C $ w maszynach SVM.
Odpowiedź
Mówiąc prościej, regularyzacja to technika pozwalająca uniknąć nadmiernego dopasowania podczas uczenia maszynowego uczenia się algorytmy. Jeśli masz algorytm z wystarczającą liczbą wolnych parametrów, możesz interpolować bardzo szczegółowo swoją próbkę, ale przykłady wychodzące poza próbkę mogą nie uwzględniać tej interpolacji szczegółów, ponieważ wychwytują tylko szum lub przypadkowe nieprawidłowości w próbce zamiast prawdziwego trendu. / p>
Nadmiernego dopasowania można uniknąć, ograniczając bezwzględną wartość parametrów w modelu. Można to zrobić, dodając termin do funkcja kosztu, która nakłada karę na podstawie wielkości parametrów modelu. Jeśli wielkość jest mierzona w normie L1, nazywa się to „regularyzacją L1” (i zwykle prowadzi do rzadkich modeli), jeśli jest mierzona w normie L2, nazywa się to „regularyzacją L2” i tak dalej.