Quando devo usar laço vs cume?

167

Digamos que eu queira estimar um grande número de parâmetros e quero penalizar alguns deles porque acredito que eles devem ter pouco efeito em comparação com os outros. Como decido qual esquema de penalização usar? Quando a regressão de crista é mais apropriada? Quando devo usar o laço?

Larry Wang
fonte
"Digamos que eu queira estimar um grande número de parâmetros", isso pode ser mais preciso: qual é a estrutura? Eu acho que é regressão linear?
22610 robin girard
2
Uma pergunta semelhante foi apenas perguntou sobre metaoptimize (tendo em mente que L1 = LASSO e L2 = cume): metaoptimize.com/qa/questions/5205/...
Gael Varoquaux
Você diz "laço versus cume" como se fossem as duas únicas opções - e o pareto duplo generalizado, ferradura, bma, ponte, entre outras?
probabilityislogic

Respostas:

106

Lembre-se de que a regressão de crista não pode zerar coeficientes; assim, você acaba incluindo todos os coeficientes no modelo, ou nenhum deles. Por outro lado, o LASSO realiza o encolhimento dos parâmetros e a seleção de variáveis ​​automaticamente. Se algumas de suas covariáveis ​​são altamente correlacionadas, você pode querer olhar para a Elastic Net [3] em vez do LASSO.

Eu pessoalmente recomendo usar o Garotte não negativo (NNG) [1], pois é consistente em termos de estimativa e seleção de variáveis ​​[2]. Ao contrário do LASSO e da regressão de crista, o NNG requer uma estimativa inicial que é então reduzida em direção à origem. No artigo original, Breiman recomenda a solução de mínimos quadrados para a estimativa inicial (no entanto, você pode querer iniciar a pesquisa a partir de uma solução de regressão de crista e usar algo como GCV para selecionar o parâmetro de penalidade).

Em termos de software disponível, implementei o NNG original no MATLAB (com base no código FORTRAN original de Breiman). Você pode baixá-lo em:

http://www.emakalic.org/blog/wp-content/uploads/2010/04/nngarotte.zip

BTW, se você preferir uma solução bayesiana, verifique [4,5].

Referências:

[1] Breiman, L. Melhor Regressão de Subconjuntos Utilizando a Não-Negativa Garrote Technometrics, 1995, 37, 373-384

[2] Yuan, M. & Lin, Y. No estimador garrotte não negativo Journal of the Royal Statistical Society (Série B), 2007, 69, 143-161

[3] Zou, H. & Hastie, T. Regularização e seleção de variáveis ​​através da rede elástica Journal of the Royal Statistical Society (Série B), 2005, 67, 301-320

[4] Park, T. & Casella, G. O jornal Bayesian Lasso da Associação Estatística Americana, 2008, 103, 681-686.

[5] Kyung, M .; Gill, J .; Ghosh, M. & Casella, G. Regressão Penalizada, Erros Padrão e Análise Bayesiana de Lassos Bayesian, 2010, 5, 369-412

emakalic
fonte
2
Você poderia ser mais específico sobre ridge vs lasso? A seleção automática de variáveis ​​é a única razão para preferir o laço?
Chogg
42

Ridge ou laço são formas de regressões lineares regularizadas. A regularização também pode ser interpretada como anterior em um método de estimativa máxima a posteriori. Sob essa interpretação, a cordilheira e o laço fazem suposições diferentes sobre a classe de transformação linear que inferem para relacionar dados de entrada e saída. Na cordilheira, os coeficientes da transformação linear são distribuídos normalmente e no laço são distribuídos por Laplace. No laço, isso torna mais fácil que os coeficientes sejam zero e, portanto, mais fácil eliminar parte de sua variável de entrada por não contribuir para a saída.

Existem também algumas considerações práticas. A crista é um pouco mais fácil de implementar e mais rápida de calcular, o que pode ser importante dependendo do tipo de dados que você possui.

Se você implementou os dois, use subconjuntos de dados para encontrar a crista e o laço e compare o desempenho deles com os dados deixados de fora. Os erros devem lhe dar uma idéia de qual usar.

Hbar
fonte
8
Não entendi - como você saberia se seus coeficientes são de local ou normalmente distribuídos?
ihadanny
1
Por que a regressão de Ridge é mais rápida de calcular?
Archie #
4
@Hbar: "A regularização também pode ser interpretada como anterior em um método de estimativa máximo a posteriori.": Você poderia explicar esta parte em mais detalhes com símbolos matemáticos ou pelo menos fornecer uma referência? Obrigado!
Mathmath 17/09/17
2
@ihadanny Você provavelmente não saberia, e esse é o ponto. Você só pode decidir qual manter a posteriori .
Firebug
30

Geralmente, quando você tem muitos efeitos de tamanho pequeno / médio, deve usar o cume. Se você tiver apenas algumas variáveis ​​com efeito médio / grande, vá com laço. Hastie, Tibshirani, Friedman

Gary
fonte
4
Mas quando você tem algumas variáveis, convém mantê-las todas em seus modelos, se tiverem efeitos médios / grandes, o que não será o caso no laço, pois pode remover uma delas. Você pode explicar isso em detalhes? Sinto que, quando você tem muitas variáveis, usamos o Lasso para remover variáveis ​​desnecessárias e não cume.
Aditya bhandari 11/17