Regresja grzbietu w Sklearn

Regresja grzbietu w Sklearn
Regresja Ridge jest techniką uczenia maszynowego w celu uregulowania danych używanych do wykonywania regresji liniowej. Jest to optymalizacja prostej regresji liniowej. W tym artykule omówimy o regresji Ride Ridge, jego zaletach, problemach, które rozwiązał i wdrażanie w Sklearn.

Co to jest regresja Ridge?

W celu zwiększenia dokładności prognozowania technika statystyczna znana jako regresja grzbietu zmniejsza wielkość oszacowań parametrów. Działa szczególnie dobrze, jeśli Twój zestaw danych zawiera skorelowane kolumny, których próbujesz użyć jako wejścia (zmienne niezależne) w modele regresji, ale żaden z twoich modeli nie uzyskał bardzo dokładnych wyników. Innymi słowy, regresja Ridge to technika strojenia modelu, która jest używana do każdej wielokoliniowej analizy danych. Dane są poddawane regularyzacji L2 za pomocą tej metody.

Funkcja kosztów regresji grzbietu wynosi:

Min (|| y - x (theta) ||^2 + λ || theta ||^2)

Co to jest wielokoliniowość?

Pojęcie wielokoliniowości opiera się na badaniach statystycznych. Właśnie wtedy, gdy twoje niezależne zmienne mają znaczny stopień korelacji. Klininearność nie wpływa bezpośrednio na zmienną odpowiedzi; dotyczy to interakcji między zmiennymi predykcyjnymi lub cechami. Oszacowania współczynników regresji mogą być niedokładne w wyniku wielokoliniowości. Może potencjalnie zwiększyć standardowe błędy współczynnika regresji i zmniejszyć skuteczność wszelkich testów t. Wielokoliniowość może zapewnić mylące wyniki i wartości p, zwiększając redundancję modelu i obniżając skuteczność i niezawodność przewidywalności.

Zalety regresji grzbietu

  • Straża przed modelem, który staje się nadmierny.
  • Nie wymaga obiektywnych estymatorów.
  • Istnieje tylko niewielka ilość uprzedzeń, co pozwala szacunkom być dość dokładnym przybliżeniem prawdziwej liczby populacji.
  • Gdy istnieje wielokoliniowość, estymator Ridge jest bardzo przydatny do zwiększenia oszacowania najmniejszych kwadratów.

Wdrożenie regresji grzbietowej w Sklearn

Importowanie wymaga następujących bibliotek:

ze Sklearn.Linear_model Import Ridge
importować Numpy jako NP

Utwórz zestaw danych za pomocą następującego polecenia:

N_SAMPLES, N_FEACURES = 20, 4
Data = NP.losowy.Randomstate (0)
y = dane.Randn (n_samples)
X = dane.Randn (n_samples, n_features)
druk („funkcje to”, x)
druk („etykiety są”, y)

Wyjście:

Funkcje to [[-2.55298982 0.6536186 0.8644362 -0.74216502]
[2.26975462 -1.45436567 0.04575852 -0.18718385]
[1.53277921 1.46935877 0.15494743 0.37816252]
[-0.88778575 -1.98079647 -0.34791215 0.15634897]
[1.23029068 1.20237985 -0.38732682 -0.30230275]
[-1.04855297 -1.42001794 -1.70627019 1.9507754]
[-0.50965218 -0.4380743 -1.25279536 0.77749036]
[-1.61389785 -0.21274028 -0.89546656 0.3869025]
[-0.51080514 -1.18063218 -0.02818223 0.42833187]
[0.06651722 0.3024719 -0.63432209 -0.36274117]
[-0.67246045 -0.35955316 -0.81314628 -1.7262826]
[0.17742614 -0.40178094 -1.63019835 0.46278226]
[-0.90729836 0.0519454 0.72909056 0.12898291]
[1.13940068 -1.23482582 0.40234164 -0.68481009]
[-0.87079715 -0.57884966 -0.31155253 0.05616534]
[-1.16514984 0.90082649 0.46566244 -1.53624369]
[1.48825219 1.89588918 1.17877957 -0.17992484]
[-1.07075262 1.05445173 -0.40317695 1.22244507]
[0.20827498 0.97663904 0.3563664 0.70657317]
[0.01050002 1.78587049 0.12691209 0.40198936]]
Etykiety to [1.76405235 0.40015721 0.97873798 2.2408932 1.86755799 -0.97727788
0.95008842 -0.15135721 -0.10321885 0.4105985 0.14404357 1.45427351
0.76103773 0.12167502 0.44386323 0.33367433 1.49407907 -0.20515826
0.3130677 -0.85409574]

Tworzenie i dopasowanie modelu:

model = grzbiet (alfa = 1.0)
Model.Fit (x, y)

Wniosek

Omówiliśmy model regresji grzbietu w uczeniu maszynowym, który służy do wykonywania regularyzacji L2 na danych, aby zapobiec nadmiernemu dopasowaniu. Jest to zaawansowana wersja prostej regresji liniowej. Omówiliśmy również jego wdrożenie za pomocą Sklearn.