Esta pergunta foi feita no CV há alguns anos atrás, parece que vale a pena repensar à luz de 1) ordem de magnitude melhor tecnologia computacional (por exemplo, computação paralela, HPC etc) e 2) técnicas mais recentes, por exemplo [3].
Primeiro, algum contexto. Vamos supor que o objetivo não seja o teste de hipóteses, não a estimativa de efeitos, mas a previsão no conjunto de testes não visto. Portanto, nenhum peso é dado a qualquer benefício interpretável. Segundo, digamos que você não pode descartar a relevância de qualquer preditor na consideração do assunto, ou seja. todos parecem plausíveis individualmente ou em combinação com outros preditores. Terceiro, você se confronta com (centenas de) milhões de preditores. Quarto, digamos que você tenha acesso à AWS com um orçamento ilimitado, portanto, o poder da computação não é uma restrição.
Os motivos comuns para seleção de variáveis são: 1) eficiência; mais rápido para ajustar um modelo menor e mais barato para coletar menos preditores, 2) interpretação; conhecer as variáveis "importantes" fornece informações sobre o processo subjacente [1].
Hoje é sabido que muitos métodos de seleção de variáveis são ineficazes e muitas vezes completamente perigosos (por exemplo, regressão passo a passo) [2].
Em segundo lugar, se o modelo selecionado for bom, não será necessário reduzir a lista de preditores. O modelo deve fazer isso por você. Um bom exemplo é o laço, que atribui um coeficiente zero a todas as variáveis irrelevantes.
Estou ciente de que algumas pessoas defendem o uso de um modelo de "elefante", ou seja. atire todos os preditores concebíveis para o ajuste e corra com ele [2].
Existe algum motivo fundamental para fazer a seleção de variáveis se o objetivo for precisão preditiva?
[1] Reunanen, J. (2003). Sobreajuste na comparação entre métodos de seleção de variáveis. The Journal of Machine Learning Research, 3, 1371-1382.
[2] Harrell, F. (2015). Estratégias de modelagem de regressão: com aplicações em modelos lineares, regressão logística e ordinal e análise de sobrevivência. Springer.
[3] Taylor, J. e Tibshirani, RJ (2015). Aprendizado estatístico e inferência seletiva. Anais da Academia Nacional de Ciências, 112 (25), 7629-7634.
[4] Zhou, J., Foster, D., Stine, R. e Ungar, L. (2005, agosto). Seleção de recursos de streaming usando investimento alfa. Em Anais da décima primeira conferência internacional da ACM SIGKDD sobre descoberta de conhecimento em mineração de dados (pp. 384-393). ACM.
Respostas:
Há rumores há anos que o Google usa todos os recursos disponíveis na construção de seus algoritmos preditivos. Até o momento, no entanto, não houve isenções de responsabilidade, explicações ou documentos técnicos que esclarecessem e / ou contestassem esse boato. Nem mesmo suas patentes publicadas ajudam no entendimento. Como resultado, ninguém externo ao Google sabe o que está fazendo, pelo que sei.
/ * Atualização em setembro de 2019, um evangelista do Google Tensorflow registrou uma apresentação ao afirmar que os engenheiros do Google avaliam regularmente mais de 5 bilhões de parâmetros para a versão atual do PageRank . * /
Como observa o OP, um dos maiores problemas na modelagem preditiva é a fusão entre o teste clássico de hipóteses e a especificação cuidadosa do modelo versus a mineração pura de dados. Os treinados classicamente podem ser bastante dogmáticos sobre a necessidade de "rigor" no design e desenvolvimento de modelos. O fato é que, quando confrontado com um grande número de preditores candidatos e vários alvos possíveis ou variáveis dependentes, a estrutura clássica não funciona, mantém ou fornece orientação útil. Inúmeros trabalhos recentes descrevem esse dilema do brilhante artigo de Chattopadhyay e Lipson Data Smashing: Descobrindo a Ordem Espreita nos Dados http://rsif.royalsocietypublishing.org/content/royinterface/11/101/20140826.full.pdf
Ao artigo da AER do ano passado sobre Problemas de Política de Previsão por Kleinberg, et al. https://www.aeaweb.org/articles?id=10.1257/aer.p20151023, que defende a mineração e a previsão de dados como ferramentas úteis na formulação de políticas econômicas, citando casos em que "a inferência causal não é central ou mesmo necessária. "
O fato é que a pergunta maior, de US $ 64.000, é a ampla mudança de pensamento e os desafios para a estrutura clássica de teste de hipóteses implícita, por exemplo, neste simpósio do Edge.org sobre pensamento científico "obsoleto" https://www.edge.org/ respostas / que idéia científica está pronta para a aposentadoria , bem como este artigo recente de Eric Beinhocker sobre a "nova economia", que apresenta algumas propostas radicais para integrar disciplinas amplamente diferentes, como economia comportamental, teoria da complexidade, modelo preditivo desenvolvimento, rede e teoria de portfólio como plataforma para implementação e adoção de políticas https://evonomics.com/the-deep-and-profound-changes-in-economics-thinking/Desnecessário dizer que essas questões vão muito além das preocupações econômicas e sugerem que estamos passando por uma mudança fundamental nos paradigmas científicos. As visões inconstantes são tão fundamentais quanto as distinções entre reducionista, a Navalha de Occam, como a construção de modelos, e o amplo Princípio da Plenitude de Epicurus, ou várias explicações que afirmam que, se várias descobertas explicam alguma coisa, retenha todas elas ... https: // pt. wikipedia.org/wiki/Principle_of_plenitude
É claro que caras como Beinhocker não têm nenhum ônus prático, nas preocupações das trincheiras com relação a soluções estatísticas aplicadas a esse paradigma em evolução. Com as perguntas minuciosas da seleção variável de dimensão ultra-alta, o OP é relativamente inespecífico em relação a abordagens viáveis para a construção de modelos que podem alavancar, por exemplo, Lasso, LAR, algoritmos passo a passo ou "modelos de elefantes" que usam todas as informações disponíveis. A realidade é que, mesmo com a AWS ou um supercomputador, você não pode usar todas as informações disponíveis ao mesmo tempo - simplesmente não há RAM suficiente para carregar tudo. O que isso significa? Soluções alternativas foram propostas, por exemplo, a descoberta da NSF em conjuntos de dados complexos ou maciços: temas estatísticos comuns"dividir e conquistar" algoritmos para mineração maciça de dados, por exemplo, artigo de Wang, et al., Pesquisa de métodos estatísticos e computação para big data http://arxiv.org/pdf/1502.07989.pdf , bem como Leskovec, et al. book Mineração de conjuntos de dados maciços http://www.amazon.com/Mining-Massive-Datasets-Jure-Leskovec/dp/1107077230/ref=sr_1_1?ie=UTF8&qid=1464528800&sr=8-1&keywords=Mining+of+Massive+Datasets
Atualmente, existem literalmente centenas, senão milhares de trabalhos, que lidam com vários aspectos desses desafios, todos propondo mecanismos analíticos muito diferentes como o núcleo dos algoritmos de “dividir e conquistar”; modelos não supervisionados de "aprendizado profundo"; teoria da matriz aleatória aplicada à construção maciça de covariância; Modelos de tensores bayesianos para regressão logística supervisionada clássica e muito mais. Quinze anos atrás, o debate se concentrou amplamente em questões relativas aos méritos relativos das soluções hierárquicas bayesianas versus modelos de misturas finitas freqüentes. Em um artigo abordando essas questões, Ainslie, et al. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.197.788&rep=rep1&type=pdfchegou à conclusão de que as diferentes abordagens teóricas, na prática, produziram resultados amplamente equivalentes, com exceção de problemas envolvendo dados esparsos e / ou de alta dimensão, nos quais os modelos de HB tinham a vantagem. Hoje, com o advento das soluções alternativas de D&C, qualquer modelo de arbitragem que a HB possa ter desfrutado historicamente está sendo eliminado.
A lógica básica dessas soluções alternativas de D&C são, em geral, extensões da famosa técnica de floresta aleatória de Breiman, que se baseava na reamostragem inicializada de observações e recursos. Breiman fez seu trabalho no final dos anos 90 em um único CPU quando dados massivos significaram algumas dezenas de shows e alguns milhares de recursos. Nas plataformas massivamente paralelas de múltiplos núcleos de hoje, é possível executar algoritmos analisando terabytes de dados contendo dezenas de milhões de recursos, criando milhões de mini-modelos "RF" em poucas horas.
Há várias questões importantes saindo disso tudo. É preciso se preocupar com a perda de precisão devido à natureza aproximada dessas soluções alternativas. Esta questão foi abordada por Chen e Xie em seu artigo, Uma abordagem de divisão e conquista para análise de dados extraordinariamente grandes http://dimacs.rutgers.edu/TechnicalReports/TechReports/2012/2012-01-01.pdf, onde eles concluem que as aproximações são indistinguivelmente diferentes dos modelos de "informações completas".
Uma segunda preocupação que, até onde eu sei, não foi adequadamente abordada pela literatura, tem a ver com o que é feito com os resultados (ou seja, os "parâmetros") de potencialmente milhões de mini-modelos preditivos, uma vez que as soluções alternativas foram enrolados e resumidos. Em outras palavras, como se executa algo tão simples quanto "pontuar" novos dados com esses resultados? Os coeficientes do mini-modelo devem ser salvos e armazenados ou simplesmente é executado novamente o algoritmo d & c em novos dados?
Em seu livro, Numbers Rule Your World , Kaiser Fung descreve o dilema enfrentado pela Netflix quando apresentado com um conjunto de apenas 104 modelos entregues pelos vencedores de sua competição. Os vencedores haviam realmente minimizado o MSE contra todos os outros concorrentes, mas isso se traduziu em apenas uma melhoria de várias casas decimais na precisão da escala de classificação do tipo Likert de 5 pontos usada por seu sistema de recomendação de filmes. Além disso, a manutenção de TI necessária para esse conjunto de modelos custa muito mais do que qualquer economia vista com a "melhoria" na precisão do modelo.
Depois, há toda a questão de saber se a "otimização" é possível com informações dessa magnitude. Por exemplo, Emmanuel Derman, físico e engenheiro financeiro, em seu livro My Life as a Quant sugere que a otimização é um mito insustentável, pelo menos na engenharia financeira.
Finalmente, questões importantes sobre a importância relativa dos recursos com um grande número de recursos ainda precisam ser abordadas.
Não há respostas fáceis para perguntas sobre a necessidade de seleção de variáveis e os novos desafios abertos pelas atuais soluções epicuristas ainda precisam ser resolvidas. O ponto principal é que somos todos cientistas de dados agora.
**** EDIT *** Referências
Chattopadhyay I, Lipson H. 2014 Smashing de dados: descobrindo a ordem oculta dos dados. JR Soc. Interface 11: 20140826. http://dx.doi.org/10.1098/rsif.2014.0826
Kleinberg, Jon, Jens Ludwig, Sendhil Mullainathan e Ziad Obermeyer. 2015. "Problemas da política de previsão". American Economic Review, 105 (5): 491-95. DOI: 10.1257 / aer.p20151023
Edge.org, 2014 Pergunta anual: QUE IDÉIA CIENTÍFICA ESTÁ PRONTA PARA APOSENTAR? https://www.edge.org/responses/what-scientific-idea-is-ready-for-retirement
Eric Beinhocker, Como as profundas mudanças na economia tornam irrelevantes os debates sobre esquerda versus direita, 2016, Evonomics.org. https://evonomics.com/the-deep-and-profound-changes-in-economics-thinking/
Princípio Epicurus de múltiplas explicações: mantenha todos os modelos. Wikipedia https://www.coursehero.com/file/p6tt7ej/Epicurus-Principle-of-Multiple-Explanations-Keep-all-models-that-are-consistent/
NSF, descoberta em conjuntos de dados complexos ou maciços: temas estatísticos comuns, um workshop financiado pela National Science Foundation, de 16 a 17 de outubro de 2007 https://www.nsf.gov/mps/dms/documents/DiscoveryInComplexOrMassiveDatasets.pdf
Métodos Estatísticos e Computação para Big Data, Documento de Trabalho de Chun Wang, Ming-Hui Chen, Elizabeth Schifano, Jing Wu e Jun Yan, 29 de outubro de 2015 http://arxiv.org/pdf/1502.07989.pdf
Jure Leskovec, Anand Rajaraman, Jeffrey David Ullman, Mineração de conjuntos de dados maciços, Cambridge University Press; 2 edição (29 de dezembro de 2014) ISBN: 978-1107077232
Matrizes de Covariância de Amostras Grandes e Análise de Dados de Alta Dimensão (Série Cambridge de Matemática Estatística e Probabilística), de Jianfeng Yao, Shurong Zheng, Zhidong Bai, Cambridge University Press; 1 edição (30 de março de 2015) ISBN: 978-1107065178
RICK L. ANDREWS, ANDREW AINSLIE e IMRAN S. CURRIM, uma comparação empírica de modelos Logit Choice com representações discretas versus contínuas de heterogeneidade, Journal of Marketing Research, 479 vol. XXXIX (novembro de 2002), 479–487 http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.197.788&rep=rep1&type=pdf
Uma abordagem de divisão e conquista para análise de dados extraordinariamente grandes, Xueying Chen e Minge Xie, Relatório Técnico DIMACS 2012-01, janeiro de 2012 http://dimacs.rutgers.edu/TechnicalReports/TechReports/2012/2012-01.pdf
Kaiser Fung, números governam seu mundo: a influência oculta das probabilidades e estatísticas sobre tudo o que você faz, educação McGraw-Hill; 1 edição (15 de fevereiro de 2010) ISBN: 978-0071626538
Emmanuel Derman, Minha vida como quant: reflexões sobre física e finanças, Wiley; 1 edição (11 de janeiro de 2016) ISBN: 978-0470192733
* Atualização em novembro de 2017 *
O livro de 2013 de Nathan Kutz, Modelagem Orientada a Dados e Computação Científica: Métodos para Sistemas Complexos e Big Data é uma excursão matemática e focada no PDE na seleção de variáveis, bem como ferramentas e métodos de redução de dimensão. Uma excelente introdução de 1 hora ao seu pensamento pode ser encontrada neste vídeo do Youtube de junho de 2017 Descoberta orientada por dados de sistemas dinâmicos e PDEs . Nele, ele faz referências aos últimos desenvolvimentos neste campo. https://www.youtube.com/watch?feature=youtu.be&v=Oifg9avnsH4&app=desktop
fonte
Em termos de previsão, você provavelmente precisará pensar na questão de quão rapidamente o modelo aprende os recursos importantes. Mesmo pensando em OLS, isso fornecerá algo como seleção de modelo, com dados suficientes. Mas sabemos que ele não converge para esta solução com rapidez suficiente - por isso, procuramos algo melhor.
A maioria dos métodos está assumindo o tipo de betas / coeficientes que serão encontrados (como uma distribuição anterior em um modelo bayesiano). Eles funcionam melhor quando essas premissas se mantêm. Por exemplo, a regressão cume / laço assume que a maioria dos betas está na mesma escala com a maioria próxima de zero. Eles não funcionam tão bem para as regressões "agulhas no palheiro", onde a maioria dos betas é zero e alguns betas são muito grandes (ou seja, as escalas são muito diferentes). A seleção de recursos pode funcionar melhor aqui - o laço pode ficar preso entre o ruído reduzido e o sinal intocado. A seleção de recursos é mais instável - um efeito é "sinal" ou "ruído".
Em termos de decisão - você precisa ter uma idéia de que tipo de variáveis preditivas você possui. Você tem alguns realmente bons? Ou todas as variáveis são fracas? Isso guiará o perfil dos betas que você terá. E quais métodos de penalidade / seleção você usa (cavalos para percursos e tudo isso).
A seleção de recursos também não é ruim, mas algumas das aproximações mais antigas devido a restrições computacionais não são mais boas (passo a passo, adiante). A média do modelo usando a seleção de recursos (todos os modelos de 1 var, 2 modelos de var, etc. ponderados por seu desempenho) fará um bom trabalho na previsão. Mas isso está penalizando essencialmente os betas pelo peso dado aos modelos com essa variável excluída - mas não diretamente - e não de um modo de problema de otimização convexo.
fonte
Eu lhe dou a perspectiva da indústria.
As indústrias não gostam de gastar dinheiro em sensores e sistemas de monitoramento dos quais não sabem quanto se beneficiarão.
Por exemplo, não quero citar, então imagine um componente com 10 sensores coletando dados a cada minuto. O proprietário do ativo se vira para mim e me pergunta até que ponto você pode prever o comportamento do meu componente com esses dados de 10 sensores? Em seguida, eles realizam uma análise de custo-benefício.
Então, eles têm o mesmo componente com 20 sensores, perguntam-me novamente como você pode prever o comportamento do meu componente com esses dados de 20 sensores? Eles realizam outra análise de custo-benefício.
Em cada um desses casos, eles comparam o benefício com o custo do investimento devido à instalação dos sensores. (Isso não é apenas adicionar um sensor de US $ 10 a um componente. Muitos fatores desempenham um papel). Aqui é onde uma análise de seleção variável pode ser útil.
fonte
Como parte de um algoritmo para aprender um modelo puramente preditivo, a seleção de variáveis não é necessariamente ruim do ponto de vista do desempenho nem é automaticamente perigosa. No entanto, existem alguns problemas que devemos estar cientes.
Para tornar a pergunta um pouco mais concreta, vamos considerar o problema de regressão linear com para e e sendo vetores dimensionais de variáveis e parâmetros, respectivamente. O objetivo é encontrar uma boa aproximação da função que é a previsão de dada . Isso pode ser conseguido estimandoi = 1 , ... , N X i p p x ↦ E ( Y | X = x ) = X T β , Y X = x P
Algoritmos de seleção passo a passo , como a seleção de variáveis para frente e para trás, podem ser vistos como tentativas aproximadas de resolver um melhor problema de seleção de subconjunto, que é computacionalmente difícil (tão difícil que as melhorias no poder computacional pouco importam). O interesse é encontrar para cada o melhor (ou pelo menos um bom) modelo com variáveis. Posteriormente, podemos otimizar sobre .k=1,…,min(N,p) k k
O perigo desse procedimento de seleção de variáveis é que muitos resultados distributivos padrão são inválidos condicionalmente na seleção de variáveis. Isso vale para testes padrão e intervalos de confiança, e é um dos problemas que Harrell [2] está alertando. Breiman também alertou sobre a seleção de modelo baseado no exemplo Mallows' em The Little Bootstrap ... . O Mallows , ou AIC, não leva em consideração a seleção do modelo e eles fornecerão erros de previsão excessivamente otimistas.Cp Cp
No entanto, a validação cruzada pode ser usada para estimar o erro de previsão e para selecionar , e a seleção de variáveis pode alcançar um bom equilíbrio entre viés e variância. Isso é particularmente verdadeiro se tiver algumas coordenadas grandes com o restante próximo a zero como menciona @probabilityislogic.k β −
Métodos de contração , como regressão de cume e laço, podem obter uma boa relação entre viés e variância sem a seleção explícita de variáveis. No entanto, como o OP menciona, o laço faz seleção implícita de variáveis. Na verdade, não é o modelo, mas o método para ajustar o modelo que faz a seleção de variáveis. Nessa perspectiva, a seleção de variáveis (implícita ou explícita) é simplesmente parte do método para ajustar o modelo aos dados, e deve ser considerada como tal.
Os algoritmos para calcular o estimador de laço podem se beneficiar da seleção de variáveis (ou triagem). Em Aprendizado Estatístico com Sparsity: The Lasso and Generalizations , Seção 5.10, descreveu como a triagem, conforme implementada em
glmnet
, é útil. Isso pode levar a um cálculo substancialmente mais rápido do estimador de laço.Uma experiência pessoal é de um exemplo em que a seleção de variáveis tornou possível ajustar um modelo mais complicado (um modelo aditivo generalizado) usando as variáveis selecionadas. Os resultados da validação cruzada indicaram que esse modelo era superior a várias alternativas embora não a uma floresta aleatória. Se houvesse gamsel que integra modelos de aditivos generalizados à seleção de variáveis eu poderia ter pensado em experimentar também.− − −
Edit: Desde que escrevi esta resposta, há um artigo sobre o aplicativo específico que eu tinha em mente. O código R para reproduzir os resultados no papel está disponível.
Em resumo , direi que a seleção de variáveis (de uma forma ou de outra) é e continuará sendo útil mesmo para propósitos puramente preditivos como uma maneira de controlar a troca de viés e variância. Se não for por outros motivos, pelo menos porque modelos mais complicados podem não ser capazes de lidar com um número muito grande de variáveis prontas para uso. No entanto, com o passar do tempo, veremos naturalmente desenvolvimentos como o gamsel que integram a seleção de variáveis à metodologia de estimativa.− −
É claro que é sempre essencial considerarmos a seleção de variáveis como parte do método de estimativa. O perigo é acreditar que a seleção de variáveis funciona como um oráculo e identifica o conjunto correto de variáveis. Se acreditarmos nisso e procedermos como se as variáveis não tivessem sido selecionadas com base nos dados, corremos o risco de cometer erros.
fonte
Permita-me comentar a afirmação: "... ajustar k parâmetros a n <k observações simplesmente não vai acontecer".
Em quimiometria, estamos frequentemente interessados em modelos preditivos, e a situação k >> n é frequentemente encontrada (por exemplo, em dados espectroscópicos). Esse problema geralmente é resolvido simplesmente projetando as observações em um subespaço de dimensão inferior a, onde a <n, antes da regressão (por exemplo, Regressão do Componente Principal). Usando regressão de mínimos quadrados parciais, a projeção e a regressão são realizadas simultaneamente, favorecendo a qualidade da previsão. Os métodos mencionados encontram pseudo-inversas ótimas para uma covariância (singular) ou matriz de correlação, por exemplo, por decomposição de valor singular.
A experiência mostra que o desempenho preditivo de modelos multivariados aumenta quando variáveis ruidosas são removidas. Portanto, mesmo se nós - de uma maneira significativa - somos capazes de estimar parâmetros k com apenas n equações (n <k), buscamos modelos parcimoniosos. Para esse fim, a seleção de variáveis se torna relevante e muita literatura quimiométrica é dedicada a esse assunto.
Embora a previsão seja um objetivo importante, os métodos de projeção oferecem ao mesmo tempo informações valiosas sobre, por exemplo, padrões de dados e relevância de variáveis. Isso é facilitado principalmente por diversos modelos, como pontuações, cargas, resíduos, etc.
A tecnologia quimiométrica é amplamente utilizada, por exemplo, no setor em que realmente contam previsões confiáveis e precisas.
fonte
Em vários casos conhecidos, sim, a seleção de variáveis não é necessária. O aprendizado profundo tornou-se um pouco exagerado exatamente por esse motivo.
Por exemplo, quando uma rede neural complicada ( http://cs231n.github.io/convolutional-networks/ ) tenta prever se uma imagem centralizada contém um rosto humano, os cantos da imagem tendem a ter um valor preditivo mínimo. A modelagem tradicional e a seleção de variáveis teriam o modelador removido dos pixels dos cantos como preditores; no entanto, a rede neural complicada é inteligente o suficiente para descartar essencialmente esses preditores automaticamente. Isso é verdade para a maioria dos modelos de aprendizado profundo que tentam prever a presença de algum objeto em uma imagem (por exemplo, carros com acionamento automático "prevendo" marcações de pista, obstáculos ou outros carros em quadros de streaming de vídeo a bordo).
O aprendizado profundo provavelmente é um exagero para muitos problemas tradicionais, como onde os conjuntos de dados são pequenos ou onde o conhecimento do domínio é abundante; portanto, a seleção tradicional de variáveis provavelmente permanecerá relevante por um longo tempo, pelo menos em algumas áreas. No entanto, o aprendizado profundo é ótimo quando você deseja criar uma solução "muito boa" com o mínimo de intervenção humana. Pode levar muitas horas para criar e selecionar preditores para reconhecer dígitos manuscritos em imagens, mas com uma rede neural complicada e seleção de zero variável, posso ter um modelo de ponta em pouco menos de 20 minutos usando o TensorFlow do Google ( https://www.tensorflow.org/versions/r0.8/tutorials/mnist/pros/index.html ).
fonte