Construção e seleção de modelos usando Hosmer et al. 2013. Regressão logística aplicada em R

17

Esta é a minha primeira postagem no StackExchange, mas eu a uso como um recurso há um bom tempo, farei o possível para usar o formato apropriado e fazer as edições apropriadas. Além disso, esta é uma pergunta com várias partes. Eu não tinha certeza se deveria dividir a pergunta em várias postagens diferentes ou em apenas uma. Como as perguntas são todas de uma seção do mesmo texto, pensei que seria mais relevante postar como uma pergunta.

Estou pesquisando o uso de habitat de grandes espécies de mamíferos para uma tese de mestrado. O objetivo deste projeto é fornecer aos administradores florestais (que provavelmente não são estatísticos) uma estrutura prática para avaliar a qualidade do habitat nas terras que administram em relação a essa espécie. Este animal é relativamente evasivo, um especialista em habitat, e geralmente localizado em áreas remotas. Relativamente poucos estudos foram realizados com relação à distribuição das espécies, principalmente sazonalmente. Vários animais foram equipados com coleiras GPS por um período de um ano. Cem locais (50 verão e 50 inverno) foram selecionados aleatoriamente a partir dos dados de coleira GPS de cada animal. Além disso, 50 pontos foram gerados aleatoriamente dentro da área residencial de cada animal para servir como locais "disponíveis" ou "pseudo-ausentes".

Para cada local, várias variáveis ​​de habitat foram amostradas no campo (diâmetros das árvores, cobertura horizontal, detritos lenhosos grossos, etc.) e várias foram amostradas remotamente através do SIG (elevação, distância à estrada, robustez, etc.). As variáveis ​​são principalmente contínuas, exceto uma variável categórica que possui 7 níveis.

Meu objetivo é usar a modelagem de regressão para criar funções de seleção de recursos (RSF) para modelar a probabilidade relativa de uso de unidades de recursos. Eu gostaria de construir um RSF sazonal (inverno e verão) para a população de animais (tipo de desenho I) e para cada animal individual (tipo de desenho III).

Estou usando R para executar a análise estatística.

O texto principal que tenho usado é…

  • "Hosmer, DW, Lemeshow, S., & Sturdivant, RX 2013. Regressão logística aplicada. Wiley, Chicester".

A maioria dos exemplos em Hosmer et al. STATA® utilização, também têm vindo a utilizar os 2 seguintes textos de referência com R .

  • "Crawley, MJ 2005. Estatísticas: uma introdução usando RJ Wiley, Chichester, West Sussex, Inglaterra."
  • "Plant, RE 2012. Análise de Dados Espaciais em Ecologia e Agricultura Utilizando R. CRC Press, Londres, GBR."

Atualmente, estou seguindo as etapas do capítulo 4 de Hosmer et al. para a "Seleção proposital de covariáveis" e tenha algumas perguntas sobre o processo. Descrevi os primeiros passos no texto abaixo para ajudar nas minhas perguntas.

  1. Etapa 1: Uma análise univariada de cada variável independente (usei uma regressão logística univariada). Qualquer variável cujo teste univariável tenha um valor-p menor que 0,25 deve ser incluída no primeiro modelo multivariável.
  2. Etapa 2: ajuste um modelo multivariável contendo todas as covariáveis ​​identificadas para inclusão na etapa 1 e para avaliar a importância de cada covariável usando o valor p de sua estatística Wald. Variáveis ​​que não contribuem nos níveis tradicionais de significância devem ser eliminadas e adequado um novo modelo. O modelo menor e mais novo deve ser comparado ao modelo maior e antigo usando o teste da razão de verossimilhança parcial.
  3. Etapa 3: compare os valores dos coeficientes estimados no modelo menor com seus respectivos valores no modelo grande. Qualquer variável cujo coeficiente tenha mudado acentuadamente em magnitude deve ser adicionada novamente ao modelo, pois é importante no sentido de fornecer um ajuste necessário do efeito das variáveis ​​que permanecem no modelo. Percorra as etapas 2 e 3 até que todas as variáveis ​​importantes sejam incluídas no modelo e as excluídas sejam clinicamente e / ou estatisticamente sem importância. Hosmer et al. use o " delta-beta-hat-percent " como uma medida da mudança na magnitude dos coeficientes. Eles sugerem uma mudança significativa como um delta-beta-hat-percent de> 20%. Hosmer et al. defina o delta-beta-hat-percent como Δβ^%=100θ^1β^1β^1 . Onde é o coeficiente do modelo menor e é o coeficiente do modelo maior.θ^1β^1
  4. Etapa 4: adicione cada variável não selecionada na Etapa 1 ao modelo obtido no final da etapa 3, uma de cada vez, e verifique sua significância pelo valor p da estatística Wald ou pelo teste da razão de verossimilhança parcial, se for uma categoria variável com mais de 2 níveis. Essa etapa é vital para identificar variáveis ​​que, por si só, não estão significativamente relacionadas ao resultado, mas que dão uma contribuição importante na presença de outras variáveis. Nós nos referimos ao modelo no final da Etapa 4 como o modelo preliminar de efeitos principais .
  5. Etapas 5-7: Não progredi até este ponto, portanto deixarei essas etapas de lado por agora ou as salvarei para uma pergunta diferente.

