Interpretação da saída de R para regressão binomial


38

Sou bastante novo nisso com testes de dados binomiais, mas precisava fazer um e agora não tenho certeza de como interpretar o resultado. A variável y, a variável resposta, é binomial e os fatores explicativos são contínuos. Isto é o que recebi ao resumir o resultado:

glm(formula = leaves.presence ~ Area, family = binomial, data = n)

Deviance Residuals: 
Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
leaves.presence        0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
(Dispersion parameter for binomial family taken to be 1)

Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Há várias coisas que não entendo aqui, o que isso realmente diz:

                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
leaves.presence        0.0008166  0.0002472   3.303 0.000956 ***

E o que significam as iterações AIC e Number of Fisher Scoring?

> fit
Call:  glm(formula = Lövförekomst ~ Areal, family = binomial, data = n)

Coefficients:
(Intercept)        Areal  
-0.3877697    0.0008166  

Degrees of Freedom: 12237 Total (i.e. Null);  12236 Residual
(314 observations deleted due to missingness)
Null Deviance:      16660 
Residual Deviance: 16650        AIC: 16650

E aqui o que isso significa:

Coefficients:
(Intercept)        Areal  
-0.3877697    0.0008166 

6
Como sua pergunta é muito ampla - "como se interpreta uma regressão binomial?" - Eu sugeriria pegar um texto introdutório sobre o assunto. A Introdução à Análise de Dados Categóricos de Agresti é bastante acessível.
Sycorax diz Reinstate Monica

2
Isso pode ser amplo demais para responder aqui; como @ user777 disse, a consulta de um bom texto pode estar em ordem. Agresti é bom, eu concordo. Hosmer & Lemeshow também é bom. Se você quiser algo breve e gratuito (alerta automático), veja minha introdução à regressão logística, mas ela pode ser muito básica para suas necessidades.
Peter Flom - Restabelece Monica

Ok, obrigado por Sois respostas rápidas, vou tentar Agresti e ver se isso ajuda :)
user40116

4
Não acho que essa pergunta seja muito ampla para ser respondida. Parece-me que é essencialmente a versão de regressão logística da interpretação-de-rs-lm-output , que tem sido consistentemente considerada no tópico.
gung - Restabelece Monica

1
Estou com @gung neste caso , se a pergunta é sobre a interpretação do que R esguichou na tela. Onde há ambiguidade é o que se entende por "mau"? Se o OP ficar feliz em saber que os coeficientes são os valores estimados do modelo com valores na escala das probabilidades do log, então este Q está OK. Se o PO não estiver satisfeito com isso e exigir uma explicação de seu significado em termos de dados, modelo etc., essa seria uma pergunta muito ampla, já que essa é apenas uma das várias perguntas feitas.
Reinstate Monica - G. Simpson;

Respostas:


74

O que você fez é regressão logística . Isso pode ser feito basicamente em qualquer software estatístico, e a saída será semelhante (pelo menos no conteúdo, embora a apresentação possa ser diferente). Há um guia para a regressão logística com R no excelente site de ajuda de estatísticas da UCLA. Se você não está familiarizado com isso, minha resposta aqui: a diferença entre os modelos logit e probit , pode ajudá-lo a entender o que é LR (embora esteja escrito em um contexto diferente).

Você parece ter dois modelos apresentados, vou me concentrar principalmente no modelo superior. Além disso, parece ter havido um erro ao copiar e colar o modelo ou a saída, então trocarei leaves.presencecom Areaa saída para torná-la consistente com o modelo. Aqui está o modelo ao qual estou me referindo (observe que eu adicionei (link="logit"), o que está implícito em family=binomial; veja ? Glm e ? Family ):

glm(formula = leaves.presence ~ Area, family = binomial(link="logit"), data = n)

