Najmniejsze kwadraty: najlepsze dopasowanie w postaci zamkniętej
Współczynnik najmniejszych kwadratów wybiera współczynniki β modelu liniowego y = Xβ, które minimalizują sumę kwadratów reszt, ‖y − Xβ‖². Ustawienie gradientu tej sumy na zero daje równania normalne, które mają rozwiązanie w postaci zamkniętej, gdyby było XᵀX odwrócone:
minimalizacja ‖y − Xβ‖² ∂/∂β ‖y − Xβ‖² = −2Xᵀ(y − Xβ) = 0 ⇒ XᵀX β = Xᵀy ⇒ β̂ = (XᵀX)⁻¹ Xᵀy live demo · dopasowywanie szumu rozrzutowego z stopniami od 1 do 9● LIVE "Linear" regresja oznacza liniowe względem współczynników, a nie w widocznej krzywej — to samo równanie normalne pasuje prostą, parabolę lub wielomian stopnia 9, o ile rozszerzysz macierz cech X o dodatkowe kolumny x², x³, … x⁹ przed rozwiązaniem. To dokładnie jest to, co nazywa się regresją wielomianową: najmniejsze kwadraty na wygenerowanym zestawie cech o wyższej wymiarowości.
minimise ‖y − Xβ‖²
∂/∂β ‖y − Xβ‖² = −2Xᵀ(y − Xβ) = 0
⇒ XᵀX β = Xᵀy
⇒ β̂ = (XᵀX)⁻¹ Xᵀy
Błąd, wariancja i suwak stopniowy
Dopasowanie stopnia 1 do danych naprawdę zakrzywionych jest obarczone błędem: to nieprawidłowa rodzina funkcji niezależnie od ilości danych, które na nią nakarmisz, i jego błąd nie zniknie nawet wraz ze wzrostem próby – niedostosowanie. Dopasowanie stopnia 9 do niewielkiej liczby szumów generuje prawie zerowy błąd (przy wystarczającej liczbie parametrów może przejść arbitralnie blisko każdego punktu treningowego) ale ogromną wariancję: ponownie dostosuj go do nieco innego próbki z szumami i współczynniki, a także krzywa między punktami danych, będą się w szalejący sposób zmieniać, szczególnie na krawędziach danych – przeuczenie. Oczekiwany błąd testowy rozkłada się czysto na trzy elementy:
E[błąd testu] = Błąd² + Wariancja + nieodłączny szum σ² niski stopień → wysoki błąd, niska wariancja → niedostosowanie wysoki stopień → niski błąd, wysoka wariancja → przeuczenie pomiędzy nimi: stopień minimalizujący SUM Nie ma wolnego sposobu na zmniejszenie błędu bez podniesienia wariancji lub odwrotnie tylko ze względu na stopień – ten kompromis nazywa się kompromisem między błędami i wariancją, a praktyczny sposób na znalezienie idealnego punktu to użycie walidacyjnych danych (lub krzyżowej walidacji) i wybór stopnia minimalizującego błąd walidacyjny, nigdy błędu treningowego, ponieważ błąd treningowy zawsze maleje wraz z dodawaniem kolejnych wyrazów wielomianowych.
E[test error] = Bias² + Variance + irreducible noise σ²
low degree → high bias, low variance → underfit
high degree → low bias, high variance → overfit
somewhere between: the degree that minimises the SUM
Ridge: redukuj zamiast obcinać
Zamiast kontrolować złożoność wybierając stopień wielomianu, można dopasować model o wysokiej randze i bezpośrednio karcić duże współczynniki. Regresja Ridge (regularizacja Tikhonowa) dodaje karę L2 λ‖β‖² do celu najmniej kwadratowego:
minimalizować ‖y − Xβ‖² + λ ‖β‖² ⇒ β̂ridge = (XᵀX + λI)⁻¹ Xᵀy Dodatkowy człon λI ma również pozytywny wpływ z punktu widzenia numeracji: poprawia warunek równości macierzy odwrotnej (zawsze jest możliwy, nawet gdy XᵀX jest singularny lub bliski singularności ze względu na skorelowane cechy), co było jednym z powodów, dla których Ridge zostało pierwotnie wprowadzone jako rozwiązanie tego konkretnego problemu numerycznego. Wraz ze wzrostem λ każdy współczynnik jest gładko przyciągany do zera — ale zasadniczo nigdy nie dochodzi do zera — więc Ridge utrzymuje każdą cechę w modelu z obniżonym współczynnikiem, co sprawdza się w sytuacjach, gdy większość lub wszystkie cechy rzeczywiście przyczyniają się minimalnie.
minimise ‖y − Xβ‖² + λ ‖β‖²
⇒ β̂ridge = (XᵀX + λI)⁻¹ Xᵀy
Lasso: redukcja niektórych współczynników do zera
Lasso (Least Absolute Shrinkage and Selection Operator) zamienia karę na L1, λ‖β‖₁ = λ Σ|βi|:
minimalizuje ‖y − Xβ‖² + λ Σ |βi| (brak ogólnego rozwiązania analitycznego) Geometrycznie, obszar kary L1 ma kształt diamentu (w 2D) z ostrymi narożnikami na osiach współrzędnych, podczas gdy obszar kary L2 jest gładkim kołem; kontur minimalizacji najmniejszych kwadratów jest bardziej prawdopodobny, że najpierw dotknie diamentu L1 dokładnie w rogu, gdzie jeden lub więcej współczynników jest równy zero, niż w punkcie na osi koła L2. To geometryczny fakt stanowi główną przyczynę działania Lasso w zakresie automatycznego wyboru cech — prowadząc zbędne współczynniki do dokładnie zerowych wartości — podczas gdy Ridge tylko je zmniejsza w pobliże siebie. Koszt polega na tym, że kara L1 nie jest różniczkowalna w punkcie zero, więc nie ma skróconego rozwiązania za pomocą równań normalnych; Lasso rozwiązuje się metodą współrzędnych lub innymi metodami optymalizacji wypukłej, a gdy cechy są silnie skorelowane, Lasso przypadkowo wybiera jedną z grupy skorelowanych i zeruje resztę, co Ridge obsługuje bardziej elegancko poprzez zmniejszanie współczynników skorelowanych razem.
Elastic Net łączy obie kary, αλ‖β‖₁ + (1−α)λ‖β‖², aby uzyskać rzadkie rozwiązania podobne do Lasso, zachowując jednocześnie stabilność Ridge pod względem skorelowanych cech.
minimise ‖y − Xβ‖² + λ Σ |βi| (no closed form in general)
Wybór λ
λ jest dokładnie takim pokrętłem jak stopień wielomianu – handluje się obciążeniem za wariancję, tylko ciągle zamiast w krokach całkowitych. λ = 0 odzyskuje najmniej kwadratowe (niskie obciążenie, potencjalnie wysoka wariancja na wysokim modelu); gdy λ → ∞ każdy współczynnik jest napędzany do zera i model degeneruje się do płaskiej linii na średniej wartości y (wysokie obciążenie, zerowa wariancja). Standardowy sposób wyboru to walidacja k-krotna: dopasuj na k−1 warstwach, oceń na wykluczonej warstwie, powtórz się we wszystkich warstwach i uśrednij, a następnie wybierz λ, które minimalizuje średnią błędną walidacji – nigdy wartość nie wybrana wzrokiem na krzywej szkoleniowej, która systematycznie wprowadzona jest w ten sam sposób jak niezregularizowany wysoki model dopasowania.
Często zadawane pytania
Co sprawia, że regresja wielomianowa jest 'liniowa', jeśli krzywa nie jest prostą linią?
Regresja liniowa oznacza liniowość względem współczynników rozwiązywanych, a nie liniowość kształtu krzywej. Dopasowywanie y = β0 + β1x + β2x² + β3x³ jest nadal rozwiązywane przy użyciu dokładnie tych samych równań normalnych jak dla prostej linii, ponieważ x, x² i x³ są po prostu trzema kolumnami macierzy cech X — model jest liniowy względem β0, β1, β2, β3 nawet wtedy, gdy uzyskana krzywa się wygina.
Dlaczego Lasso zeruje współczynniki, a Ridge tylko je zmniejsza?
Sprowadza się to do geometrii obszaru kary. Karę L1 w metodzie Lasso ma trójkątny obszar ograniczenia z ostrymi rogami położonymi dokładnie na osiach współrzędnych, a optymalne rozwiązanie jest niezmiernie prawdopodobne, że znajdzie się w jednym z tych rogów, gdzie niektóre współczynniki są dokładnie równe zero. Karę L2 w metodzie Ridge to gładki okrąg bez rogów, więc jego optymalne rozwiązanie prawie nigdy nie znajduje się dokładnie na osi — współczynniki kurczą się w kierunku zera, ale zasadniczo nigdy się nim nie osiągną.
Jak wybrać odpowiednią wartość regularizacji λ?
Nigdy patrząc na błąd treningowy, który poprawia się tylko wtedy, gdy λ maleje w kierunku zera. Użyj walidacji k-fold: dopasuj model do większości danych, zmierz błąd na wyłączonym podzbiorze, powtórz to kilka razy i wybierz wartość λ, która minimalizuje średni błąd na wyłączonym podzbiorze. Jest to ten sam zasadniczy princip, używany do wyboru stopnia wielomianu, a oba problemy są w rzeczywistości tym samym kompromisem między biasem a wariancją, widzianym przez różne pokrętła.
Wypróbuj na żywo
Wszystko powyżej działa bezpośrednio w Twojej przeglądarce — otwórz Regression Visualizer i zmieniaj parametry podczas działania. Nic nie jest instalowane ani przesyłane na serwer, cały model działa w jednej karcie.
▶ Otwórz symulację Regression Visualizer