Einbeziehung der Wahrscheinlichkeitsverteilung früherer Klassen in die logistische Regression

9

Ich bin erstaunt, dass ich keine Artikel / Vorträge darüber finden kann, wie man Prior Class Probability Distributions in Klassifikatoren wie Logistic Regression oder Random Forest integrieren kann.


Meine Frage lautet also:

Wie kann die Wahrscheinlichkeitsverteilung früherer Klassen in logistische Regression oder zufällige Wälder einbezogen werden?

Bedeutet die Einbeziehung der Wahrscheinlichkeitsverteilung früherer Klassen, dass ich Bayes'sche Maschinen verwenden sollte?


Ich stehe vor einer Klassifizierungsaufgabe, bei der ich weiß, dass Klasse a viel wahrscheinlicher ist als Klasse b.

Eine Ad-hoc-Lösung wäre, einfach mehr Proben für Klasse A in das Trainingsset aufzunehmen. Gibt es hierzu theoretische Ergebnisse?

Eine Sache, über die ich nachdachte, war, die Entscheidungsschwelle von 0,5 auf einen Wert zu ändern, der dieses vorherige Ungleichgewicht berücksichtigt. Ich bin mir jedoch nicht einmal sicher, ob dies theoretisch sinnvoll ist, da ich an dem Punkt, an dem ich bereit bin, eine Entscheidung zu treffen, bereits alle Merkmalswerte betrachtet habe, sodass ich mich nicht um die vorherige Wahrscheinlichkeit, sondern um die klassenbedingte Wahrscheinlichkeit kümmern sollte.

user695652
quelle

Antworten:

5

Sei die binäre Antwortvariable und der Vektor von Prädiktoren mit der Dichte (die entweder kontinuierlich, diskret oder eine Kombination von beiden wäre). Beachten Sie, dassYXf

P(Y=1X=x)P(Y=0X=x)=P(Y=1)fXY=1(x)P(Y=0)fXY=0(x)

und so

log(P(Y=1X=x)P(Y=0X=x))=log(P(Y=1)P(Y=0))+log(fXY=1(x)fXY=0(x)).

Dies bedeutet, dass unter einem logistischen Regressionsmodell der Logarithmus der vorherigen Quoten des Ereignisses als additive Konstante in den bedingten Log-Quoten erscheint. Was Sie dann in Betracht ziehen könnten, ist eine Intercept-Anpassung, bei der Sie das Logit der empirischen Quoten abziehen und das Logit der vorherigen Quoten addieren. Unter der Annahme, dass die vorherige Wahrscheinlichkeit genau ist, wird dies jedoch keine großen Auswirkungen auf das Modell haben. Diese Art der Anpassung erfolgt hauptsächlich nach einem Stichprobenverfahren, das den Anteil der Ereignisse in den Daten künstlich verändert.{Y=1}

dsaxton
quelle
3

Für zufällige Gesamtstrukturen ist der Standardprior die empirische Klassenverteilung des Trainingssatzes. Sie möchten dies vorher anpassen, wenn Sie erwarten, dass die Verteilung der Trainingssatzklassen weit davon entfernt ist, neuen Testbeobachtungen zu entsprechen. Der Prior kann durch Schichtung / Downsampling oder class_weights angepasst werden.

Stratifictaion / Downsampling bedeutet nicht, dass einige Beobachtungen verworfen werden, sondern nur in weniger Wurzelknoten gebootet werden.

Neben der Anpassung des Prior ist es auch möglich, probabilistische Vorhersagen aus dem Zufallswaldmodell zu erhalten und eine Sicherheitsschwelle zu wählen.

In der Praxis finde ich eine Mischung aus der Anpassung von Prioritäten durch Schichtung und der Auswahl des besten Schwellenwerts als Lösung mit der besten Leistung. Verwenden Sie ROC-Diagramme, um Schwellenwerte festzulegen. Das Anpassen von class_weights bietet wahrscheinlich eine ähnliche Leistung, ist jedoch weniger transparent, was der effektive Prior wird. Für die Schichtung ist das Schichtungsverhältnis einfach der neue Prior.

Siehe auch diese Antwort für weitere Details

Soren Havelund Welling
quelle