Quando a regularização L1 funcionará melhor que L2 e vice-versa?


30

Nota: Eu sei que L1 tem propriedade de seleção de recurso. Estou tentando entender qual escolher quando a seleção de recursos é completamente irrelevante.

  1. Como decidir qual regularização (L1 ou L2) usar?
  2. Quais são os prós e os contras de cada regularização L1 / L2?
  3. É recomendável primeiro fazer a seleção de recursos usando L1 e aplicar L2 nessas variáveis ​​selecionadas?

2
Observe que "seleção de recurso L1" deve ser chamada de regularização do espaço de recurso; há muitas vias melhores métodos para fazer a seleção de características entendidas como a obtenção de informação que é relevante para o problema modelado.

@mbq: Estou curioso para saber quais "métodos muito melhores" você quis dizer aqui?
Ameba diz Reinstate Monica

11
Como os enumerados aqui .

Respostas:


31

Como decidir qual regularização (L1 ou L2) usar?

Qual é o teu objetivo? Ambos podem melhorar a generalização do modelo penalizando coeficientes, já que recursos com relação oposta ao resultado podem "compensar" um ao outro (um grande valor positivo é contrabalançado por um grande valor negativo). Isso pode ocorrer quando há recursos colineares. Pequenas alterações nos dados podem resultar em estimativas de parâmetros dramaticamente diferentes (estimativas de alta variação). A penalização pode restringir os dois coeficientes a serem menores. (Hastie et al., Elements of Statistical Learning , 2ª edição, p. 63)

Quais são os prós e os contras de cada regularização L1 / L2?

A regularização L1 pode abordar o problema da multicolinearidade restringindo a norma do coeficiente e fixando alguns valores do coeficiente em 0. Computacionalmente, a regressão de Lasso (regressão com uma penalidade de L1) é um programa quadrático que requer algumas ferramentas especiais para resolver. Quando você tem mais recursos do que as observações , o laço manterá no máximo coeficientes diferentes de zeroNN . Dependendo do contexto, pode não ser o que você deseja.

A regularização L1 às vezes é usada como método de seleção de recurso. Suponha que você tenha algum tipo de limitação no número de recursos que você pode usar (porque a coleta de dados para todos os recursos é cara ou você tem restrições de engenharia rígidas sobre quantos valores pode armazenar, etc.). Você pode tentar ajustar a penalidade L1 para atingir o número desejado de recursos diferentes de zero.

A regularização de L2 pode resolver o problema da multicolinearidade restringindo a norma do coeficiente e mantendo todas as variáveis. É improvável estimar um coeficiente para ser exatamente 0. Isso não é necessariamente uma desvantagem, a menos que um vetor de coeficiente esparso seja importante por algum motivo.

Na configuração de regressão, é a solução "clássica" para o problema de estimar uma regressão com mais recursos do que observações. A regularização de L2 pode estimar um coeficiente para cada característica, mesmo que haja mais características do que observações (de fato, essa foi a motivação original para a "regressão de crista").

Como alternativa, a rede elástica permite a regularização de L1 e L2 como casos especiais. Um caso de uso típico para um cientista de dados na indústria é que você só quer escolher o melhor modelo, mas não se importa necessariamente se ele é penalizado usando L1, L2 ou ambos. A rede elástica é agradável em situações como estas.

É recomendável primeiro fazer a seleção de recursos usando L1 e aplicar L2 nessas variáveis ​​selecionadas?

Não estou familiarizado com uma publicação propondo um pipeline L1-então-L2, mas isso provavelmente é apenas ignorância da minha parte. Não parece haver nada de errado com isso. Eu faria uma revisão de literatura.

Existem alguns exemplos de pipelines "faseados" semelhantes. Um é o "laço relaxado", que aplica a regressão do laço duas vezes , uma vez para selecionar de um grupo grande para um pequeno grupo de recursos e, em segundo, estimar coeficientes para uso em um modelo. Isso usa validação cruzada em cada etapa para escolher a magnitude da penalidade. O raciocínio é que, na primeira etapa, você faz a validação cruzada e provavelmente escolherá uma penalidade grande para filtrar preditores irrelevantes; na segunda etapa, você validará cruzadamente e provavelmente escolherá uma penalidade menor (e, portanto, coeficientes maiores). Isso é mencionado brevemente em Elements of Statistical Learning, com uma citação de Nicolai Meinshausen ("Relaxed Lasso". Estatísticas computacionais e análise de dados Volume 52, Edição 1, 15 de setembro de 2007, pp 374-393).

