Eu tenho um grande conjunto de dados que consiste nos valores de várias centenas de variáveis financeiras que podem ser usadas em uma regressão múltipla para prever o comportamento de um fundo de índice ao longo do tempo. Eu gostaria de reduzir o número de variáveis para dez ou mais, mantendo o máximo de poder preditivo possível. Adicionado: o conjunto reduzido de variáveis precisa ser um subconjunto do conjunto de variáveis original para preservar o significado econômico das variáveis originais. Assim, por exemplo, não devo terminar com combinações lineares ou agregados das variáveis originais.
Alguns pensamentos (provavelmente ingênuos) sobre como fazer isso:
- Execute uma regressão linear simples com cada variável e escolha os dez com os maiores valores de . Obviamente, não há garantia de que as dez melhores variáveis individuais combinadas sejam o melhor grupo de dez.
- Execute uma análise de componentes principais e tente encontrar as dez variáveis originais com as maiores associações com os primeiros eixos principais.
Eu não acho que posso executar uma regressão hierárquica porque as variáveis não estão realmente aninhadas. Tentar todas as combinações possíveis de dez variáveis é inviável computacionalmente porque existem muitas combinações.
Existe uma abordagem padrão para resolver esse problema de redução do número de variáveis em uma regressão múltipla?
Parece que isso seria um problema suficientemente comum e haveria uma abordagem padrão.
Uma resposta muito útil seria aquela que não apenas menciona um método padrão, mas também fornece uma visão geral de como e por que ele funciona. Como alternativa, se não houver uma abordagem padrão, mas múltiplas com diferentes pontos fortes e fracos, uma resposta muito útil seria aquela que discuta seus prós e contras.
O comentário do whuber abaixo indica que a solicitação no último parágrafo é muito ampla. Em vez disso, aceitaria como boa resposta uma lista das principais abordagens, talvez com uma breve descrição de cada uma. Depois de ter os termos, posso desenterrar os detalhes de cada um.
Respostas:
Esse problema geralmente é chamado de Seleção de subconjunto e existem várias abordagens diferentes. Veja o Google Scholar para uma visão geral dos artigos relacionados .
fonte
O método 1 não funciona. O método 2 tem esperança, dependendo de como você o faz. É melhor inserir os componentes principais em ordem decrescente de variação explicada. Uma abordagem mais interpretável é fazer o agrupamento variável e, em seguida, reduzir cada cluster a uma única pontuação (sem usar Y) e ajustar um modelo às pontuações do cluster.
fonte
varclus
função noHmisc
pacote R ou PROC VARCLUS no SAS. A redução de dados pode ajudar no subconjunto de variáveis se você tiver um pouco de cautela; você pode remover um cluster inteiro se seu valor- for 0,3. Nos componentes principais, existem técnicas como a redução de bateria, em que você aproxima os PCs com um subconjunto de suas variáveis constituintes.No capítulo 5 do Data Mining with R, o autor mostra algumas maneiras de escolher os preditores mais úteis. (No contexto da bioinformática, em que cada linha de amostra possui mais de 12.000 colunas!)
Ele primeiro usa alguns filtros com base na distribuição estatística. Por exemplo, se você tiver meia dúzia de preditores, todos com média e sd semelhantes, poderá se safar mantendo apenas um deles.
Ele então mostra como usar uma floresta aleatória para descobrir quais são os preditores mais úteis. Aqui está um exemplo abstrato independente. Você pode ver que eu tenho 5 bons preditores, 5 ruins. O código mostra como manter os melhores 3.
A última abordagem do autor é usar um algoritmo hierárquico de agrupamento para agrupar preditores semelhantes em, digamos, 30 grupos. Se você quiser 30 preditores diversos, escolha um de cada um desses 30 grupos, aleatoriamente.
Aqui está um código, usando os mesmos dados de amostra acima, para escolher 3 das 10 colunas:
Meus dados de amostra não se adequam a essa abordagem, porque eu tenho 5 bons preditores e 5 que são apenas ruído. Se todos os 10 preditores foram ligeiramente correlacionada com
y
, e teve uma boa chance de ser ainda melhor quando usado em conjunto (o que é perfeitamente possível no domínio financeiro), então esta pode ser uma boa abordagem.fonte
Você pode considerar usar um método como o LASSO que regularize os mínimos quadrados, selecionando uma solução que minimize a única norma do vetor de parâmetros. Acontece que, na prática, isso tem o efeito de minimizar o número de entradas diferentes de zero no vetor de parâmetro. Embora o LASSO seja popular em alguns círculos estatísticos, muitos outros métodos relacionados foram considerados no mundo do sensor de compressão.
fonte