Regularizacja oznacza zmniejszanie złożoności modelu w celu ograniczenia nadmiernego dopasowania.
Prostota regularności
Krzywa uogólnienia
Karanie za złożoność modelu
- Chcemy uniknąć złożoności modelu, gdy jest to możliwe.
- Ten pomysł możemy wykorzystać w optymalizacji przeprowadzanej w trakcie trenowania.
- Minimalizacja ryzyka empirycznego:
- ma na celu zmniejszenie błędu w trenowaniu.
$$ \text{minimize: } Loss(Data\;|\;Model) $$
Karanie za złożoność modelu
- Chcemy uniknąć złożoności modelu, gdy jest to możliwe.
- Ten pomysł możemy wykorzystać w optymalizacji przeprowadzanej w trakcie trenowania.
- Minimalizacja ryzyka strukturalnego:
- ma na celu zmniejszenie błędu w trenowaniu.
- i równoważyć złożoność
$$ \text{minimize: } Loss(Data\;|\;Model) + complexity(Model) $$
Regularyzacja
- Jak zdefiniować złożoność(model)?
Regularyzacja
- Jak zdefiniować złożoność(model)?
- Wolę mniejszą wagę
Regularyzacja
- Jak zdefiniować złożoność(model)?
- Wolę mniejszą wagę
- Odejście od tej zmiany powinno wiązać się z kosztami.
- Może zakodować tę ideę za pomocą regularyzacji L2 regularization (lub grzbietu).
- złożoność(model) = suma kwadratów wag
- Karny za bardzo duże ciężary
- W przypadku modeli liniowych: preferuje bardziej płaskie zbocza
- Bayesowski przed:
- wagi powinny być wyśrodkowane wokół zera
- wagi powinny być normalnie rozłożone
Funkcja straty z regularyzacją L2
$$ Loss(Data|Model) + \lambda \left(w_1^2 + \ldots + w_n^2 \right) $$
\(\text{Where:}\)
\(Loss\text{: Aims for low training error}\)
\(\lambda\text{: Scalar value that controls how weights are balanced}\)
\(w_1^2+\ldots+w_n^2\text{: Square of}\;L_2\;\text{norm}\)