Cos'è la regressione logistica?

Autore

Fangfang Lee

Developer Advocate

IBM

Cos'è la regressione logistica?

La regressione logistica è un algoritmo di machine learning supervisionato nella data science. È un tipo di algoritmo di classificazione che prevede un risultato discreto o categorico. Ad esempio, possiamo utilizzare un modello di classificazione per determinare se un prestito è approvato o meno in base a predittori come l'importo del risparmio, il reddito e il punteggio di credito.

In questo articolo, approfondiamo la matematica alla base della regressione logistica, uno degli algoritmi di classificazione più utilizzati nel machine learning e nell'intelligenza artificiale (AI). Approfondiremo anche i dettagli dell'analisi della regressione, dei casi d'uso e dei diversi tipi di regressioni logistiche. Nell'era dell'AI generativa, i fondamenti della regressione logistica svolgono ancora un ruolo critico nell'orchestrazione di modelli complessi di reti neurali. La regressione è ancora molto rilevante anche nell'esecuzione di test statistici nel contesto della ricerca comportamentale e nelle scienze sociali, così come nel campo della data science in generale. Possiamo implementare facilmente la regressione logistica usando il modulo scikit-learn in Python.  

In questo articolo introduciamo la differenza tra regressione lineare e regressione logistica, le basi matematiche, i diversi tipi di regressioni logistiche e i casi d'uso associati.

Regressione logistica e regressione lineare a confronto

