Análise residual de regressão logística


12

Essa pergunta é geral e prolongada, mas por favor, tenha paciência comigo.

No meu aplicativo, tenho muitos conjuntos de dados, cada um consistindo em ~ 20.000 pontos de dados com ~ 50 recursos e uma única variável binária dependente. Estou tentando modelar os conjuntos de dados usando regressão logística regularizada (pacote R glmnet )

Como parte da minha análise, criei gráficos residuais da seguinte forma. Para cada recurso, classifico os pontos de dados de acordo com o valor desse recurso, divido os pontos de dados em 100 intervalos e, em seguida, calculo o valor médio da saída e o valor médio da previsão em cada intervalo. Eu traço essas diferenças.

Aqui está um exemplo de plotagem residual:

No gráfico acima, o recurso tem um intervalo de [0,1] (com uma alta concentração em 1). Como você pode ver, quando o valor do recurso é baixo, o modelo parece estar inclinado para superestimar a probabilidade de uma saída de 1. Por exemplo, no intervalo à esquerda, o modelo superestima a probabilidade em cerca de 9%.

Armado com essas informações, eu gostaria de alterar a definição do recurso de maneira direta para corrigir esse viés. Alterações como substituição

x→x

ou

x→fuma(x)={uma E se x<uma x outro

Como posso fazer isso? Estou procurando uma metodologia geral para que um humano possa rolar rapidamente todas as ~ 50 parcelas e fazer alterações, e fazer isso para todos os conjuntos de dados e repetir frequentemente para manter os modelos atualizados à medida que os dados evoluem ao longo do tempo.

Como uma pergunta geral, essa é a abordagem correta? As pesquisas do Google por "análise de resíduos de regressão logística" não retornam muitos resultados com bons conselhos práticos. Eles parecem estar determinados a responder à pergunta: "Este modelo é um bom ajuste?" e oferece vários testes, como Hosmer-Lemeshow, para responder. Mas não me importo se meu modelo é bom, quero saber como melhorá-lo!

Respostas:


4

Você não pode realmente avaliar o viés dessa maneira na regressão logística. Espera-se que a regressão logística não seja imparcial em probabilidades de log ou pontuações de logit, log (p / (1-p)). As proporções serão distorcidas e, portanto, parecerão tendenciosas. Você precisa plotar os resíduos em termos de probabilidades de log.


Como combinar os resíduos de log-ímpares em um balde? Média aritmética? Isso é um pouco perturbador para mim. Intuitivamente, se uma análise residual não mostrar viés, espero que, quando o modelo predizer Pr [y = 1] <0,2, y seja igual a 1 com probabilidade menor que 0,2. Mas sua resposta parece sugerir que esse não é o caso. Estou entendendo corretamente?
— dshin

isso provavelmente é melhor publicado como um comentário.
— probabilityislogic

Não, David, isso não implica nada além da probabilidade 0,2, talvez minhas edições deixem mais claro.
— John

Desculpe, ainda estou um pouco confuso. Meu entendimento intuitivo de um modelo imparcial é que, se o modelo predizer p = 0,2 em cada um de um grande número de pontos de dados, então 20% desses pontos de dados deverão ter y = 1. Esse entendimento está correto? Nesse caso, parece que minha metodologia de plotagem deve exibir corretamente o viés. Se não ... então não estou muito feliz com esse conceito de "preconceito"! Se uma leitura de modelo imparcial de 0,2 não me diz nada sobre a probabilidade de y = 1, de que serve a imparcialidade?
— dshin

Sim, 20% deve ter y = 1. Mas não vai dar certo, vai dar certo de alguma forma. No espaço de probabilidade, em que direção você acha que ele vai mudar a cada passo? Se for imparcial, cairá igualmente em algum lugar no .2: 1 ou no 0: .2. No entanto, como você pode ver pelo tamanho desses espaços, eles tendem a ficar mais distantes na área maior apenas porque podem. No espaço de logit, a distância deve ser igual a + ou -.
— John

2

é improvável que exista algum software geral para fazer isso. provavelmente porque não existe uma teoria geral para corrigir problemas na regressão. portanto, esse é mais um tipo de resposta "o que eu faria" em vez de um procedimento teoricamente fundamentado.

o gráfico que você produz é basicamente um teste visual de HL com 100 posições, mas usando um único preditor em vez da probabilidade prevista de fazer o binning. isso significa que seu procedimento provavelmente herdará algumas das propriedades do teste HL.

seu procedimento parece razoável, embora você deva estar ciente de "ajustar demais" seus critérios. seu critério também é menos útil como diagnóstico porque se tornou parte do processo de estimativa. Além disso, sempre que você fizer algo por intuição, anote seu processo de tomada de decisão com o máximo de detalhes possível. isso ocorre porque você pode descobrir as sementes de um processo ou teoria geral que, quando desenvolvido, leva a um procedimento melhor (mais automático e ideal em relação a alguma teoria).

Eu acho que uma maneira de ir é primeiro reduzir o número de parcelas que você precisa investigar. Uma maneira de fazer isso é ajustar cada variável como um spline cúbico e, em seguida, investigar os gráficos que possuem estimativas não lineares diferentes de zero. dado o número de pontos de dados, essa também é uma correção automática fácil para não linearidades. isso expandirá seu modelo de 50 para 200 + 50k, onde k é o número de nós. você poderia pensar nisso como aplicar uma "expansão estatística da série de Taylor" da transformação "verdadeira".

se o diagnóstico ainda estiver ruim depois disso, tente adicionar termos de interação.

partes da sua pergunta parecem mais sobre como escrever um programa interativo, que é mais o domínio do stackoverflow do que aqui. também pode ser útil procurar ferramentas de análise de dados exploratórios, pois é mais provável que eles tenham recursos que você pode "criar".


Obrigado por esta resposta. Vou dar uma olhada na ideia do spline cúbico. Empreguei essa abordagem de "analisar gráficos e ajustar recursos" em um cenário de regressão linear, onde parecia mais óbvio como obter melhores ajustes. Por exemplo, se você vê um taco de hóquei, é óbvio que a aplicação de uma correção f_a (x) leva a um melhor ajuste. Muitas vezes, o conhecimento do domínio do problema coincide com esta decisão: se você está prevendo felicidade com a renda, por exemplo, faria sentido limitar a renda, a menos que você pense que bilionários são 1000 vezes mais felizes que milionários.
— dshin

Mas quando mudei para uma configuração de regressão logística, percebi que não tinha muita certeza de como transferir minha metodologia. Daí esta submissão.
— dshin
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.