Denken Sie daran, dass die funktionale Form der logistischen Regression ist
f(x)=11+e−(β0+β1x1+⋯+βkxk)
Dies ist, was von zurückgegeben wird predict_proba.
Der Begriff innerhalb des Exponentials
d(x)=β0+β1x1+⋯+βkxk
ist das, was von zurückgegeben wird decision_function. Die "Hyperebene", auf die in der Dokumentation Bezug genommen wird, ist
β0+β1x1+⋯+βkxk=0
Diese Terminologie ist ein Überbleibsel von Support-Vektor-Maschinen, die eine trennende Hyperebene buchstäblich schätzen. Für die logistische Regression ist diese Hyperebene ein künstliches Konstrukt, es ist die Ebene gleicher Wahrscheinlichkeit, bei der das Modell festgestellt hat, dass beide Zielklassen gleich wahrscheinlich sind.
Die predictFunktion gibt mithilfe der Regel eine Klassenentscheidung zurück
f(x)>0.5
Aufgrund des Risikos von Seifenkisten hat die predictFunktion nur sehr wenige legitime Verwendungszwecke, und ich betrachte die Verwendung als Zeichen eines Fehlers bei der Überprüfung anderer Arbeiten. Ich würde weit genug gehen, um es als Designfehler in sklearn selbst zu bezeichnen (die predict_probaFunktion hätte aufgerufen werden predictmüssen und predicthätte aufgerufen werden müssen predict_class, wenn überhaupt).