Molti problemi richiedono una stima di probabilità come output. La regressione logistica è un meccanismo estremamente efficiente per calcolare le probabilità. In pratica, puoi utilizzare la probabilità restituita in uno dei seguenti due modi:
Applicato "così com'è". Ad esempio, se un modello di previsione dello spam prende un'email come input e restituisce un valore di
0.932
, ciò implica una probabilità di93.2%
che l'email sia spam.Convertito in una categoria binaria come
True
oFalse
,Spam
oNot Spam
.
Questo modulo si concentra sull'utilizzo dell'output del modello di regressione logistica così com'è. Nel modulo Classificazione, imparerai a convertire questo output in una categoria binaria.
Funzione sigmoidea
Ti starai chiedendo come un modello di regressione logistica possa garantire che il suo output rappresenti una probabilità, restituendo sempre un valore compreso tra 0 e 1. Esiste una famiglia di funzioni chiamate funzioni logistiche il cui output ha le stesse caratteristiche. La funzione logistica standard, nota anche come funzione sigmoidea (sigmoid significa "a forma di S"), ha la formula:
\[f(x) = \frac{1}{1 + e^{-x}}\]
dove:
- f(x) è l'output della funzione sigmoidea.
- e è il numero di Eulero: una costante matematica ≈ 2,71828.
- x è l'input della funzione sigmoide.
La Figura 1 mostra il grafico corrispondente della funzione sigmoidea.

Man mano che l'input x
aumenta, l'output della funzione sigmoidea si avvicina a 1
, ma non lo raggiunge mai. Allo stesso modo, man mano che l'input diminuisce, l'output della funzione sigmoidea si avvicina a 0
, ma non lo raggiunge mai.
Fai clic qui per un'analisi più approfondita della matematica alla base della funzione sigmoide
La tabella seguente mostra i valori di output della funzione sigmoide per valori di input compresi tra -7 e 7. Nota la rapidità con cui la sigmoide si avvicina a 0 per i valori di input negativi decrescenti e la rapidità con cui si avvicina a 1 per i valori di input positivi crescenti.
Tuttavia, indipendentemente da quanto grande o piccolo sia il valore di input, l'output sarà sempre maggiore di 0 e minore di 1.
Input | Output sigmoideo |
---|---|
-7 | 0,001 |
-6 | 0,002 |
-5 | 0,007 |
-4 | 0,018 |
-3 | 0,047 |
-2 | 0,119 |
-1 | 0,269 |
0 | 0,50 |
1 | 0.731 |
2 | 0,881 |
3 | 0,952 |
4 | 0,982 |
5 | 0,993 |
6 | 0,997 |
7 | 0,999 |
Trasformazione dell'output lineare utilizzando la funzione sigmoidea
La seguente equazione rappresenta la componente lineare di un modello di regressione logistica:
\[z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N\]
dove:
- z è l'output dell'equazione lineare, chiamato anche log odds.
- b è il bias.
- I valori w sono i pesi appresi dal modello.
- I valori x sono i valori delle caratteristiche per un determinato esempio.
Per ottenere la previsione di regressione logistica, il valore z viene quindi passato alla funzione sigmoide, producendo un valore (una probabilità) compreso tra 0 e 1:
\[y' = \frac{1}{1 + e^{-z}}\]
dove:
- y' è l'output del modello di regressione logistica.
- e è il numero di Eulero: una costante matematica ≈ 2,71828.
- z è l'output lineare (come calcolato nell'equazione precedente).
Fai clic qui per scoprire di più sui log-odds
Nell'equazione $z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N$, z è chiamato log-odds perché se inizi con la seguente funzione sigmoidea (dove $y$ è l'output di un modello di regressione logistica, che rappresenta una probabilità):
$$y = \frac{1}{1 + e^{-z}}$$
e poi risolvi l'equazione per z:
$$ z = \log\left(\frac{y}{1-y}\right) $$
z viene quindi definito come il logaritmo del rapporto tra le probabilità dei due possibili risultati: y e 1 – y.
La Figura 2 mostra come l'output lineare viene trasformato in output di regressione logistica utilizzando questi calcoli.

Nella Figura 2, un'equazione lineare diventa input della funzione sigmoidea, che piega la linea retta a forma di S. Nota che l'equazione lineare può restituire valori di z molto grandi o molto piccoli, ma l'output della funzione sigmoide y' è sempre compreso tra 0 e 1, esclusi. Ad esempio, il quadrato giallo nel grafico a sinistra ha un valore z pari a -10, ma la funzione sigmoide nel grafico a destra mappa questo valore -10 in un valore y' pari a 0,00004.
Esercizio: verifica la tua comprensione
Un modello di regressione logistica con tre funzionalità ha i seguenti bias e pesi:
\[\begin{align} b &= 1 \\ w_1 &= 2 \\ w_2 &= -1 \\ w_3 &= 5 \end{align} \]
Dati i seguenti valori di input:
\[\begin{align} x_1 &= 0 \\ x_2 &= 10 \\ x_3 &= 2 \end{align} \]
Rispondi alle seguenti due domande.
Come calcolato nel punto 1 sopra, il logit per i valori di input è 1. Inserendo questo valore di z nella funzione sigmoide:
\(y = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-1}} = \frac{1}{1 + 0.367} = \frac{1}{1.367} = 0.731\)