Deseja compartilhar seu conteúdo com R-blogueiros? clique aqui se você tiver um blog ou aqui se não tiver.
A edição de junho de 2020 de SERVIÇO apresenta um ensaio altamente perspicaz de Brad Efron, decano dos estatísticos do mundo. O artigo é acompanhado por comentários de vários indicadores estatísticos. Questões importantes, de fato centrais são levantadas. eu esperaria SERVIÇO executa mais peças dessa natureza.
O ensaio pode ser visto como uma atualização do artigo clássico de 2001 de Leo Breiman, sobre duas culturas, estatísticas e aprendizado de máquina (ML) amplamente separadas, atualizando não apenas no sentido do progresso feito desde 2001, mas também na divisão entre a Previsão e Descrição (“Atribuição”) dos objetivos da análise de regressão. (É claro que eu uso o último termo para significar a estimativa de E (Y | X), parametricamente ou não.)
Fornecerei meu próprio comentário aqui e, sendo este um blog de estatísticas / R, trago alguns comentários relacionados ao R. Terei dois temas principais:
- A diferença entre as duas culturas é tão grande hoje como sempre.
- Existem problemas fundamentais nas duas abordagens culturais, com muitas questões do tipo “o imperador não tem roupas”.
Métodos paramétricos vs. não paramétricos
Observe com cuidado que a diferença cultural NÃO é um dos métodos paramétricos x não paramétricos. Por exemplo, estatísticos trabalhavam no k-vizinhos mais próximos já na década de 1950, se não antes. Métodos baseados em árvores, principalmente florestas aleatórias, foram desenvolvidos em grande parte por estatísticos na década de 1970, e sem dúvida as melhores implementações são em R, a linguagem dos estatísticos, em vez de Python, a linguagem dos MLers.
Variação amostral
Em vez disso, acredito que a maior diferença entre as duas culturas envolve variação de amostragem. Ele forma o núcleo das estatísticas, enquanto o ML a ignora. Eu observei isso ao longo dos anos em escritos e declarações de pessoas da ML e em conversas com eles.
Isso foi exemplificado em uma recente troca no Twitter que tive com um pesquisador de destaque em ML. Eu lamentava que o pessoal da ML não se importasse com a variação da amostra, e a pessoa da ML respondeu: “E os modelos causais? Variação amostral não é um problema lá. ” Mas é claro que é uma questão importante. O efeito causal que parece ter sido real ou apenas um acidente de amostragem?
A propósito, isso se estende ao nível da pesquisa, resultando em trabalho estatístico frequentemente focado em assintóticos, enquanto no ML o foco é provar desigualdades finitas sobre os dados em si, sem conexão com a população.
Sinceramente, acho que as pessoas de ML simplesmente não parecem encontrar estatísticas relevantes para seu trabalho, e muitas vezes não sabem muito sobre estatística. Por exemplo, em um livro escrito por outro MLer proeminente, ele recomenda padronizar os dados para a forma média 0, variância-1 antes de realizar a análise da rede neural. De fato, por razões que parecem desconhecidas, isso é obrigatório, pois o método pode não convergir de outra maneira. Mas fiquei chocado ao ver o MLer escrever que a padronização pressupõe uma distribuição gaussiana, o que certamente não é verdade.
R vs. Python (e R vs. R)
Como observado, os estatísticos tendem a usar R, enquanto as pessoas com ML quase universalmente usam Python. Por sua vez, isso decorre do fato de que o ML se tornou basicamente um campo da ciência da computação. O Python é comum, praticamente padrão nos cursos de CS e em grande parte das pesquisas em CS, por isso é natural que os MLers gravitem para esse idioma. R, é claro, tem sido o língua franca de stat.
Tudo bem, mas está aumentando a diferença cultural, em detrimento de ambos os campos. Anos atrás eu escrevi: “R está escrito de estatísticos, para estatísticos “e que R é estatisticamente correto. Infelizmente, na minha opinião, o software Python ML não atende a esse padrão, que novamente resulta da falta geral de conhecimento estatístico em ML. Por outro lado, há vários pacotes de “pipeline completo” em Python, principalmente para classificação de imagens, com nada comparável em R.
Para seu crédito, JJ Allaire, do RStudio, e Wes McKinney, do mundo Python, trabalharam em ferramentas para “traduzir” entre os dois idiomas. Mas um desenvolvedor de R proeminente me diz que há resistência no lado do Python. Espero que isso mude.
Enquanto isso, o próprio R está passando por suas próprias divisões culturais. No nível do idioma, há a divisão R-base vs. Tidyverse. (Considero que este último está levando R na direção errada). Mas, além disso, um segmento grande e crescente de usuários de R vê o idioma apenas como uma ferramenta para disputar dados (por exemplo, filtragem de casos) em vez de estatísticas. Deve ser visto como ambos, e a falta dessa visão será problemática para os usuários de estatísticas nos próximos anos, acredito.
“O imperador não tem nenhuma roupa”
Existem problemas sérios em cada uma das duas culturas. Até agora, os analistas conseguiram ignorá-los alegremente, mas temo que isso não possa continuar.
Uso pesado de validação cruzada:
Efron observa: “Um ingrediente crucial dos métodos modernos de previsão é o paradigma do conjunto de treinamento / teste …” Isso é combinado com a pesquisa em grade para encontrar a “melhor” combinação de parâmetros de ajuste. (Chamado hiperparâmetros no campo ML. O ML tem sua própria terminologia, por exemplo inferência pelo que as pessoas chamam de stat predição. Mais uma divisão cultural.)
Para alguns métodos de ML, o número de parâmetros de sintonia pode ser grande e, quando combinados no produto cartesiano com muitos valores para cada um, temos um espaço de pesquisa muito grande. Isso, por sua vez, levanta um problema de inferência simultâneo, hoje conhecido coloquialmente como p-hacking. A combinação de parâmetros que parece melhor pode estar longe de ser a melhor.
o afinação() função na minha regtools O pacote calcula os intervalos Bonferroni (Dunn) para as várias combinações como uma maneira de lidar parcialmente com o problema. Ele também possui uma ferramenta de exploração gráfica.
Da mesma forma, alguns desses resultados deslumbrantes dos métodos de ML em competições precisam ser tomados com um grão de sal. Presumivelmente, também existe um problema de hackers p; diferentes concorrentes continuam tentando vários valores de parâmetros e ajustes no algoritmo até obterem um valor melhor – seja por uma técnica realmente melhor ou por acidente aleatório. Uma análise de valores de registro de probabilidade seria interessante aqui. Veja também as impressionantes descobertas empíricas na dissertação de Rebecca Roelofs.
Suposições de suavidade:
Para mim, a parte mais interessante e instigante do ensaio de Efron é o material sobre suavidade. Mas isso lembra outro problema do “imperador não tem roupas”.
O fato é que, na vida real, não existe suavidade, pois todas as medições são discretas e não contínuas. Na melhor das hipóteses, a altura humana é medida, digamos, apenas 0,2 cm e a temperatura do ar, digamos 0,1 graus. Portanto, não existem nem as primeiras derivadas, muito menos as de ordem superior. Isso põe em questão a teoria das estatísticas (“Assuma uma segunda derivada contínua …”) e, mais importante, qualquer método de fórmula (em oposição à estética) para escolher a suavidade de uma curva ajustada.
Sobreajuste:
A teoria paramétrica clássica apresenta resultados ao longo das linhas de necessidade de p = o (sqrt (n)) para obter estimativas consistentes. Existem vários resultados não paramétricos dessa natureza. Existem resultados mais recentes sobre p> n, mas com condições que normalmente não são verificáveis.
No lado do ML, os aderentes mostraram uma série de sucessos em que p >> n. Uma rede neural típica “ótima” pode, depois de toda a poeira limpa, ter dezenas de milhões de parâmetros (pesos da camada oculta) com n somente nas dezenas de milhares. Alguns especialistas da NN até disseram que o ajuste excessivo é realmente desejável. No entanto, que eu saiba, não há justificativa teórica para isso. (Efron também observa isso.) É verdade? Ou há algo mais acontecendo?
Redes neurais como caixas pretas:
Aliás, o que faz os NNs funcionarem? Efron os descreve como “programas de regressão logística essencialmente elaborados”. Com uma função de ativação sigmóide e com o entendimento de que os logits são compostos juntos, em vez de, digamos, adicionados, isso é verdade. No entanto, em nosso trabalho, mostramos algo mais básico: os RNs estão essencialmente realizando uma boa regressão polinomial à moda antiga. Isso tem implicações práticas, por exemplo, que a multicolinearidade entre as saídas da camada aumenta de camada para camada. (Também temos um pacote R correspondente, polyreg.)
Dados “retangulares”:
Nos últimos anos, constatou-se que, para a maioria das aplicações, as NNs não se saem especialmente bem, ao contrário de seus sucessos na classificação de imagens, por exemplo. A partir disso, surgiram declarações de sabedoria convencional como “Para dados retangulares, você pode fazer melhor com métodos que não sejam NN”.
Porém, após uma inspeção mais minuciosa, vê-se esse “imperador” em particular sem roupa. Considere os famosos dados MNIST, consistindo em 65.000 imagens 28 × 28. Pode-se armazenar esta é uma matriz de 65000 x 784 (2ix28 = 784). Em outras palavras, n = 65000 ep = 784. Isso não é retangular? Um MLer proeminente usa o termo dados perceptivos em vez de. Essa não é uma explicação satisfatória, nem, como observado, é a “retangular”.
Então, os dados de imagem e linguagem natural, áreas putativas de excelência para RNs, são realmente diferentes de todas as outras áreas? Isso parece improvável. Em vez disso, a provável explicação é que enormes esforços foram gastos nessas áreas, e as NNs eram a ferramenta usada. De fato, alguns pesquisadores pegaram as saídas de camadas convolucionais (que são apenas operações clássicas de imagem) e as executam através de SVMs, obtendo resultados iguais ou melhores que os NNs.
O que temos então? Esta discussão traz à mente um artigo antigo, deliciosamente intitulado “O que não é o que é o que nas estatísticas”. Há muito mais do que poderia ser adicionado hoje.
Relacionado