Minhas perguntas:

  1. Na etapa 2, o que seria apropriado como um nível tradicional de significância, um valor-p <0,05, algo maior como <0,25?
  2. Na etapa 2 novamente, quero ter certeza de que o código R que estou usando para o teste de probabilidade parcial está correto e quero ter certeza de que estou interpretando os resultados corretamente. Aqui está o que eu tenho feito ... anova(smallmodel,largemodel,test='Chisq')Se o valor p for significativo (<0,05), adiciono a variável ao modelo, se for insignificante, prossigo com a exclusão?
  3. Na etapa 3, tenho uma pergunta sobre a porcentagem de delta-beta-hat e quando é apropriado adicionar uma variável excluída ao modelo. Por exemplo, excluo uma variável do modelo e ela altera o para uma variável diferente em> 20%. No entanto, a variável com a alteração> 20% em parece insignificante e parece que será excluída do modelo nos próximos ciclos das etapas 2 e 3. Como posso determinar se as duas variáveis ​​devem ser incluídas ou excluídas do modelo? Como continuo excluindo 1 variável de cada vez, excluindo as variáveis ​​menos significativas primeiro, hesito em excluir uma variável fora de ordem.Δβ^%Δβ^%
  4. Por fim, quero garantir que o código que estou usando para calcular esteja correto. Eu tenho usado o seguinte código. Se houver um pacote que faça isso por mim ou uma maneira mais simples de fazê-lo, estou aberto a sugestões. Δβ^%

    100*((smallmodel$coef[2]-largemodel$coef[2])/largemodel$coef[2])

GNG
fonte
por curiosidade, quais são as espécies que você está estudando?
forecaster

Respostas:

23

Nenhum desses métodos propostos foi mostrado pelos estudos de simulação para funcionar. Gaste seus esforços na formulação de um modelo completo e ajuste-o. A triagem univariada é uma péssima abordagem para a formulação de modelos, e os outros componentes da seleção de variáveis ​​passo a passo que você espera usar também devem ser evitados. Isso foi discutido detalhadamente neste site. O que lhe deu a idéia em primeiro lugar de que as variáveis ​​às vezes deveriam ser removidas dos modelos porque não são "significativas"? Não use valores- ou alterações em para orientar qualquer especificação do modelo.Pβ

Frank Harrell
fonte
3
Sim, conhecimento do domínio + uma dose saudável de descrença na simplicidade, por exemplo, não assuma que variáveis ​​contínuas ajam linearmente, a menos que você tenha dados anteriores demonstrando linearidade.
Frank Harrell
6
O OP está citando um texto mainstream em sua terceira edição, com autores que fizeram grandes contribuições para o campo. Outros pontos levantados na questão são discutidos em outros textos influentes (Agresti, Gelman). Trago isso à tona não porque concordo com essa estratégia, mas para observar que essas estratégias são recomendadas em textos recentes e importantes por estatísticos respeitados. Em suma: embora haja muita literatura desaconselhando isso, ela não parece ser rejeitada pela comunidade estatística.
julieth 10/10
2
Isso é bastante equivocado na minha humilde opinião. As estratégias adotadas com tanta força em alguns textos nunca foram validadas. Os autores que não acreditam em simulação se arriscam a advogar o uso de métodos que não funcionam como anunciados.
Frank Harrell
2
Sim eu conheço. Refiro-me frequentemente ao seu texto e documentos, e é uma das fontes que usei para chegar à minha conclusão discordando da estratégia acima. Estou simplesmente transmitindo o dilema do usuário aplicado. Não podemos testar tudo. Contamos com especialistas, como você.
julieth 10/10
3
@GNG: FH está se referindo à simulação como uma maneira de mostrar que essa abordagem para a seleção de modelos realmente faz o que deveria ser feito (presumivelmente para melhorar a precisão das previsões do seu modelo) em aplicações típicas. Suas perguntas (astutas) destacam sua inclusão variável arbitrária, ad hoc, baseada na natureza, em um número indeterminado de testes de significância em níveis "tradicionais", que não podem ser mostrados pela teoria para garantir a otimização de qualquer coisa.
Scortchi - Reinstate Monica
5

