Regularizacja w kontekście uczenia maszynowego jest ważną techniką wykorzystywaną do poprawy wydajności generalizacji modeli, szczególnie w przypadku danych wielowymiarowych lub złożonych modeli, które są podatne na nadmierne dopasowanie. Nadmierne dopasowanie występuje, gdy model uczy się nie tylko podstawowych wzorców w danych treningowych, ale także szumu, co skutkuje słabą wydajnością w przypadku niewidzianych danych. Regularizacja wprowadza dodatkowe informacje lub ograniczenia do modelu, aby zapobiec nadmiernemu dopasowaniu poprzez karanie nadmiernie złożonych modeli.
Podstawowym pomysłem stojącym za regularyzacją jest włączenie terminu kary do funkcji straty, którą model próbuje zminimalizować. Ten termin kary zniechęca model do dopasowania szumu w danych treningowych poprzez nałożenie kosztu na złożoność, zwykle mierzonego wielkością parametrów modelu. Dzięki temu regularizacja pomaga w osiągnięciu równowagi między dobrym dopasowaniem danych treningowych a utrzymaniem zdolności modelu do generalizacji na nowe dane.
Istnieje kilka rodzajów technik regularyzacji powszechnie stosowanych w uczeniu maszynowym, przy czym najpopularniejszymi są regularyzacja L1, regularyzacja L2 i dropout. Każda z tych technik ma swoje własne cechy i zastosowania.
1. Regularizacja L1 (regresja Lasso): Regularizacja L1 dodaje karę równą wartości bezwzględnej wielkości współczynników do funkcji straty. Matematycznie można to przedstawić jako:
gdzie jest oryginalną funkcją straty,
jest parametrem regularyzacji i
są parametrami modelu. Efektem regularyzacji L1 jest to, że ma tendencję do tworzenia modeli rozrzedzonych, co oznacza, że niektóre współczynniki są sprowadzane do zera, co skutecznie przeprowadza selekcję cech. Może to być szczególnie przydatne w przypadku danych o dużej liczbie wymiarów, w których wiele cech może być nieistotnych.
2. Regularizacja L2 (regresja grzbietowa): Regularizacja L2 dodaje karę równą kwadratowi wielkości współczynników do funkcji straty. Jest ona wyrażona matematycznie jako:
Regularizacja L2 zniechęca do dużych współczynników, karząc ich kwadratowe wartości, co prowadzi do bardziej równomiernie rozłożonego zestawu wag. W przeciwieństwie do L1, regularyzacja L2 nie tworzy rzadkich modeli, ponieważ nie wymusza, aby współczynniki były dokładnie równe zero, ale raczej utrzymuje je na małym poziomie. Jest to szczególnie przydatne do uniknięcia nadmiernego dopasowania, gdy wszystkie cechy mają pewne znaczenie.
3. Elastyczna regularyzacja siatki: Elastic Net łączy zarówno regularizację L1, jak i L2. Jest to szczególnie przydatne w sytuacjach, w których występuje wiele skorelowanych cech. Kara Elastic Net jest liniową kombinacją kar L1 i L2:
Poprzez dostrajanie parametrów i
Elastic Net potrafi zrównoważyć korzyści regularyzacji L1 i L2.
4. Spadkowicz: Dropout to technika regularizacji zaprojektowana specjalnie dla sieci neuronowych. Podczas treningu dropout losowo ustawia część węzłów (neuronów) w warstwie na zero w każdej iteracji. Zapobiega to zbytniemu poleganiu sieci na pojedynczym węźle i zachęca sieć do uczenia się bardziej solidnych funkcji. Dropout jest szczególnie skuteczny w modelach głębokiego uczenia się, w których nadmierne dopasowanie jest częstym problemem ze względu na dużą liczbę parametrów.
5. Wczesne zatrzymanie: Chociaż nie jest to technika regularizacji w tradycyjnym sensie, wczesne zatrzymanie jest strategią zapobiegającą nadmiernemu dopasowaniu poprzez zatrzymanie procesu treningowego, gdy wydajność zestawu walidacyjnego zaczyna się pogarszać. Jest to szczególnie przydatne w metodach iteracyjnych, takich jak gradient zstępujący, gdzie model jest stale aktualizowany.
Regularyzacja jest niezbędna w uczeniu maszynowym, ponieważ pozwala modelom dobrze działać na niewidzianych danych, kontrolując ich złożoność. Wybór techniki regularyzacji i dostrojenie jej parametrów ( w przypadku poziomów L1 i L2 (wskaźnik rezygnacji) są ważne i często wymagają eksperymentowania oraz walidacji krzyżowej w celu osiągnięcia optymalnych wyników.
Na przykład rozważmy model regresji liniowej trenowany na zbiorze danych z wieloma cechami. Bez regularyzacji model może przypisywać duże wagi niektórym cechom, dopasowując dane treningowe bardzo ściśle, ale słabo działając na danych testowych z powodu nadmiernego dopasowania. Poprzez zastosowanie regularizacji L2 model jest zachęcany do bardziej równomiernego rozłożenia wag, co potencjalnie prowadzi do lepszej generalizacji na nowych danych.
W innym scenariuszu sieć neuronowa trenowana na danych obrazu może nadmiernie się dopasować, zapamiętując określone wzorce w obrazach treningowych. Poprzez zastosowanie dropoutu sieć jest zmuszona nauczyć się bardziej ogólnych cech, które są przydatne w różnych obrazach, co poprawia jej wydajność w przypadku niewidzianych danych.
Regularyzacja to podstawowa koncepcja w uczeniu maszynowym, która pomaga zapobiegać nadmiernemu dopasowaniu poprzez dodanie kary za złożoność do funkcji straty modelu. Kontrolując złożoność modelu, techniki regularyzacji, takie jak L1, L2, Elastic Net, dropout i early stopped, umożliwiają lepszą generalizację nowych danych, co czyni je niezbędnymi narzędziami w zestawie narzędzi praktyka uczenia maszynowego.
Inne niedawne pytania i odpowiedzi dotyczące EITC/AI/GCML Uczenie Maszynowe Google Cloud:
- Jakie hiperparametry są wykorzystywane w uczeniu maszynowym?
- Jaki jest język programowania dla uczenia maszynowego? To po prostu Python
- W jaki sposób uczenie maszynowe znajduje zastosowanie w świecie nauki?
- Jak podejmujesz decyzję, którego algorytmu uczenia maszynowego użyć i jak go znaleźć?
- Jakie są różnice pomiędzy uczeniem federacyjnym, przetwarzaniem brzegowym i uczeniem maszynowym na urządzeniach?
- Jak przygotować i oczyścić dane przed treningiem?
- Jakie są konkretne początkowe zadania i działania w projekcie uczenia maszynowego?
- Jakie są zasady przyjmowania konkretnej strategii i modelu uczenia maszynowego?
- Które parametry wskazują, że nadszedł czas na przejście z modelu liniowego na głębokie uczenie?
- Która wersja Pythona będzie najlepsza do zainstalowania TensorFlow, aby uniknąć problemów w przypadku braku dostępnych dystrybucji TF?
Zobacz więcej pytań i odpowiedzi w EITC/AI/GCML Google Cloud Machine Learning