La regressione logistica, come la regressione lineare, è un tipo di modello lineare che esamina la relazione tra variabili predittive (variabili indipendenti) e una variabile di output (la risposta, l'obiettivo o la variabile dipendente). La differenza fondamentale è che la regressione lineare viene utilizzata quando l'output è un valore continuo, ad esempio, la previsione del punteggio di credito di qualcuno. La regressione logistica viene utilizzata quando il risultato è categorico, ad esempio se un prestito è approvato o meno.

Nella regressione logistica, il modello prevede la probabilità che si verifichi un risultato specifico. Ad esempio, dato il profilo finanziario di una persona, potremmo prevedere la probabilità che il suo prestito venga approvato. L'output del modello è un valore compreso tra 0 e 1. Sulla base di una soglia (spesso 0,5), classifichiamo il risultato come "approvato" o "non approvato". Invece di tracciare una linea retta tra i dati come faremmo nella regressione lineare, la regressione logistica si adatta a una curva a forma di S per mappare i valori di input in base a una probabilità.

Sia la regressione lineare che quella logistica utilizzano test statistici per valutare quali variabili predittive influiscono in modo significativo sull'output. Tecniche come il t-test e l'analisi della varianza (ANOVA) (o test del rapporto di verosimiglianza per la regressione logistica) generano valori p per ciascun coefficiente, aiutandoci a valutare se la relazione è statisticamente significativa. Un valore p basso (in genere inferiore a 0,05) suggerisce che la variabile contribuisce in modo significativo al modello. Valutiamo anche la bontà dell'adattamento, ovvero quanto bene il modello spiega i risultati osservati, utilizzando metriche diverse a seconda del tipo di regressione.  

Via via che costruiamo modelli, è importante evitare l'overfitting, in cui il modello cattura il rumore nei dati di addestramento e offre prestazioni scadenti sui nuovi dati. Questo rischio aumenta quando abbiamo molte variabili predittive ma un campione di piccole dimensioni. Per risolvere questo problema, possiamo applicare la regolarizzazione, una tecnica che diminuisce l'influenza di variabili meno importanti riducendone i coefficienti. È necessario prestare particolare attenzione anche agli outlier, in quanto possono distorcere il modello e portare a valori p oppure a coefficienti fuorvianti. In pratica, miglioriamo i modelli attraverso più iterazioni di selezione, test e perfezionamento delle caratteristiche.

Per confrontare i due modelli in modo più concreto, consideriamo uno scenario di regressione lineare in cui vogliamo prevedere il punteggio di credito di una persona, in base a caratteristiche come i suoi risparmi attuali. Possiamo modellarlo come:

 Ycreditscore=β0+β1Xsavings

Risparmi di regressione lineare e punteggio di credito a confronto

Regressione logistica dietro le quinte

Come la regressione lineare, la regressione logistica è un tipo di modello lineare che rientra nella famiglia dei modelli lineari generalizzati (GLM). Come nell'esempio precedente, se vogliamo rappresentare la probabilità di approvare o non approvare, applichiamo la funzione lineare.

 Yapproval=β0+β1Xsavings

Poiché la funzione lineare assume una relazione lineare, al variare dei valori di X, Y può assumere un valore da (-inf, inf). Le probabilità, come sappiamo, sono confinate a [0,1]. Utilizzando questo principio del modello lineare, non possiamo modellare direttamente le probabilità per un risultato binario. Necessitiamo invece di un modello logistico per dare un senso alle probabilità. Pertanto, vogliamo applicare una trasformazione all'input in modo che il risultato possa essere limitato. Questa trasformazione è nota come equazione di regressione logistica. Questa equazione può sembrare complessa, ma nella seguente sezione spiegheremo passo per passo come è stata ricavata.

Y=P(x)=eβ0+β1x1+eβ0+β1x

 

Approvazione del credito in base all'importo di risparmio

La trasformazione sigmoidea ci consente di fare una previsione binaria per il caso d'uso precedente. Dopo avere applicato la trasformazione, il valore di X può assumere (-inf, inf) e y sarà confinato a [0,1]

Per comprendere la funzione di regressione logistica (o funzione sigmoide), necessitiamo di solide fondamenta basate sui seguenti concetti:

  • Odds, log-odds e odds ratio
  • Coefficienti della regressione logistica
  • Stime di massima verosimiglianza (MLE)  

Odds, log odds e odds ratio

Odds

Il log del rapporto delle probabilità è noto come funzione logit e costituisce la base della regressione logistica.

Poiché non possiamo modellare le probabilità direttamente utilizzando una funzione lineare (perché le probabilità sono vincolate tra 0 e 1), lavoriamo invece con gli odds. Sebbene sia la probabilità che gli odds rappresentino la probabilità di un risultato, differiscono nella definizione:

La probabilità misura la possibilità che un evento si verifichi tra tutti i possibili risultati.

Una grafica minimalista con cerchi blu e rossi su un quadrato bianco.

Gli odds confrontano la possibilità che un evento si verifichi con la possibilità che non si verifichi.

Una grafica minimalista con cerchi blu e rossi su un quadrato bianco.

Log-odds

Lasciamo che p(x) rappresenti la probabilità di un risultato. Quindi, gli odds di x sono definiti come:

 odds(x)=p(x)1-p(x) 

Facciamo un esempio concreto:

Supponiamo che un cesto contenga 3 mele e 5 arance.

- La probabilità di scegliere un'arancia è 5/(3+5) = 0,625

- Gli odds di scegliere un'arancia sono 5/3 ≈ 1.667

Questo significa che raccogliere un'arancia è ≈ 1,667 volte più probabile che raccogliere una mela. Al contrario, gli odds di scegliere una mela sono 3/5 = 0,6, che è inferiore a 1, il che indica che il risultato (raccogliere una mela) è meno probabile che non raccoglierla. Seguendo l'equazione degli odds, possiamo anche pensare alle quote come alla probabilità che un risultato si verifichi rispetto a 1 - probabilità che si verifichi. Pertanto, gli odds di scegliere un'arancia sono = P (arance)/(1-P (arance)) =0,625/ (1-0,625) ≈ 1,667

Gli odds possono variare da 0 a infinito. Un valore di odds maggiore di 1 indica un risultato favorevole, inferiore a 1 indica un risultato sfavorevole e pari a 1 significa che l'evento è tanto probabile che si verifichi quanto no.

Tuttavia, gli odds non sono simmetrici attorno a 1. Ad esempio, gli odds di 2 e 0,5 rappresentano "il doppio della probabilità" e "la metà della probabilità", ma si trovano su scale numeriche molto diverse. Per risolvere questo squilibrio, prendiamo il logaritmo degli odds, che trasforma la scala illimitata [0, ∞) degli odds nella retta dei numeri reali (−∞, ∞). Questo è noto come log-odds, o logit, ed è il fondamento del modello di regressione logistica.

Definiamo il log-odds come:

 log(p(x)1-p(x))

Questa trasformazione ci permette di esprimere il log-odds come funzione lineare dell'input:

 log(p(x)1-p(x))=β0+β1·x1

Possiamo quindi elevare a potenza entrambi i lati per tornare agli odds:

 p(x)1-p(x)=eβ0+β1·x1

Risolvere per p(x) otteniamo la funzione sigmoide, che aiuta a garantire che il valore previsto rimanga tra 0 e 1:

 p(x)=eβ0+β1·x11+eβ0+β1·x1

Questa trasformazione consente alla regressione di produrre probabilità valide, anche se le stiamo modellando utilizzando una funzione lineare sottostante.

Odds Ratio

Infine, introduciamo l'odds ratio, un concetto che aiuta a interpretare l'effetto dei coefficienti del modello. L'odds ratio ci dice come cambiano gli odds quando la variabile di input x1 aumenta di un'unità.

Diciamo che gli odds dell'evento sono:

 odds(x1)=eβ0+β1·x1 

Se aumentiamo x1 di un'unità, i nuovi odds diventano:

 odds(x1+1)=eβ0+β1(x1+1)=eβ0+β1x1·eβ1 

Ciò significa che per ogni aumento unitario di x1, gli odds vengono moltiplicati per eb1. Questo moltiplicatore è l'odds ratio.

- Se b1>1, gli odds aumentano (l'evento diventa più probabile)

- Se b1<1, gli odds diminuiscono (gli eventi diventano probabili)

- Se b1=1, l'odds ratio è 0, il che significa che l'input non ha alcun effetto sugli odds

L'odds ratio conferisce alla regressione logistica la sua interpretabilità: le dice come cambiano gli odds di un evento in base agli input, il che è utile in molti contesti applicati come l'assistenza sanitaria, il marketing e la finanza. Tuttavia, non possiamo interpretare i coefficienti nello stesso modo in cui interpretiamo quelli della regressione lineare. Nella prossima sezione, daremo un'occhiata da vicino a come vengono determinati e interpretati i coefficienti.

Coefficienti di regressione logistica

Predittori continui

Come abbiamo detto in precedenza, nella regressione lineare i coefficienti sono semplici da interpretare. Prendiamo un esempio di regressione lineare con variabili continue: per un aumento di un'unità dell'input x si ottiene un aumento di b1 unità del risultato previsto y. Questa relazione diretta funziona perché la regressione lineare presuppone un tasso di variazione costante tra le caratteristiche di input e il target. Il suo output è illimitato e cresce linearmente.

Tuttavia, la regressione logistica non modella direttamente y, bensì modella la probabilità di y attraverso il log-odds (il log degli odds). Per questo motivo, non possiamo dire che un aumento di un'unità in x risulti in una variazione unitaria costante in y. Invece, interpretiamo il coefficiente in termini del suo effetto sul log-odds e, per estensione, sugli odds e sulla probabilità del risultato.

Più specificamente, nella regressione logistica:

  • Un coefficiente positivo significa che il log-odds del risultato aumenta all'aumentare dell'input. Ciò corrisponde a un aumento della probabilità.
  • Un coefficiente negativo significa che il log-odds diminuisce all'aumentare dell'input. Ciò corrisponde a una diminuzione della probabilità.
  • Un coefficiente pari a zero significa che la variabile non ha alcun effetto sul risultato.

È importante sottolineare che l'entità del coefficiente riflette quanto sia forte questa influenza, mentre l'odds ratio (che è l'esponenziale del coefficiente) ci dice quanto cambiano gli odds per un aumento di un'unità della variabile.

Predittori categorici

Proprio come altri algoritmi di machine learning, possiamo incorporare variabili categoriche per fare previsioni sulla regressione. Quando lavoriamo con variabili categoriche o discrete, utilizziamo spesso tecniche di feature engineering, come la codifica one-hot o le variabili fittizie, per convertirle in un formato binario utilizzabile dal modello.

Ad esempio, utilizzando lo stesso concetto di prima, supponiamo di voler prevedere se a qualcuno verrà approvato un prestito (y=1 per approvato, y=0 per non approvato) in base al fatto che abbiano ancora un debito esistente:

- Sia x=0 significa che non hanno debiti esistenti

- Sia x=1 significa che hanno debiti esistenti

Il nostro log-odds di y=approval sarebbe y=b0+b1*x1

Il coefficiente b1, rappresenta quindi la variazione del log-odds di essere approvato quando la persona ha un debito esistente, rispetto a qualcuno che non lo ha.

Per renderlo più interpretabile, possiamo esponenziare b1 per ottenere l'odds ratio:

  • Se  b1 è positivo, e alla potenza di b1 è maggiore di 1, il che significa che avere un debito esistente aumenta gli odds di essere approvato.
  • Se  b1 è negativo, e alla potenza di b1 è inferiore a 1, il che significa che avere un debito esistente riduce gli odds di essere approvato.
  • Se  b1 è 0, e alla potenza di b1 è 1, il che significa che lo stato del debito non ha effetto.

Quindi, anche se perdiamo la semplice interpretazione dei coefficienti dalla regressione lineare, la regressione logistica offre comunque insight utili e interpretabili, specialmente quando li vediamo in termini di odds e variazioni di probabilità. L'entità dell'aumento o della diminuzione della probabilità come funzione di x  non corrisponde a una unità di incremento in x, ma dipende da dove x è a un certo punto.

 

AI Academy

AI all'opera nell'ambito del servizio clienti

Scopri come l'AI generativa può offrire ai clienti un'esperienza più fluida e aumentare la produttività dell'organizzazione in queste tre aree chiave: self-service, agenti umani e operazioni di contact center.

Stima della massima verosimiglianza

I coefficienti nella regressione logistica,  β0  e  β1 , sono stimati utilizzando la stima della massima verosimiglianza (MLE). L'idea alla base della MLE è trovare i parametri che rendono i dati osservati più "probabili" secondo il modello di regressione logistica.

Nella regressione logistica, modelliamo la probabilità che la variabile target  y1  è 1 (ad esempio, "approvato") dato un input  x1  utilizzando la funzione logistica (sigmoide):

 Y=P(x)=eβ0+β1x1+eβ0+β1x

MLE prova diverse combinazioni di b0 e b1e per ogni combinazione chiede: "quanto è probabile che vedremo i risultati effettivi nei nostri dati, in presenza di questi parametri?"

Questo viene acquisito utilizzando la funzione di verosimiglianza, che moltiplica le probabilità previste per ogni punto dati:

  L(β0,β1)=i=1np(xi)yi·(1-p(xi))1-yi

- Se y1=1  =1 ("approvato"), vogliamo che la probabilità prevista del modello  P(x1)  sia il più vicino possibile a 1. Il termine  p(xi)yi  affronta questo problema. Se i dati effettivamente osservati di y1 sono davvero “approvati” o 1, il termine sarà 1.

- Se y1=0  =0, vogliamo che la probabilità prevista sia vicina a 0. Il termine  (1-p(xi))1-yi  si occupa di questo caso. Se i dati effettivamente osservati di y1 è "non approvato", o 0, il valore sarà p(xi) sarà vicino a 0, quindi 1-p(xi) sarà vicino a 1.

Quindi, per ogni punto dati, moltiplichiamo p(x1) Oppure 1p(xi) , a seconda che l'etichetta effettiva sia 1 o 0. Il prodotto tra tutti gli esempi ci fornisce un unico numero: la probabilità di vedere l'intero set di dati secondo il modello attuale. Come possiamo vedere, se i risultati previsti (utilizzando i parametri b0 e b1) sono conformi ai dati osservati, il valore di verosimiglianza sarà massimizzato. La ragione dietro la moltiplicazione di tutte le probabilità è che supponiamo che i risultati siano indipendenti l'uno dall'altro. In altre parole, la possibilità di approvazione di una persona non dovrebbe influenzare la possibilità di approvazione di un'altra persona.

Poiché questo prodotto può diventare estremamente piccolo, di solito lavoriamo con la verosimiglianza logaritmica, che trasforma il prodotto in una somma ed è più facile da calcolare e ottimizzare.

Per trovare i valori di b0 e b1 che massimizzano il log-likelihood, utilizziamo la discesa del gradiente, un algoritmo di ottimizzazione iterativa. In ogni fase, calcoliamo come cambia la verosimiglianza logaritmica rispetto a ciascun parametro (ad esempio, il suo gradiente), quindi aggiorniamo leggermente i parametri nella direzione che aumenta la probabilità. Nel tempo, questo processo converge verso i valori di b0 e b1 che si adattano meglio ai dati.

Tipi di regressione logistica

Esistono tre tipi di modelli di regressione logistica, definiti in base alla risposta categorica.

  • Regressione logistica binaria: in questo approccio, la risposta o variabile dipendente è di natura dicotomica, ovvero ha solo due possibili esiti (ad esempio 0 o 1). Alcuni esempi comuni del suo utilizzo includono la capacità di prevedere se un'e-mail è spam o non spam o se un tumore è maligno o non maligno. Nell'ambito della regressione logistica, questo è l'approccio più utilizzato e, più in generale, è uno dei classificatori più comuni per la classificazione binaria.
  • Regressione logistica multinomiale: in questo tipo di modello di regressione logistica, la variabile dipendente ha tre o più risultati possibili; tuttavia, questi valori non hanno un ordine specificato. Ad esempio, gli studi cinematografici vogliono prevedere quale genere di film è probabile che uno spettatore veda per commercializzare i film in modo più efficace. Un modello di regressione logistica multinomiale può aiutare lo studio a determinare quanto l'età, il genere e lo stato civile di una persona possano influire sul tipo di film che preferisce. Lo studio può quindi orientare la campagna pubblicitaria di un film specifico verso un gruppo di persone che probabilmente andrà a vederlo.
  • Regressione logistica ordinale: questo tipo di modello di regressione logistica viene utilizzato quando la variabile di risposta ha tre o più risultati possibili, ma in questo caso questi valori hanno un ordine definito. Esempi di risposte ordinali includono scale di valutazione da A a F o scale di valutazione da 1 a 5.

Casi d'uso di regressione logistica

La regressione logistica viene comunemente utilizzata per problemi di previsione e classificazione. Alcuni di questi casi d'uso includono:

  • Rilevamento delle frodi: i modelli di regressione logistica possono aiutare i team a identificare le anomalie dei dati, che sono predittive di frode. Alcuni comportamenti o caratteristiche possono avere una maggiore associazione con le attività fraudolente, il che è particolarmente utile per le istituzioni bancarie e finanziarie nella protezione dei clienti. Anche le aziende basate su SaaS hanno iniziato ad adottare queste pratiche per eliminare i falsi account utente dai loro set di dati quando analizzano i dati delle prestazioni aziendali.
  • Previsione delle malattie: in medicina, questo approccio di analytics può essere utilizzato per prevedere la probabilità di patologie o malattie per una determinata popolazione. Le organizzazioni sanitarie possono impostare cure preventive per le persone che mostrano una maggiore propensione per malattie specifiche.
  • Previsione dell'abbandono: comportamenti specifici possono essere indicativi di abbandono in diverse funzioni di un'organizzazione. Ad esempio, i team delle risorse umane e del management potrebbero voler sapere se ci sono persone altamente performanti all'interno dell'azienda che rischiano di lasciare l'organizzazione. Questo tipo di insight può avviare delle conversazioni per comprendere le aree problematiche all'interno dell'azienda, come la cultura o la retribuzione. In alternativa, l'organizzazione di vendita potrebbe voler sapere quali dei loro clienti sono a rischio di acquistare altrove. Ciò può spingere i team a definire una strategia di fidelizzazione per evitare perdite di fatturato.
Soluzioni correlate
IBM watsonx.ai

Addestra, convalida, adatta e implementa le funzionalità di AI generativa, foundation model e machine learning con IBM watsonx.ai, uno studio aziendale di nuova generazione per builder AI. Crea applicazioni AI in tempi ridotti e con una minima quantità di dati.

Scopri watsonx.ai
Soluzioni di intelligenza artificiale

Metti l'AI al servizio della tua azienda grazie all'esperienza leader di settore e alla gamma di soluzioni di IBM nel campo dell'AI.

Esplora le soluzioni AI
Consulenza e servizi sull'AI

Reinventa i flussi di lavoro e le operazioni critiche aggiungendo l'AI per massimizzare le esperienze, il processo decisionale in tempo reale e il valore di business.

Esplora i servizi AI
Fai il passo successivo

Ottieni l'accesso completo a funzionalità che coprono l'intero ciclo di vita dello sviluppo dell'AI. Crea soluzioni AI all'avanguardia con interfacce intuitive, workflow e accesso alle API e agli SDK standard di settore.

Esplora watsonx.ai Prenota una demo live