Métodos especificados para seleção de variáveis ​​usando estatística como P, regressão passo a passo no texto clássico Hosmer et al devem ser evitados a todo custo.

Recentemente, me deparei com um artigo publicado na revista internacional de previsão intitulado " Ilusões de previsibilidade " e um comentário sobre Keith ord sobre esse artigo . Eu recomendo esses dois artigos, pois mostram claramente que o uso da estatística de regressão geralmente é enganoso. Follwoing é uma captura de tela do artigo de Keith Ord que mostra por simulação por que a regressão passo a passo (usa estatística p) para seleção de variáveis ​​é ruim.

insira a descrição da imagem aqui

Outro maravilhoso artigo de Scott Armstrong, publicado na mesma edição da revista, mostra por que se deve ter muito cuidado ao usar a análise de regressão em dados não experimentais com estudos de caso. Desde que li esses artigos, evito usar a análise de regressão para extrair inferências causais em dados não experimentais. Como profissional, eu gostaria de ter lido artigos como esse por muitos anos, que me salvariam de tomar más decisões e evitar erros dispendiosos.

No seu problema específico, não acho que experimentos aleatórios sejam possíveis no seu caso, então recomendo que você use a validação cruzada para selecionar variáveis. Um bom exemplo elaborado está disponível neste livro on-line gratuito sobre como você usaria precisão preditiva para selecionar variáveis. Também existem muitos outros métodos de seleção variáveis, mas eu restringiria a validação cruzada.

Pessoalmente, gosto da citação de Armstrong "Em algum lugar, encontrei a idéia de que a estatística deveria auxiliar a comunicação. Métodos complexos de regressão e um bando de estatísticas de diagnóstico nos levaram na outra direção"

Abaixo está minha própria opinião. Eu não sou um estatístico.

  • Como biólogo, acho que você apreciaria esse ponto. A natureza é muito complexa, assumindo função logística e nenhuma interação entre variáveis ​​não ocorre na natureza. Além disso, a regressão logística possui as seguintes premissas :

  • As verdadeiras probabilidades condicionais são uma função logística das variáveis ​​independentes.

  • Nenhuma variável importante é omitida. Nenhuma variável estranha é incluída.

  • As variáveis ​​independentes são medidas sem erro.
  • As observações são independentes.
  • As variáveis ​​independentes não são combinações lineares entre si.

Eu recomendaria a classificação e a árvore de regressão (CART (r)) como uma alternativa à regressão logística para esse tipo de análise, pois é livre de suposições:

  1. Não paramétrico / orientado a dados / sem suposições de que suas probabilidades de saída seguem a função logística.
  2. Não linear
  3. permite interação variável complexa.
  4. Fornece árvores visuais altamente interpretáveis ​​que um não estatístico como os gerentes florestais apreciaria.
  5. Lida facilmente com valores ausentes.
  6. Não precisa ser um estatístico para usar o CART !!
  7. seleciona automaticamente variáveis ​​usando validação cruzada.

CART é uma marca comercial da Salford Systems. Veja este vídeo para introdução e histórico da CART. Existem também outros vídeos, como híbridos de regressão logística de carrinho no mesmo site. Eu verificaria. uma imitação de código-fonte aberto em R é chamada Tree e existem muitos outros pacotes, como rattle, disponíveis em R. Se eu encontrar tempo, postarei o primeiro exemplo no texto de Homser usando CART. Se você insistir em usar a regressão logística, pelo menos eu usaria métodos como CART para selecionar variáveis ​​e depois aplicar a regressão logística.

Pessoalmente, prefiro o CART do que a regressão logística por causa das vantagens mencionadas acima. Mas, ainda assim, eu tentaria a regressão logística e o CART ou CART-Logistc Regression Hybrid, e veria qual fornece melhor precisão preditiva e também mais importante, melhor interpretabilidade e escolheria aquela que você acha que "comunicaria" os dados mais claramente.

Além disso, o FYI CART foi rejeitado pelas principais revistas estatísticas e, finalmente, os inventores do CART lançaram uma monografia. A CART abriu caminho para algoritmos de aprendizado de máquina modernos e altamente bem-sucedidos, como Random Forest (r), Gradient Boosting Machines (GBM), Regressão Adaptativa Multivariada Splines - todos nasceram. O Randomforest e o GBM são mais precisos que o CART, mas menos interpretáveis ​​(tipo caixa preta) que o CART.

Espero que isso seja útil. Deixe-me saber se você acha este post útil?

