Regressione logistica: classificare stimando una probabilità
La regressione lineare prevede un numero: un prezzo, un tempo, una temperatura. Molto spesso però la risposta è una categoria: la mail è spam o no, la transazione è fraudolenta o no, il paziente ha una certa patologia o no. Stimare una categoria a partire dai regressori si chiama classificazione.
Più che la categoria secca, conviene stimare la probabilità di ciascuna categoria, e poi scegliere la più probabile. La regressione logistica fa esattamente questo.
Perché non la regressione lineare
La regressione lineare vuole numeri, quindi la prima idea è trasformare le categorie in numeri. Con due categorie è naturale: 1 per "sì", 0 per "no". L'idea è che la retta, invece di prevedere direttamente 0 o 1, prevede un valore intermedio da leggere come probabilità del "sì": 0,8 vorrebbe dire "probabilmente sì", 0,1 "probabilmente no".
Proviamo con dieci studenti: quante ore hanno studiato e se hanno superato l'esame (1) oppure no (0).
| Ore di studio | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
|---|---|---|---|---|---|---|---|---|---|---|
| Superato | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 1 |
La retta dei minimi quadrati è : ogni ora in più aggiunge circa 11,5 punti percentuali di probabilità. Tra 1 e 10 ore i valori sembrano ragionevoli, ma una retta non si ferma mai. A zero ore la "probabilità" di essere promossi è −0,13, a 12 ore è 1,25: due numeri che come probabilità non significano niente. Il problema non è questo dataset, è la forma del modello: una retta prima o poi esce dall'intervallo tra 0 e 1.
La sigmoide
Serve una funzione che prenda un numero qualsiasi e lo limiti tra 0 e 1. È la funzione logistica, o sigmoide:
Per molto positivo vale quasi 1, per molto negativo quasi 0, e in vale esattamente 0,5.
La regressione logistica applica la sigmoide a una combinazione lineare dei regressori, e la interpreta come probabilità della classe 1:
Sui dieci studenti, con , la stima dà e :
Con 2 ore di studio la probabilità stimata di superare l'esame è 0,09; con 9 ore è 0,91. Ora le uscite sono vere probabilità, e si avvicinano a 0 e a 1 senza mai superarli.
Il confine di decisione
Per classificare, si assegna la classe 1 se la probabilità è almeno 0,5. Dato che esattamente quando , la regola equivale a:
Il confine tra le due classi è quindi lineare: una soglia con un regressore, una retta con due, un piano con tre. Qui il confine è a ore.
La funzione di costo
Per stimare si usa la massima verosimiglianza. Ogni dato è 0 o 1, quindi è una variabile di Bernoulli con probabilità di valere 1.
La meno-log-verosimiglianza è:
La variabile di Bernoulli
Una variabile di Bernoulli descrive un esperimento con due soli esiti, come il lancio di una moneta: vale 1 con probabilità e 0 con probabilità . Le due probabilità si scrivono in un'unica formula:
È solo un modo compatto di scrivere i due casi:
- se :
- se :
Da qui a . Se i dati sono indipendenti, la probabilità di osservarli tutti (la verosimiglianza) è il prodotto delle probabilità dei singoli dati:
Conviene prenderne il logaritmo, che trasforma i prodotti in somme e porta gli esponenti davanti, :
Massimizzare equivale a minimizzare , che è esattamente .
Sembra complicata, ma è più semplice di quanto appare. Ricordiamo che è la probabilità che il modello dà alla classe 1, e quella che dà alla classe 0.
Dato che vale 0 oppure 1, uno dei due coefficienti, o , si annulla.
- se , il costo è , cioè dipende solo dalla probabilità data alla classe 1.
Lo studente con 9 ore è stato promosso e il modello gli dava di essere promosso: costo ; - se , il costo è , cioè dipende solo dalla probabilità data alla classe 0.
Lo studente con 7 ore è stato bocciato, ma il modello gli dava di essere promosso, quindi solo alla bocciatura: costo .
Se il modello è sicuro al 100% della previsione corretta, il costo è 0. Al contrario, più la probabilità assegnata al risultato corretto si avvicina a 0, più il costo aumenta, tendendo all’infinito.
| Probabilità data alla classe giusta | 0,99 | 0,9 | 0,5 | 0,1 | 0,01 |
|---|---|---|---|---|---|
| Costo | 0,01 | 0,11 | 0,69 | 2,30 | 4,61 |
Sbagliare con sicurezza costa molto più che sbagliare con prudenza.
A differenza dei minimi quadrati, qui non c'è una formula chiusa: il minimo si cerca con metodi iterativi, per esempio la discesa del gradiente, che ha bisogno del gradiente di . Ha una forma sorprendentemente semplice:
La derivata della sigmoide e il gradiente
La sigmoide ha una derivata comoda:
Con , per la regola della catena . Derivando termine per termine:
dove per brevità , e stanno per , e .
Un modello, due distribuzioni
Regressione lineare e logistica sono due casi dei modelli lineari generalizzati. In entrambi un modello lineare descrive il "centro" di una distribuzione:
- nella lineare, la media di una gaussiana: ;
- nella logistica, attraverso la sigmoide, la probabilità di una Bernoulli: .
Cambiando la distribuzione cambia la funzione di costo, ma il metodo per arrivarci è lo stesso.
Riepilogo
- La regressione logistica stima la probabilità della classe 1 come , sempre tra 0 e 1.
- Si classifica con la soglia 0,5, che equivale a : il confine è lineare.
- La funzione di costo viene dalla massima verosimiglianza su dati di Bernoulli: punisce molto gli errori fatti con sicurezza.
- Non ha soluzione in forma chiusa; si minimizza con la discesa del gradiente, con gradiente .