O usuário @amoeba também sugere um pipeline de L1 e OLS; isso pode ser bom porque ele possui apenas 1 hiperparâmetro para a magnitude da penalidade de L1; portanto, seria necessário menos trabalho.

Um problema que pode surgir com qualquer pipeline de análise "faseado" que executa algumas etapas e depois outras separadamente é que não há "visibilidade" entre esses algoritmos diferentes; portanto, um processo herda qualquer espião de dados que ocorreu nas etapas anteriores. Este efeito não é desprezível; modelagem mal concebida pode resultar em modelos de lixo.

Uma maneira de proteger contra os efeitos colaterais da espionagem de dados é validar cruzadamente todas as suas opções. No entanto, o aumento dos custos computacionais pode ser proibitivo.


Desculpe, não segui a resposta ao meu terceiro ponto. Você pode explicar?
GeorgeOfTheRF 28/11

11
É tudo uma questão de explicar corretamente o otimismo. Pelo mesmo motivo que medimos o desempenho em dados fora da amostra, é necessário executar todas as etapas de filtragem / pré-processamento de uma maneira que não permita vazamento de informações entre as etapas. Se você selecionar a seleção de todo o conjunto de dados e executar algumas análises, encontrará um sinal no ruído.
Sycorax diz Restabelecer Monica

Está bem. Então, qual é a abordagem recomendada para a seleção de recursos antes de executar um modelo de ML?
GeorgeOfTheRF 28/11

3
Minha recomendação é "não". Veja aqui um exemplo de como isso pode dar errado: stats.stackexchange.com/questions/164048/… Mas isso é suficientemente distinto da sua pergunta inicial e você deve simplesmente fazer uma nova pergunta. (Isso é para sua vantagem, pois você poderá acumular representantes adicionais na nova pergunta.)
Sycorax diz Reinstate Monica

3
(+1) Não vi L1 seguido por L2 discutido na literatura, mas isso faz sentido para mim. Existem L1 seguidos por OLS (também conhecido como "LARS-OLS híbrido") e L1 seguidos por L1 (laço relaxado), portanto, pode-se considerar L1 seguido por L2. Desde que ambos os hiperparâmetros sejam validados cruzadamente, deve ser uma estratégia de regularização viável.
amoeba diz Restabelecer Monica em

19

De um modo geral, se você deseja uma previsão ideal, use L2. Se você deseja parcimônia em algum sacrifício de discriminação preditiva, use L1. Mas observe que a parcimônia pode ser ilusória, por exemplo, repetir o processo do laço usando o bootstrap geralmente revelará instabilidade significativa na lista de recursos "selecionados", especialmente quando os preditores estão correlacionados entre si.


"Previsão ideal" - Você quer dizer que L2 em geral fornece melhor precisão em dados invisíveis?
GeorgeOfTheRF 28/11

3
Sim, especialmente no que diz respeito à discriminação preditiva.
Frank Harrell

11
+1 neste comentário (e na resposta). Eu me deparei com esse fenômeno de ser geralmente melhor em termos de discriminação preditiva (ou seja, tarefas de classificação) do que e isso sempre me incomoda. solução. :)L2L1
usεr11852 diz Reinstate Monic

2
A discriminação preditiva é um conceito muito mais geral do que a classificação. Mas, a seu ponto, geralmente é melhor que porque não gasta nenhuma informação tentando ser parcimonioso. Permite adicionar muitos efeitos pequenos. L2L1
31717 Frank Fellowski

Legal, obrigado pelo esclarecimento. Faz sentido. (Sim, você está certo; associo a DP a medidas relacionadas à probabilidade de classificação correta e / ou ordenação de sujeitos em termos de risco, por isso fui rápido em dizer "tarefas de classificação"; meu mal, devo ter mais cuidado.)
usεr11852 diz Reinstate Monic
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.