Amarengo

Articles and news

snabb handledning om LASSO Regression med exempel

LASSO regression står för minst absolut krympning och val operatör. Algoritmen är en annan variant av linjär regression, precis som åsregression. Vi använder lasso regression när vi har ett stort antal prediktorvariabler.

översikt-Lasso Regression

Lasso regression är en parsimonious modell som utför L1 regularisering. L1-regulariseringen lägger till ett straff som motsvarar den absoluta storleken på regressionskoefficienterna och försöker minimera dem. Ekvationen för lasso liknar åsregression och ser ut som nedan.

 LS Obj + λ (sum of the absolute values of coefficients)

här är målet som följer:
om 2 = 0, får vi samma koefficienter som linjär regression
om 2 = varierar stort, krymper alla koefficienter mot noll

de två modellerna, lasso och åsregression, liknar nästan varandra. I lasso omvandlas emellertid koefficienterna som är ansvariga för stor varians till noll. Å andra sidan krymper koefficienterna bara men görs aldrig noll i åsregression.

Lasso regressionsanalys används också för variabelval eftersom modellen ställer koefficienter för vissa variabler för att krympa mot noll.

vad betyder ett stort antal variabler?

  1. det stora antalet här betyder att modellen tenderar att överpassas. Teoretiskt kan minst tio variabler orsaka ett överfittningsproblem.
  2. när du möter beräkningsutmaningar på grund av närvaron av n antal variabler. Även om dagens processorkraft av system uppstår denna situation sällan.

följande diagram är den visuella tolkningen som jämför OLS och lasso regression.

LASSO är inte särskilt bra på att hantera variabler som visar en korrelation mellan dem och kan därför ibland visa mycket vildt beteende.

Training Lasso Regression Model

träningen av lasso regressionsmodellen är exakt densamma som för ridge regression. Vi måste identifiera det optimala lambda-värdet och sedan använda det värdet för att träna modellen. För att uppnå detta kan vi använda samma glmnet – funktion och passeraalpha = 1 – argument. När vi passerar alpha = 0 kör glmnet() en åsregression, och när vi passerar alpha = 0.5 kör glmnet en annan typ av modell som kallas elastiskt nät och är en kombination av ås och lasso regression.

  1. vi använder cv.glmnet() funktion för att identifiera det optimala lambda-värdet
  2. extrahera den bästa lambda och bästa modellen
  3. bygga om modellen med glmnet() funktion
  4. använd predict-funktionen för att förutsäga värdena på framtida data

i det här exemplet kommer vi att använda swiss dataset för att förutsäga fertilitet baserat på socioekonomiska indikatorer för år 1888.

uppdaterad-kodavsnitt uppdaterades för att korrigera vissa variabelnamn– 28/05/2020

# Output 0.3981072

med hjälp av detta värde, låt oss träna lasso-modellen igen.

slutligen kombinerar vi de förutsagda värdena och de faktiska värdena för att se de två värdena sida vid sida, och sedan kan du använda R-Kvadratformeln för att kontrollera modellens prestanda. OBS – Du måste beräkna r-Kvadratvärdena för både tåg-och testdataset.

final <- cbind(y_var, pred)# Checking the first six obshead(final)

dela r-Kvadratformeln

funktionen nedan är bara vägledande, och du måste ange de faktiska och förutsagda värdena baserat på din dataset.

actual <- test$actualpreds <- test$predictedrss <- sum((preds - actual) ^ 2)tss <- sum((actual - mean(actual)) ^ 2)rsq <- 1 - rss/tssrsq

Hämta listan över viktiga variabler

för att få listan över viktiga variabler behöver vi bara undersöka betakoefficienterna för den slutliga bästa modellen.

# Inspecting beta coefficientscoef(lasso_best)
# Output6 x 1 sparse Matrix of class "dgCMatrix" s0(Intercept) 66.5365304Agriculture -0.0489183Examination . Education -0.9523625Catholic 0.1188127Infant.Mortality 0.4994369

modellen indikerar att koefficienterna för jordbruk och utbildning har krympts till noll. Således är vi kvar med tre variabler, nämligen; undersökning, katolik och spädbarn.Dödlighet

i det här kapitlet lärde vi oss hur man bygger en lasso-regression med samma glmnet-paket, som vi använde för att bygga ridge-regressionen. Vi såg också vad som är skillnaden mellan åsen och lasso är. I nästa kapitel kommer vi att diskutera hur man kan förutsäga en dikotom variabel med hjälp av logistisk regression.

Lämna ett svar

Din e-postadress kommer inte publiceras.