Vamos examinar esta saída (observe que eu mudei o nome da variável na segunda linha abaixo Coefficients):

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
Area                   0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Assim como existem resíduos na regressão linear (OLS), também pode haver resíduos na regressão logística e em outros modelos lineares generalizados. Eles são mais complicados quando a variável de resposta não é contínua, no entanto. Os GLiMs podem ter cinco tipos diferentes de resíduos, mas o que aparece como padrão são os resíduos de desvio. ( Desvios e resíduos de desvios são mais avançados, por isso vou ser breve aqui; se essa discussão for um pouco difícil de seguir, não me preocuparia muito, você pode pular):

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Para cada ponto de dados usado no seu modelo, o desvio associado a esse ponto é calculado. Tendo feito isso para cada ponto, você tem um conjunto desses resíduos, e a saída acima é simplesmente uma descrição não paramétrica de sua distribuição.


A seguir, vemos as informações sobre as covariáveis, que são as pessoas em geral interessadas principalmente:

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
Area                   0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

AreaEstimateleaves.presenceArealeaves.presenceArea0 0.) Na próxima coluna, vemos o erro padrão associado a essas estimativas. Ou seja, eles são uma estimativa de quanto, em média, essas estimativas se movimentariam se o estudo fosse repetido de forma idêntica, mas com novos dados, repetidamente. (Se você não está familiarizado com a idéia de um erro padrão, pode ser útil ler minha resposta aqui: como interpretar erros padrão de coeficiente em regressão linear .) Se dividirmos a estimativa pelo erro padrão, obtenha um quociente que normalmente é distribuído com amostras grandes o suficiente. Este valor está listado em z value. Abaixo Pr(>|z|)estão listados os valores p bicaudaisque correspondem aos valores z em uma distribuição normal padrão. Por fim, existem as estrelas de significância tradicionais (e observe a chave abaixo da tabela de coeficientes).


A Dispersionlinha é impressa por padrão com GLiMs, mas não adiciona muita informação aqui (é mais importante nos modelos de contagem, por exemplo). Nós podemos ignorar isso.


Por fim, obtemos informações sobre o modelo e sua qualidade de ajuste:

    Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

A linha sobre missingnessmuitas vezes está faltando. Ele aparece aqui porque você tinha 314 observações para a qual quer leaves.presence, Areaou ambos estavam faltando. Essas observações parciais não foram usadas no ajuste do modelo.

Residual devianceNull devianceEstimateAreaF

A AIC é outra medida de qualidade do ajuste que leva em consideração a capacidade do modelo de ajustar os dados. Isso é muito útil quando se compara dois modelos em que um pode se encaixar melhor, mas talvez apenas em virtude de ser mais flexível e, portanto, mais capaz de ajustar qualquer dado. Como você tem apenas um modelo, isso não é informativo.

A referência a Fisher scoring iterationstem a ver com a forma como o modelo foi estimado. Um modelo linear pode ser ajustado resolvendo equações de forma fechada. Infelizmente, isso não pode ser feito com a maioria dos GLiMs, incluindo regressão logística. Em vez disso, é utilizada uma abordagem iterativa (o algoritmo de Newton-Raphson por padrão). Vagamente, o modelo é adequado com base em um palpite sobre quais podem ser as estimativas. O algoritmo olha em volta para ver se o ajuste seria melhorado usando estimativas diferentes. Nesse caso, ele se move nessa direção (digamos, usando um valor mais alto para a estimativa) e depois ajusta o modelo novamente. O algoritmo para quando não percebe que a mudança novamente traria muitas melhorias adicionais. Essa linha informa quantas iterações ocorreram antes do processo parar e gerar os resultados.



Em relação ao segundo modelo e saída listados, esta é apenas uma maneira diferente de exibir resultados. Especificamente, esses

Coefficients:
(Intercept)       Areal  
-0.3877697    0.0008166

são o mesmo tipo de estimativas discutidas acima (embora de um modelo diferente e apresentadas com menos informações suplementares).


1

Chamada : esta é apenas a chamada que você fez para a função. Será exatamente o mesmo código digitado em R. Isso pode ser útil para verificar se você digitou algum erro.

