Comment calculer manuellement l'ordonnée à l'origine et le coefficient dans la régression logistique


9

J'étudie actuellement la régression logistique. Mais je pas à calculer l'ordonnée à l'origine ( ) et le coefficient ( ). Je le cherchais sur Internet, mais je n'obtiens que des didacticiels utilisant Microsoft Excel ou des fonctions intégrées dans R. J'ai entendu dire qu'il pouvait être résolu par Maximum Lik vraisemblance, mais je ne comprends pas comment l'utiliser, car je ne 'ai pas un fond statistique. Quelqu'un peut-il me donner une brève explication et une simulation pour calculer les coefficients manuellement?β0β1


Comprenez-vous l'optimisation dans un sens général? Telles que trouver le minimum ou le maximum d'une fonction?
probabilités

1
Je souhaite vraiment que plus de gens posent des questions comme celle-ci.
Maddenker

Réponses:


9

Malheureusement, contrairement à la régression linéaire, il n'y a pas de formule simple pour l'estimation du maximum de vraisemblance de la régression logistique. Vous devrez effectuer une sorte d'algorithme d'optimisation, comme la descente de gradient ou les moindres carrés itérativement repondérés .


4
C'est généralement vrai. Une exception existe lorsque la seule variable explicative est catégorique, ou lorsque toutes les variables explicatives sont catégorielles et que toutes les interactions (d'ordre supérieur) sont incluses dans le modèle. Dans ce cas, les coefficients sont des transformations des moyennes.
Maarten Buis

Avez-vous une source pour cela?
information_interchange

3

Je voudrais proposer ma méthode et j'espère qu'elle vous aidera.

Pour calculer les coefficients manuellement, vous devez avoir certaines données, ou dire des contraintes. Dans la régression logistique, c'est en fait la façon dont la fonction logistique est définie via les multiplicateurs d'entropie et de décalage maximum, cette contrainte doit être rencontrée avec deux autres: . Autrement dit, l'attente du modèle devrait correspondre à l'attente observée , qui a été illustrée dans cet article . C'est pourquoi la fonction logit en tant que fonction de lien dans la régression logistique est également appelée fonction moyenne.Epfj=Ep^fj

Prenez par exemple, le tableau ci-dessous montre combien d'hommes / femmes sont dans la classe d'honneur.

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

Comme mentionné ci-dessus, est valable. Le côté gauche (LHS) est l'attente des observations (y dans l'échantillon) et le côté droit (RHS) est l'attente du modèle.iyixij=ipixij

En supposant que la fonction est ou de manière équivalente ( représente la caractéristique de l'observation étant une femelle, c'est 1 si l'observation est une femelle et 0 sinon), on sait évidemment que les deux équations suivantes sont valables respectivement lorsque et lorsque avec les données indiquées ci-dessus: log(p1p)=β0+β1xip=11+e(β0+β1xi)xiX=1X=0

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

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

L'ordonnée à l'origine ( ) est donc de -1,47 et le coefficient ( ) est de 0,593. Vous pouvez l'obtenir manuellement.β0β1

Dans le même ordre d'idées, vous pouvez calculer manuellement les coefficients d'autres modèles de régression logistique (cela s'applique également à la régression softmax mais cela sort du cadre de cette question) si suffisamment de données sont fournies.

J'espère avoir raison, sinon faites-le moi savoir. Merci.


Quelqu'un pourrait-il me dire pourquoi j'obtiens un downvote? Merci.
Lerner Zhang

3
Je ne suis pas le downvote, donc je ne peux pas dire avec certitude. Mais je pense que vous pourriez améliorer votre réponse en 1) reliant vos calculs au problème de probabilité maximale que la régression logistique résout, 2) expliquant pourquoi cet exemple peut être travaillé à la main mais pas d'autres, 3) ajustant la régression à l'aide d'un algorithme itératif et montrant que la réponse est la même.
Matthew Drury

@MatthewDrury J'ai mis à jour ma réponse après quelques recherches. Vérifiez s'il vous plaît.
Lerner Zhang

Hey @Lerner Vous devez multiplier 1 / (1 + e− (β0 + β1 ∗ 1)) 32 fois et 1 / (1 + e− (β0 + β1 ∗ 0)) 17 fois. Pas seulement en utilisant un ajout simple comme 32/109.
Aerin

@BYOR OK, je vais vérifier et mettre à jour bientôt.
Lerner Zhang
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.