7

Sto utilizzando il metodo LogisticRegression() in scikit-learn su un set di dati fortemente non bilanciato. Ho persino trasformato la funzione class_weight in auto.Controllo della soglia nella regressione logistica in Scikit Learn

So che nella regressione logistica dovrebbe essere possibile sapere qual è il valore di soglia per una particolare coppia di classi.

È possibile sapere qual è il valore di soglia in ciascuna delle classi One-vs-All nelle progettazioni dei metodi LogisticRegression()?

Non ho trovato nulla nella pagina di documentazione.

Applica per impostazione predefinita il valore 0.5 come soglia per tutte le classi indipendentemente dai valori dei parametri?

+0

Bene, poiché LR è un classificatore probabilistico, ovvero restituisce la probabilità di una classe, ha senso utilizzare 0,5 come soglia. –

risposta

8

La regressione logistica sceglie la classe che ha la maggiore probabilità. Nel caso di 2 classi, la soglia è 0.5: se P (Y = 0)> 0.5 allora ovviamente P (Y = 0)> P (Y = 1). Lo stesso vale per l'impostazione multiclasse: di nuovo, sceglie la classe con la maggiore probabilità (vedi ad esempio Ng's lectures, le linee di fondo).

L'introduzione di soglie speciali influisce solo sulla proporzione di falsi positivi/falsi negativi (e quindi in precisione/richiamo compromesso), ma non è il parametro del modello LR. Vedi anche the similar question.