Modello logit

In statistica, il modello logit, noto anche come modello logistico o regressione logistica, è un modello di regressione nonlineare utilizzato quando la variabile dipendente è di tipo dicotomico. L'obiettivo del modello è di stabilire la probabilità con cui un'osservazione può generare uno o l'altro valore della variabile dipendente; può inoltre essere utilizzato per classificare le osservazioni, in base alla caratteristiche di queste, in due categorie.[1]
Il modello logit fa parte della classe dei modelli lineari generalizzati, così come il modello probit ed il modello loglineare, dai quali differisce essenzialmente per la scelta della funzione .[1]
Scelta della funzione
[modifica | modifica wikitesto]
Un modello di regressione dove la variabile dipendente è dicotomica, ossia una variabile che può avere come unici valori 0 e 1 o riconducibili ad essi, calcola la probabilità che questa variabile acquisisca valore 1. Poiché le probabilità per definizione sono limitate ad un intervallo , l'utilizzo di un modello di regressione lineare non sarebbe appropriato, infatti esso restituirebbe dei valori appartenenti all'intero insieme .[2] Si supponga infatti il seguente modello lineare:
La derivata
essendo costante e uguale al parametro , non permette alla funzione di cambiare pendenza in base al valore di e quindi di poter avere come codominio . Questa caratteristica è invece posseduta, ad esempio, dalle funzioni di ripartizione.[2] L'utilizzo infatti di una funzione non lineare permette di avere una derivata prima dipendente da e quindi in grado di cambiare al variare di questa variabile. Se si considera infatti il seguente modello:
dove la derivata è la seguente
Si nota come la pendenza della curva ora possa variare al variare di , potendo quindi possedere un codominio . Per il modello logit si utilizza come funzione la funzione di ripartizione della distribuzione logistica standard.[1]
Definizione
[modifica | modifica wikitesto]Il modello di regressione logit per la popolazione è:[1][3]
dove:
- indica la probabilità;
- è la variabile dipendente dicotomica con una distribuzione bernoulliana ;
- è il vettore di variabili indipendenti o regressori ;
- è il vettore di parametri ;
- è la funzione di ripartizione della distribuzione logistica standard;
- è il numero di Eulero, circa uguale a .
Varianza
[modifica | modifica wikitesto]La varianza della variabile dipendente risulta dipendere dal vettore dei regressori . Infatti
Effetto marginale
[modifica | modifica wikitesto]L'effetto sulla variabile dipendente dato da un cambiamento in un regressore , chiamato effetto marginale, è calcolato come la derivata del valore atteso di rispetto a :
dove è il parametro associato al regressore .[1] Per il calcolo della derivata il regressore deve essere continuo.
Illustrazione del metodo
[modifica | modifica wikitesto]Per ogni osservazione campionaria si dispone di una determinazione e di determinazioni . Il modello cerca una relazione non lineare, utilizzando la funzione di ripartizione della distribuzione logistica standard, tra la variabile dipendente e variabili indipendenti, stimando il valore dei coefficienti tramite il metodo della massima verosimiglianza.[1]
Stima del modello
[modifica | modifica wikitesto]Il vettore di parametri è di norma stimato con il metodo della massima verosimiglianza, con il quale si ottengono stimatori efficienti, consistenti e distribuiti normalmente nel caso in cui il campione statistico sia abbastanza grande.[4] Queste proprietà permettono di calcolare il test t su un parametro, il test F nel caso di restrizioni multiple e gli intervalli di confidenza.[4] Alla stima dei parametri segue la stima della probabilità .
Funzione di verosimiglianza
[modifica | modifica wikitesto]Nel modello logit la variabile dipendente è dicotomica e con distribuzione . Si consideri un campione di osservazioni dove ciascuna di esse è identificata con . Per la definizione del modello, la probabilità che questa variabile sia 1 per una data osservazione è
mentre la probabilità che sia 0 è
La distribuzione di probabilità condizionata per ogni elemento può essere scritta come
Si considera ora l'intero campione e sia assume che siano indipendenti e identicamente distribuite per ogni osservazione . Risulta quindi che la distribuzione di probabilità congiunta di è il prodotto delle probabilità condizionate di ogni osservazione:
Si riprende ora la definizione del modello logit e la si sostituisce al posto di , ottenendo quindi la funzione di verosimiglianza[5]
Stima dei parametri
[modifica | modifica wikitesto]Per calcolare gli stimatori dei parametri risulta conveniente calcolare la funzione di log-verosimiglianza poiché in questo modo si riesce a eliminare la produttoria. Si applica quindi il logaritmo alla funzione di verosimiglianza:
Gli stimatori calcolati con il metodo della massima verosimiglianza massimizzano la funzione precedente risolvendo il seguente problema:
Per semplificare la scrittura consideriamo un vettore dei parametri , la derivata di , ossia la funzione di densità di probabilità della distribuzione logistica, e il numero di osservazioni nel campione. Le condizioni per la massimizzazione sono due: quella di primo ordine dove la derivata prima rispetto ai parametri deve essere posta uguale a zero per trovare i punti estremanti, la seconda invece pone la derivata seconda, sempre rispetto ai parametri, minore di zero per determinare le concavità della funzione e quindi garantire che quelli trovati siano solo punti di massimo:
Solitamente le soluzioni di queste condizioni non sono semplici da determinare oppure non possono essere trovate affatto, ma per ovviare a questo problema si possono utilizzare dei programmi statistici per computer che, attraverso alcuni algoritmi, trovano delle loro approssimazioni.[6]
Stima della probabilità
[modifica | modifica wikitesto]Quando è stato calcolato il vettore , ossia la stima del vettore dei parametri , è possibile procedere alla stima della probabilità . Per definizione del modello, questa probabilità è anche il valore atteso di .
Esempio in python
[modifica | modifica wikitesto]Utilizzando la regressione logistica nel linguaggio di programmazione python si vuole predire se una persona è malata di cuore oppure no , mediante parametri tra cui la pressione arteriosa e il livello di colesterolo nel sangue ecc. contenuti in un dataset liberamente scaricabile da Github. La variabile da predire è target che assume 1 se la persona è malata, 0 altrimenti. Si divide il dataset in un Training Set pari all'80% delle osservazioni su cui si addestra il modello logistico, ed il restante 20% delle osservazioni rappresenta il Testing Set su cui si calcola l'Accuracy per valutare se il modello predice bene la malattia:
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score
# Caricamento del dataset
url = "https://raw.githubusercontent.com/g-shreekant/Heart-Disease-Prediction-using-Machine-Learning/refs/heads/master/heart.csv"
df = pd.read_csv(url)
# Definizione delle feature e della variabile target
X = df.drop(columns=['target']) # Feature
y = df['target'] # Variabile target (0 = no malattia, 1 = malattia)
# Suddivisione in Training e Testing Set
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42, stratify=y)
# Normalizzazione delle feature
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
# Creazione e addestramento del modello di Regressione Logistica
model = LogisticRegression()
model.fit(X_train, y_train)
# Predizioni sul testing set
y_pred = model.predict(X_test)
# Valutazione del modello
accuracy = accuracy_score(y_test, y_pred)
print(f'Accuracy: {accuracy:.4f}')
Accuracy: 0.8033
Essendo l'accuracy pari all'80,33% il modello logistico predice bene la malattia.
Note
[modifica | modifica wikitesto]- ^ a b c d e f (EN) James H. Stock e Mark W. Watson, Regression with a Binary Dependent Variable, in Introduction to Econometrics, 3ª ed., Pearson, 2015, pp. 442-443, ISBN 978-1-292-07131-2.
- ^ a b (EN) James H. Stock e Mark W. Watson, Regression with a Binary Dependent Variable, in Introduction to Econometrics, 3ª ed., Pearson, 2015, p. 437, ISBN 978-1-292-07131-2.
- ^ Il valore attes
- ^ a b (EN) James H. Stock e Mark W. Watson, Regression with a Binary Dependent Variable, in Introduction to Econometrics, 3ª ed., Pearson, 2015, pp. 441-442, ISBN 978-1-292-07131-2.
- ^ L'intera derivazione della funzione di verosimiglianza è consultabile alle pagine qui riportate. (EN) James H. Stock e Mark W. Watson, Regression with a Binary Dependent Variable, in Introduction to Econometrics, 3ª ed., Pearson, 2015, pp. 465-466, ISBN 978-1-292-07131-2.
- ^ a b (EN) James H. Stock e Mark W. Watson, Regression with a Binary Dependent Variable, in Introduction to Econometrics, 3ª ed., Pearson, 2015, pp. 465-466, ISBN 978-1-292-07131-2.
Bibliografia
[modifica | modifica wikitesto]- (EN) Alan Agresti, Categorical Data Analysis, Wiley, 2003, ISBN 978-0-471-36093-3.
- (EN) William H. Greene, Econometric Analysis, 4ª ed., Prentice Hall, 1999 [1993], ISBN 978-0-130-13297-0.
- (EN) James H. Stock e Mark W. Watson, Regression with a Binary Dependent Variable, in Introduction to Econometrics, 3ª ed., Pearson, 2015, ISBN 978-1-292-07131-2.
- (EN) P. McCullagh e John A. Nelder, Generalized Linear Models, 2ª ed., Chapman and Hall/CRC, 1989, ISBN 978-0-412-31760-6.
Voci correlate
[modifica | modifica wikitesto]Altri progetti
[modifica | modifica wikitesto]Wikimedia Commons contiene immagini o altri file sul regressione logistica
Controllo di autorità | LCCN (EN) sh85078131 · GND (DE) 4230396-5 · BNF (FR) cb13737339z (data) · J9U (EN, HE) 987007536257205171 |
---|