Regressione logistica: calcolo di probabilità

Molti problemi richiedono una stima della probabilità come output. La regressione logistica è un meccanismo estremamente efficiente per calcolare le probabilità. In pratica, puoi utilizzare la probabilità restituita in uno dei due modi riportati di seguito:

  • "così com'è"
  • Convertito in una categoria binaria.

Vediamo come potremmo utilizzare la probabilità "così com'è". Supponiamo di creare un modello di regressione logistica per prevedere la probabilità di abbaiare di un cane nel cuore della notte. Chiameremo questa probabilità:

\[p(bark | night)\]

Se il modello di regressione logistica prevede \(p(bark | night) = 0.05\), in un anno i proprietari del cane dovrebbero rimanere sveglii circa 18 volte:

\[\begin{align} startled &= p(bark | night) \cdot nights \\ &= 0.05 \cdot 365 \\ &~= 18 \end{align} \]

In molti casi, puoi mappare l'output di regressione logistica nella soluzione a un problema di classificazione binaria, in cui l'obiettivo è prevedere correttamente una delle due possibili etichette (ad esempio "spam" o "non spam". Un modulo successivo si concentra su questo.

Forse ti starai chiedendo in che modo un modello di regressione logistica può garantire un output che rientra sempre tra 0 e 1. Nel momento in cui accade, una funzione sigmoidea, definita come segue, produce un output con le stesse caratteristiche:

$$y = \frac{1}{1 + e^{-z}}$$

La funzione sigmoidea genera il seguente grafico:

Funzione sigmoidea. L'asse X è il valore di inferenza non elaborato. L'asse y si estende da 0 a +1, esclusi.

Figura 1: Funzione sigmoidea.

Se \(z\) rappresenta l'output del livello lineare di un modello addestrato con regressione logistica, \(sigmoid(z)\) produrrà un valore (una probabilità) tra 0 e 1. In termini matematici:

$$y' = \frac{1}{1 + e^{-z}}$$

dove:

  • \(y'\) è l'output del modello di regressione logistica per un determinato esempio.
  • \(z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N\)
    • I valori \(w\) sono le ponderazioni apprese dal modello e \(b\) sono le bias.
    • I valori \(x\) sono i valori delle caratteristiche per un determinato esempio.

Tieni presente che \(z\) questo viene indicato anche come log-odds, perché l'opposto dello stato sigmoidale \(z\) può essere definito come il log della probabilità dell'etichetta \(1\) (ad es. "cani che abbaiano") diviso per la probabilità dell'etichetta \(0\)(ad es. "cane non't abbaia"):

$$ z = \log\left(\frac{y}{1-y}\right) $$

Ecco la funzione sigmoidea con etichette ML:

La funzione Sigmoide con l'asse X etichettata come somma di tutte le ponderazioni e caratteristiche (più il bias), l'asse Y è etichettato come output di probabilità.

Figura 2: output di regressione logistica.