Amarengo

Articles and news

Tutorial rápido sobre Regressão LASSO com Exemplo

regressão LASSO representa menos encolhimento absoluto e Operador de seleção. O algoritmo é outra variação da regressão linear, assim como a regressão de ridge. Usamos regressão lasso quando temos um grande número de variáveis preditoras.

Overview-Lasso Regression

Lasso regression é um modelo parcimonioso que executa a regularização L1. A regularização L1 adiciona uma penalidade equivalente à magnitude absoluta dos coeficientes de regressão e tenta minimizá-los. A equação de lasso é semelhante à regressão de crista e se parece com a dada abaixo.

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

Aqui o objetivo é a seguinte:
Se λ = 0, Podemos obter os mesmos coeficientes como regressão linear
Se λ = variar grande, Todos os coeficientes são reduzidas para zero

Os dois modelos, lasso e regressão ridge, são quase semelhantes uns aos outros. No entanto, em lasso, os coeficientes responsáveis pela grande variância são convertidos em zero. Por outro lado, os coeficientes são apenas encolhidos, mas nunca são feitos zero na regressão de crista.

a análise de regressão Lasso também é usada para seleção de variáveis, pois o modelo impõe coeficientes de algumas variáveis para encolher em direção a zero.

o que significa um grande número de variáveis?

  1. o grande número aqui significa que o modelo tende a se encaixar demais. Teoricamente, um mínimo de dez variáveis pode causar um problema de ajuste excessivo.
  2. quando você enfrenta desafios computacionais devido à presença de n número de variáveis. Embora, dado o poder de processamento dos sistemas de hoje, essa situação raramente surja.

o diagrama a seguir é a interpretação visual comparando a regressão OLS e lasso.

o laço não é muito bom em lidar com variáveis que mostram uma correlação entre elas e, portanto, às vezes pode mostrar um comportamento muito selvagem.

modelo de regressão Training Lasso

o treinamento do modelo de regressão lasso é exatamente o mesmo que o da regressão ridge. Precisamos identificar o valor lambda ideal e, em seguida, usar esse valor para treinar o modelo. Para conseguir isso, podemos usar a mesma funçãoglmnet e passar alpha = 1 argumento. Quando passamos alpha = 0, glmnet() executa uma regressão de crista e, quando passamos alpha = 0.5, o glmnet executa outro tipo de modelo que é chamado de rede elástica e é uma combinação de regressão de crista e laço.

  1. Nós usamos cv.glmnet() função para identificar o melhor valor lambda
  2. Extrair o melhor de lambda e o melhor modelo
  3. Reconstruir o modelo usando glmnet() função
  4. Usar prever função para prever os valores futuros de dados

Para este exemplo, vamos usar o swiss conjunto de dados para predizer a fertilidade baseado em Indicadores Socioeconômicos, para o ano de 1888.

o trecho de código atualizado foi atualizado para corrigir alguns nomes de variáveis– 28/05/2020

# Output 0.3981072

usando esse valor, vamos treinar o modelo lasso novamente.

por fim, combinamos os valores previstos e os valores reais para ver os dois valores lado a lado e, em seguida, você pode usar a fórmula R-quadrado para verificar o desempenho do modelo. Nota-você deve calcular os valores R-quadrado para o conjunto de dados de trem e teste.

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

compartilhando a fórmula quadrada R

a função fornecida abaixo é apenas indicativa, e você deve fornecer os valores reais e previstos com base em seu conjunto de dados.

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

Obter a lista de variáveis importantes

Para obter a lista de variáveis importantes, só precisamos investigar os coeficientes beta final do melhor modelo.

# 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

o modelo indica que os coeficientes de Agricultura e educação foram reduzidos a zero. Assim, ficamos com três variáveis, a saber: exame, católico e Infantil.Mortalidade

neste capítulo, aprendemos a construir uma regressão lasso usando o mesmo pacote glmnet, que usamos para construir a regressão ridge. Também vimos Qual é a diferença entre o cume e o laço. No próximo capítulo, discutiremos como prever uma variável dicotômica usando regressão logística.

Deixe uma resposta

O seu endereço de email não será publicado.