Ridge -regresjon i Sklearn

Ridge -regresjon i Sklearn
Ridge Regression er en teknikk i maskinlæring for å regulere dataene som brukes til å utføre den lineære regresjonen. Det er en optimalisering av enkel lineær regresjon. I denne artikkelen skal vi diskutere om Ride Ridge -regresjon, fordeler, problemene det løste og implementeringen av Sklearn i Sklearn.

Hva er Ridge Regression?

For å øke prediksjonens nøyaktighet, reduserer den statistiske teknikken kjent som Ridge Regression størrelsen på parameterestimater. Det fungerer spesielt bra hvis datasettet ditt inneholder korrelerte kolonner som du prøver å bruke som innganger (uavhengige variabler) i regresjonsmodeller, men ingen av modellene dine ga veldig nøyaktige resultater. Med andre ord, Ridge Regression er en modellinnstillingsteknikk som brukes til enhver multikollineær dataanalyse. Dataene blir utsatt for L2 -regularisering ved bruk av denne metoden.

Kostnadsfunksjonen for Ridge Regression er:

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

Hva er multikollinearitet?

Begrepet multikollinearitet er basert på statistisk forskning. Akkurat når dine uavhengige variabler har en betydelig grad av korrelasjon. Kollinearitet påvirker ikke direkte svarvariabelen; Snarere angår det interaksjonene mellom prediktorvariablene eller egenskapene. Anslagene av regresjonskoeffisientene kan være unøyaktige som et resultat av multikollinearitet. Det kan potensielt øke regresjonskoeffisientstandardfeilene og redusere effektiviteten til alle t-tester. Multikollinearitet kan gi misvisende resultater og p-verdier, øke modellens redundans og senke forutsigbarhetenes effektivitet og pålitelighet.

Fordeler med ås regresjon

  • Det vakter mot at modellen blir overfit.
  • Det krever ikke objektive estimater.
  • Bare en liten mengde skjevhet eksisterer, slik at estimatene kan være en ganske nøyaktig tilnærming av de ekte befolkningstallene.
  • Når det er multikollinearitet, er Ridge-estimatoren ganske nyttig for å forbedre estimatet.

Implementering av Ridge Regression in Sklearn

Import krever følgende biblioteker:

Fra Sklearn.Linear_model Import Ridge
Importer numpy som NP

Opprett datasettet ved å bruke følgende kommando:

n_samples, n_features = 20, 4
data = np.tilfeldig.RandomState (0)
y = data.randn (n_samples)
X = data.randn (n_samples, n_features)
trykk ('funksjoner er', x)
trykk ('Etiketter er', y)

Produksjon:

Funksjonene er [[-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]]
Etiketter er [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]

Opprette og montere modellen:

modell = ås (alfa = 1.0)
modell.passform (x, y)

Konklusjon

Vi diskuterte Ridge Regression -modellen innen maskinlæring som brukes til å utføre L2 -regulariseringen på dataene for å forhindre overmasse. Det er en avansert versjon av en enkel lineær regresjon. Vi diskuterte også implementeringen ved hjelp av Sklearn.