Ich möchte Koeffizienten zu einer Regression berechnen, die der logistischen Regression sehr ähnlich wenn könnte). Ich habe überlegt, GMM zur Berechnung der Koeffizienten zu verwenden, bin mir aber nicht sicher, welche Bedingungen ich im Moment verwenden soll.
Kann mir jemand dabei helfen?
Vielen Dank!
logistic
generalized-moments
user5497
quelle
quelle
Antworten:
Unter der Annahme von hat dieses Modell die Bernoulli-Antwortvariable Y i mitA ≤ 1 Y.ich
wobei (und möglicherweise A , abhängig davon, ob es als Konstante oder als Parameter behandelt wird) die angepassten Koeffizienten sind und X i die Daten für die Beobachtung i sind . Ich gehe davon aus, dass der Intercept-Term behandelt wird, indem der Datenmatrix eine Variable mit dem konstanten Wert 1 hinzugefügt wird.b EIN Xich ich
Die momentanen Bedingungen sind:
Wir ersetzen dies durch das Beispielgegenstück der Bedingung unter der Annahme von Beobachtungen:N
Dies wird praktisch gelöst, indem über alle möglichen Koeffizientenwerte b minimiert wird (im Folgenden wird der Nelder-Mead-Simplex verwendet , um diese Optimierung durchzuführen).m′m b
Aus einem hervorragenden Tutorial von R-Bloggern zu diesem Thema entlehnt, ist es ziemlich einfach, dies mit dem gmm-Paket in R zu implementieren. Als Beispiel wollen wir mit dem Iris-Dataset arbeiten und anhand der Länge und Breite der Kelchblätter und der Länge und Breite der Blütenblätter vorhersagen, ob eine Iris mehrfarbig ist. Ich gehe davon aus, dass konstant und in diesem Fall gleich 1 ist:EIN
Hier sind die Koeffizienten, die mithilfe der logistischen Regression angepasst wurden:
Das Hauptstück wir benutzen müssen gmm ist eine Funktion, kehrt die Momentbedingungen, nämlich Zeilen für jede Beobachtungi:( Yich- A1 + e- X′ichb) Xich ich
Wir können nun die Koeffizienten numerisch anpassen , indem wir die linearen Regressionskoeffizienten als geeigneten Anfangspunkt verwenden (wie im oben verlinkten Lernprogramm vorgeschlagen):b
Der Konvergenzcode 0 gibt die konvergierte Prozedur an und die Parameter sind mit denen identisch, die von der logistischen Regression zurückgegeben werden.
Ein kurzer Blick auf die gmm-Paketquelle (Funktionenm′m
momentEstim.baseGmm.iterative
undgmm:::.obj1
die bereitgestellten Parameter) zeigt, dass das gmm-Paket wie oben angegeben minimiert . Der folgende äquivalente Code ruft die R- Funktion direkt auf und führt die gleiche Optimierung durch, die wir oben mit dem Aufruf von erreicht haben :optim
gmm
quelle