Como calcular manualmente o intercepto e o coeficiente na regressão logística

9

Atualmente, estou estudando sobre regressão logística. Mas estou ficando paralisado no cálculo da interceptação ( ) e do coeficiente ( ). Eu tenho procurado pela Internet, mas só recebo tutoriais usando o Microsoft Excel ou funções internas do R. Ouvi dizer que isso pode ser resolvido pela Máxima Verossimilhança, mas não entendo como usá-lo, porque não tem um histórico estatístico. Alguém pode me dar uma breve explicação e simulação para calcular os coeficientes manualmente?β0β1

Kadek Dwi Budi Utama
fonte
Você entende otimização em um sentido geral? Como encontrar o mínimo ou o máximo de uma função?
probabilityislogic
1
Eu realmente gostaria que mais pessoas fizessem perguntas como essa.
Maddenker 02/02

Respostas:

9

Infelizmente, diferentemente da regressão linear, não existe uma fórmula simples para a estimativa de probabilidade máxima de regressão logística. Você precisará executar algum tipo de algoritmo de otimização, como descida de gradiente ou mínimos quadrados iterativamente ponderados .

Dougal
fonte
4
Isso geralmente é verdade. Existe uma exceção quando a única variável explicativa é categórica ou quando todas as variáveis ​​explicativas são categóricas e todas as interações (de ordem superior) são incluídas no modelo. Nesse caso, os coeficientes são transformações dos meios.
Maarten Buis
Você tem uma fonte para isso?
information_interchange
3

Gostaria de propor meu método e espero que ajude.

Para calcular os coeficientes manualmente, você deve ter alguns dados ou dizer restrições. Na regressão logística, na verdade é como a função logística é definida por meio dos multiplicadores máximos de entropia e , essa restrição deve ser atendida com outros dois: . Ou seja, a expectativa do modelo deve corresponder à expectativa observada , que foi ilustrada neste artigo . É por isso que a função logit como uma função de link na regressão logística também é denominada função média.Epfj=Ep^fj

Tomemos, por exemplo, a tabela de referência cruzada abaixo mostra quantos homens / mulheres estão na classe de honra.

           |         female
       hon |      male     female |     Total  
-----------+----------------------+----------
         0 |        74         77 |       151 
         1 |        17         32 |        49 
-----------+----------------------+----------
     Total |        91        109 |       200

Como mencionado acima, mantém. O lado esquerdo (LHS) é a expectativa das observações (y's nas amostras) e o lado direito (RHS) é a expectativa do modelo.iyixij=ipixij

Supondo que a função seja ou equivalente ( representa a característica da observação ser uma mulher, é 1 se a observação é uma mulher e 0 caso contrário), obviamente sabemos que as duas equações a seguir se aplicam respectivamente quando e quando com os dados mostrados acima: log(p1p)=β0+β1xip=11+e(β0+β1xi)xiX=1X=0

32109=11+e(β0+β11)

1791=11+e(β0+β10)

Portanto, a interceptação ( ) é -1,47 e o coeficiente ( ) é 0,593. Você pode obtê-lo manualmente.β 1β0β1

Na mesma linha, é possível calcular manualmente os coeficientes de outros modelos de regressão logística (se aplica também à regressão softmax, mas está fora do escopo desta pergunta) se dados suficientes forem fornecidos.

Espero estar certo, se não, por favor me avise. Obrigado.

Lerner Zhang
fonte
Alguém poderia me dizer por que recebo um voto negativo? Obrigado.
Lerner Zhang
3
Eu não sou o voto negativo, então não posso dizer com certeza. Mas acho que você poderia melhorar sua resposta 1) relacionando seus cálculos ao problema de máxima probabilidade que a regressão logística resolve; 2) explicando por que exatamente esse exemplo pode ser trabalhado manualmente, mas outros não podem; 3) ajustando a regressão usando um algoritmo iterativo; mostrando que a resposta é a mesma.
Matthew Drury
@MatthewDrury Atualizei minha resposta depois de algumas escavações. Por favor, verifique.
Lerner Zhang
Hey @Lerner Você precisa multiplicar 1 / (1 + e− (β0 + β1 ∗ 1)) 32 vezes e 1 / (1 + e− (β0 + β1 ∗ 0)) 17 vezes. Não apenas usando adição simples como 32/109.
Aerin
@Your OK, vou verificar e atualizar em breve.
Lerner Zhang