SKLernen Sie, wie Sie Entscheidungswahrscheinlichkeiten für den LinearSVC-Klassifikator erhalten.

Ich verwende den linearSVC-Klassifikator von scikit-learn für Text Mining. Ich habe den y-Wert als Beschriftung 0/1 und den X-Wert als TfidfVectorizer des Textdokuments.

Ich benutze eine Pipeline wie unten

 pipeline = Pipeline([
    ('count_vectorizer',   TfidfVectorizer(ngram_range=(1, 2))),
    ('classifier',         LinearSVC())
  ])

Für eine Vorhersage möchte ich den Vertrauensfaktor oder die Wahrscheinlichkeit erhalten, dass ein Datenpunkt als @ klassifiziert wir 1 im Bereich (0,1)

Ich benutze derzeit die Entscheidungsfunktion.

pipeline.decision_function(test_X)

Es werden jedoch positive und negative Werte zurückgegeben, die das Vertrauen anzeigen. Ich bin mir auch nicht sicher, was sie bedeuten.

Gibt es jedoch eine Möglichkeit, die Werte im Bereich 0-1 zu ermitteln?

Hier ist zum Beispiel die Ausgabe der Entscheidungsfunktion für einige der Datenpunkte

    -0.40671879072078421, 
    -0.40671879072078421, 
    -0.64549376401063352, 
    -0.40610652684648957, 
    -0.40610652684648957, 
    -0.64549376401063352, 
    -0.64549376401063352, 
    -0.5468745098794594, 
    -0.33976011539714374, 
    0.36781572474117097, 
    -0.094943829974515004, 
    0.37728641897721765, 
    0.2856211778200019, 
    0.11775493140003235, 
    0.19387473663623439, 
    -0.062620918785563556, 
    -0.17080866610522819, 
    0.61791016307670399, 
    0.33631340372946961, 
    0.87081276844501176, 
    1.026991628346146, 
    0.092097790098391641, 
    -0.3266704728249083, 
    0.050368652422013376, 
    -0.046834129250376291, 

Antworten auf die Frage(4)

Ihre Antwort auf die Frage