previsor
fonte
8
Não. O modelo logístico não faz mais suposições do que outros modelos. Sua principal suposição única é que é realmente tudo ou nada. O CART é extremamente superado pela regressão logística. O CART se encaixa efetivamente em muito mais parâmetros do que a regressão logística, pois permite todas as interações possíveis. A ironia é que um método que permite flexibilidade máxima é mais conservador do que um método mais estruturado. Você verá que, para que os modelos CART sejam bem calibrados, é necessário remover o modelo para baixo para ter uma pequena discriminação preditiva. Y
31714 Frank
3
Essa resposta vai de comentários gerais, muitos dos quais parecem incontroversos, pelo menos para mim, a um endosso altamente específico e bastante pessoal da CART como o método de escolha. Você tem direito a seus pontos de vista, pois outros terão direito a suas objeções. Minha sugestão é que você sinalize o sabor duplo da sua resposta com mais clareza.
Nick Cox
2
A regressão logística é um modelo linear generalizado, mas, de outro modo, é defensável como, de fato, bem motivado como um modelo naturalmente não linear (no sentido em que se ajusta a curvas ou equivalentes, não a linhas ou equivalentes, no espaço usual) que é mais adequado para respostas binárias. O apelo à biologia aqui é de dois gumes; modelos historicamente logísticos para respostas binárias foram inspirados em modelos de crescimento logístico (por exemplo, de populações) em biologia!
Nick Cox
O Soyer et al. o jornal Armstrong e os comentários são todos muito bons. Eu tenho lido sobre eles neste fim de semana. Obrigado por sugeri-los. Não sendo estatístico, não posso comentar sobre o uso do CART sobre a regressão logística. No entanto, sua resposta é muito bem escrita, útil e recebeu comentários interessantes. Estive lendo sobre métodos de aprendizado de máquina, como CART, MaxEnt, e aprimorei as árvores de regressão, e estou planejando discuti-las com meu comitê para obter informações. Quando tenho tempo livre, o vídeo da CART também deve ser interessante.
GNG
3
Com um sorriso, acho que podemos reverter seus comentários sobre modelos lineares e insistir que, longe de ser livre de suposições, ou até de suposições leves, a CART assume que a realidade é como uma árvore (o que mais?). Se você acha que a natureza é um continuum que varia suavemente, deve correr na direção oposta.
Nick Cox
3

Acho que você está tentando prever a presença das espécies com uma abordagem de presença / fundo, bem documentada em periódicos como Métodos em Ecologia e Evolução, Ecografia, etc. Talvez o dismo do pacote R seja útil para o seu problema. Inclui uma bela vinheta. Usar o dismo ou outro pacote semelhante implica mudar sua abordagem do problema, mas acredito que vale a pena dar uma olhada.

Hugo
fonte
2
O que impede você de especificar um modelo? Por que a grande incerteza no que deveria estar no modelo? Por que a necessidade de seleção de modelos usando o GLM?
Frank Harrell
1
Receio que você esteja misturando alguns conceitos. (1) de fato maxent é um dado de presença / histórico ou dados de presença / pseudo-ausência. Portanto, maxent usa os dados somente de presença e adiciona alguns pontos da paisagem, ou seja, os antecedentes / pseudo-ausências. Assim, pode ser usado no seu caso. (2) O GLM foi projetado para ser usado com ausências 'verdadeiras'. No entanto, o GLM foi adaptado para dados de presença / pseudo-ausência. (3) o pacote dismo oferece árvores de regressão aprimoradas, mas não apenas. Você também pode instalar o GLM, basta seguir uma das vinhetas da embalagem (existem 2).
1013 Hugo Hugo
1
Se sua pergunta é sobre quais variáveis ​​você deve incluir como preditores, dê uma olhada nestes documentos: Sheppard 2013. Como a seleção de variáveis ​​climáticas afeta as previsões de distribuição de espécies? Um estudo de caso de três novas ervas daninhas na Nova Zelândia. Pesquisa de plantas daninhas; Harris et ai. 2013. Ser ou não ser? A seleção variável pode mudar o destino projetado de uma espécie ameaçada sob o clima futuro. Ecol. Manag. Restor.
Hugo
2
O pensamento de que as técnicas de seleção variável, de alguma forma, reduzem o sobreajuste é estranho. A aparente economia de variáveis ​​na redução do modelo é completamente uma ilusão quando a redução vem dos próprios dados.
Frank Harrell
1
@GNG: "Minha incerteza sobre deixando todas as variáveis no modelo vem de tudo o que foi ensinado sobre collinearity e over-fitting" - Será que o seu modelo de conter preditores altamente colineares? O seu modelo está super ajustado?
Scortchi - Reinstate Monica