(Desvio) Residuais: Você pode praticamente ignorá-los para a regressão logística. Para Poisson ou regressão linear, você deseja que eles sejam distribuídos mais ou menos normalmente (que é a mesma coisa que as duas primeiras plotagens de diagnóstico estão verificando). Você pode verificar isso vendo se o valor absoluto de 1T e 3T estão próximos (ish) um do outro e se a mediana é próxima de 0. A média não é mostrada porque é sempre 0. Se algum desses itens estiver super desativado, você provavelmente tem alguma inclinação estranha em seus dados. (Isso também será exibido nos seus gráficos de diagnóstico!)

Coeficientes : Esta é a carne da produção.

  • Interceptação : Para Poisson e regressão linear, esta é a saída prevista quando todas as nossas entradas são 0. Para regressão logística, esse valor estará mais longe de 0, quanto maior a diferença entre o número de observação em cada classe. O erro padrão representa quão incertos somos sobre isso (quanto menor, melhor). Nesse caso, como nossa interceptação está longe de 0 e nosso erro padrão é muito menor que a interceptação, podemos ter certeza de que uma de nossas classes (falhou ou não falhou) tem muito mais observações. (Neste caso, "não falhou", felizmente!)

  • Várias entradas (cada entrada estará em uma linha diferente): Esta estimativa representa quanto achamos que a saída mudará cada vez que aumentamos essa entrada em 1. Quanto maior a estimativa, maior o efeito dessa variável de entrada na saída. O erro padrão é o quão certo nós somos. Normalmente, podemos ter certeza de que uma entrada é informativa, pois o erro padrão é 1/10 da estimativa. Portanto, neste caso, temos certeza de que a interceptação é importante.

  • Signif. Códigos : Esta é a chave para o significado de cada um: entrada e interceptação. Eles estão corretos apenas se você apenas ajustar um modelo aos seus dados. (Em outras palavras, eles são ótimos para dados experimentais se você, desde o início, em quais variáveis ​​está interessado e não é tão informativo para análise de dados ou seleção de variáveis.)

    Espere, por que não podemos usar significância estatística? Você pode, eu simplesmente não recomendaria. Na ciência de dados, você costuma ajustar vários modelos usando o mesmo conjunto de dados para tentar escolher o melhor modelo. Se você executar mais de um teste de significância estatística no mesmo conjunto de dados, precisará ajustar seu valor-p para compensá-lo. Você pode pensar dessa maneira: se você decidir aceitar resultados abaixo de p = 0,05, estará basicamente dizendo que está certo em estar errado uma em vinte vezes. Se você fizer cinco testes, no entanto, e para cada um deles houver uma chance de 1/20 de estar errado, agora você tem 1/4 de chance de estar errado em pelo menos um desses testes ... mas você não sei qual. Você pode corrigi-lo (multiplicando o valor-p, você aceitará como significativo pelo número de testes que realizará ), mas na prática acho que geralmente é mais fácil evitar o uso de valores-p por completo.

(Parâmetro de dispersão para a família binomial considerada 1): você verá isso apenas para regressão de Poisson e binomial (logística). É só informar que houve um parâmetro de escala adicional adicionado para ajudar a ajustar o modelo. Você pode ignorá-lo.

Desvio nulo: O desvio nulo nos diz quão bem podemos prever nossa saída usando apenas a interceptação. Menor é melhor.

Desvio residual: O desvio residual nos diz quão bem podemos prever nossa produção usando a interceptação e nossas entradas. Menor é melhor. Quanto maior a diferença entre o desvio nulo e o desvio residual, mais úteis nossas variáveis ​​de entrada foram para prever a variável de saída.

AIC: O AIC é o "critério de informação de Akaike" e é uma estimativa de quão bem seu modelo está descrevendo os padrões em seus dados. É usado principalmente para comparar modelos treinados no mesmo conjunto de dados. Se você precisar escolher entre os modelos, o modelo com o AIC mais baixo fará um trabalho melhor descrevendo a variação nos dados.

Número de iterações do Fisher Scoring: Esta é apenas uma medida de quanto tempo levou para se ajustar ao seu modelo. Você pode ignorá-lo com segurança.

Eu sugiro este toturial para aprender mais. https://www.kaggle.com/rtatman/regression-challenge-day-5

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.