La regressione logistica Γ¨ classificatore in cui l'obiettivo Γ¨ prevedere l'appartenenza di un'osservazione a una delle due classi possibili (ad esempio, β1β o β0β, βveroβ o βfalsoβ, βpositivoβ o βnegativoβ). Si chiama regressore anche se Γ¨ un classificatore per motivi storici. Notate che, nonostante il suo nome, lβalgoritmo a regressione logistica Γ¨ un modello di classificazione e non di regressione. La regressione logistica si basa sulla funzione logistica (o sigmoide) per stimare la probabilitΓ che unβosservazione appartenga a una delle due classi. Questa probabilitΓ viene quindi mappata a una classe utilizzando una soglia di decisione (ad esempio, 0.5).
La formula matematica della regressione logistica Γ¨ la seguente:
Dove: - rappresenta la probabilitΓ condizionata che sia uguale a 1 dato . - Γ¨ la variabile indipendente. - Γ¨ lβintercetta. - Γ¨ il coefficiente associato a . - Γ¨ la base del logaritmo naturale.
Ecco uno script commentato in Keras per addestrare un modello di regressione logistica su un dataset di classificazione binaria:
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import Adam
import numpy as np
# Genera dati di esempio per la classificazione binaria
X = np.random.rand(100, 1) # Variabile indipendente
y = (X > 0.5).astype(int) # Variabile dipendente binaria
# Crea un modello sequenziale per la regressione logistica
model = Sequential()
model.add(Dense(1, input_dim=1, activation='sigmoid')) # Usiamo la funzione di attivazione sigmoide
# Compila il modello utilizzando la funzione di perdita di entropia incrociata binaria
model.compile(loss='binary_crossentropy', optimizer=Adam(learning_rate=0.01), metrics=['accuracy'])
# Addestra il modello
model.fit(X, y, epochs=100, verbose=0)
# Effettua previsioni (probabilitΓ )
predictions = model.predict(X)
# Effettua previsioni (classi) utilizzando una soglia di decisione (0.5)
predicted_classes = (predictions > 0.5).astype(int)
# Valuta l'accuratezza del modello
accuracy = (predicted_classes == y).mean()
print("Accuracy:", accuracy)
In questo esempio, il modello utilizza una singola variabile indipendente per prevedere la probabilitΓ di appartenenza alla classe 1.
La funzione di attivazione sigmoid
viene utilizzata per mappare la probabilitΓ tra 0 e 1. La funzione di perdita binary_crossentropy
Γ¨ utilizzata come funzione di costo.
Dopo lβaddestramento, le previsioni vengono effettuate sia come probabilitΓ che come classi binarie utilizzando una soglia di decisione del 0.5, e lβaccuratezza del modello viene calcolata.
Decision boundary
La βretta di decisioneβ (o βboundary di decisioneβ) nella regressione logistica Γ¨ una linea immaginaria che separa due classi in un problema di classificazione binaria. La retta di decisione rappresenta il punto in cui la probabilitΓ stimata dal modello di appartenenza a una delle due classi passa da una classe allβaltra. In altre parole, Γ¨ il confine tra le regioni in cui il modello classifica le osservazioni come βclasse positivaβ o βclasse negativaβ.
La formula matematica della retta di decisione nella regressione logistica puΓ² variare in base al numero di variabili indipendenti utilizzate nel modello. Per un problema di classificazione binaria con una singola variabile indipendente, la retta di decisione Γ¨ una retta nella forma:
Dove:
- Γ¨ lβintercetta del modello.
- Γ¨ il coefficiente associato alla variabile indipendente .
Nella notazione con bias (intercetta) e weight (coefficienti) lβequazione si puΓ² scrivere come
Dove:
- Γ¨ lβintercetta del modello, spesso denotata come ( \beta_0 ) nella notazione tradizionale.
- rappresenta il peso o il coefficiente associato alla variabile indipendente .
- sono le variabili indipendenti (caratteristiche) del modello.
Questa retta divide lo spazio delle caratteristiche in due regioni, una in cui il modello predice la βclasse positivaβ (quando ) e una in cui predice la βclasse negativaβ (quando ).
Tuttavia, se si hanno piΓΉ di una variabile indipendente (un problema di classificazione multivariata), la retta di decisione diventa un iperpiano o una curva decisionale, a seconda della complessitΓ del modello.
La retta di decisione Γ¨ fondamentale per la capacitΓ di classificazione del modello di regressione logistica, poichΓ© determina come le diverse osservazioni vengono assegnate a una delle due classi. La scelta dei coefficienti e influenzerΓ la posizione e lβorientamento di questa retta di decisione.