Regressione logistica in profondità
Una tecnica statistica molto apprezzata per affrontare i problemi di classificazione nell'apprendimento automatico è la regressione logistica. La regressione logistica è un metodo per prevedere risultati binari, come "sì" o "no" o "vero" o "falso", al contrario della regressione lineare, che viene utilizzata per prevedere risultati continui. La funzione logistica, che converte qualsiasi input con un valore reale in un numero compreso tra 0 e 1, funge da base per il modello di regressione logistica. Daremo una spiegazione approfondita della regressione logistica in questo post, coprendo il suo fondamento e la sua derivazione matematica. In primo luogo, inizieremo con la funzione sigmoidea e poi parleremo del modello di regressione logistica. Tuttavia, se vuoi saperne di più sulle funzioni di attivazione, dai un'occhiata a questo articolo.
Funzioni di attivazione in Machine LearningLa funzione sigmoidea
Un'espressione matematica chiamata funzione sigmoide converte qualsiasi input di valore reale in un numero compreso tra 0 e 1 ed è nota anche come funzione logistica. La funzione sigmoidea può essere definita come segue:
Dove:
- z denota una linea di classificazione che assomiglia a una regressione lineare,
- e è la base logaritmica naturale.
Nelle reti neurali artificiali, la funzione sigmoidea è spesso utilizzata come funzione di attivazione. Sulla base dei suoi input e pesi, l'output di un neurone è determinato da una funzione di attivazione in una rete neurale. La rete neurale è ampiamente utilizzata nell'apprendimento automatico, ma non ne parleremo in questo articolo. Se vuoi saperne di più, dai un'occhiata a questo articolo ( da pubblicare ).
Il modello di regressione logistica
Il modello di regressione logistica effettua previsioni sulla probabilità di un risultato binario (vero/falso o sì/no) in base a una o più caratteristiche di input utilizzando una funzione logistica. La probabilità prevista della classe positiva è rappresentata dall'output della funzione logistica, che va da 0 a 1. L'osservazione viene quindi classificata come positiva se la probabilità prevista supera la soglia, comunemente fissata a 0,5, per determinare la probabilità prevista classe. Riducendo la probabilità logaritmica negativa dei dati, che riflette la disparità tra le probabilità previste e le effettive etichette di classe, i coefficienti del modello di regressione logistica vengono ottimizzati. La funzione di costo per la regressione logistica è spesso chiamata perdita binaria di entropia incrociata.
La funzione di errore di entropia incrociata binaria
Una funzione di perdita comune nell'apprendimento automatico, in particolare per i problemi di classificazione binaria, è la funzione di errore di entropia incrociata binaria. Calcola la differenza tra la vera etichetta di una variabile target binaria e la probabilità prevista. Nella classificazione binaria, l'obiettivo è prevedere la probabilità della variabile target dato un insieme di caratteristiche. La variabile di destinazione può assumere solo due valori, ad esempio 0 e 1. La funzione di errore di entropia incrociata binaria è definita come segue:
Dove:
- y_n è la probabilità prevista per la classe positiva,
- t_n è la vera etichetta, 0 o 1,
- e J è una funzione obiettivo che cerchiamo di minimizzare o massimizzare .
Tuttavia, utilizzeremo la derivata parziale della funzione di errore di entropia incrociata binaria rispetto ai parametri per determinare i coefficienti del modello di regressione logistica per i valori ottimali. Iniziamo derivando parzialmente la funzione di costo per trovare i valori ottimali dei pesi della regressione logistica. Possiamo iniziare determinando la derivata di J rispetto a y_n. Dopodiché, possiamo trovare la derivata di y_n rispetto all'input della funzione sigmoidea, che funge da funzione di attivazione della regressione logistica, e poi possiamo derivare la derivata di a rispetto ai pesi.
Successivamente, possiamo ottenere l'espressione per determinare il valore ideale del termine bias, dove bias è tipicamente impostato su 1. Inoltre, bias può essere incluso nei pesi includendo un valore pari a 1.
Dopo aver ottenuto le espressioni dei parametri di ricerca, possiamo passare all'implementazione nel linguaggio di programmazione python.
import numpy as np
N = 100
def sigmoid_function(an):
return 1/(1 + np.exp(-an))
def binary_cross_entropy(T, Y):
E = 0
for i in range(len(T)):
if T[i] == 1:
E -= np.log(Y[i])
else:
E -= np.log(1 - Y[i])
return E
#short overwiev of updating process of w's
learning_rate = 0.01
for i in range(N):
# gradient descent weight udpate
w += learning_rate * Xb.T.dot(Y - T)
# recalculate Y
Y = sigmoid(Xb.dot(w))
from sklearn.linear_model import LogisticRegression
clf = LogisticRegression(random_state=0).fit(X, y)
clf.predict_proba(X)
clf.score(X, y)
L'aggiunta di un termine di penalità consente anche di modificare la funzione di costo. L'overfitting può essere prevenuto nella regressione logistica e nella regressione lineare attraverso la regolarizzazione. Questo termine incoraggia i coefficienti ad avere piccole grandezze, riducendo il loro impatto sulle previsioni del modello. La penalità per la regolarizzazione L1, detta anche Lasso, è pari al valore assoluto dei coefficienti, ma la penalità per la regolarizzazione L2, detta anche Ridge, è pari al quadrato dei coefficienti. Questi due metodi di regolarizzazione sono tipici e discuteremo di questi due metodi di regolarizzazione nel prossimo articolo ( da pubblicare ).
Classificazione multiclasse
I problemi di classificazione multiclasse, in cui il risultato può avere più di due valori, possono essere gestiti utilizzando un'estensione della regressione logistica. Di solito, vengono addestrati diversi modelli di regressione logistica binaria, uno per ogni classe, utilizzando il metodo uno contro tutti o uno contro resto. La previsione viene quindi effettuata per la classe con la probabilità prevista più alta.
Limitazione
A causa del fatto che la regressione logistica utilizza un modello lineare, potrebbe non essere adatta per i dati quando esistono correlazioni complesse tra le variabili indipendenti e il risultato binario. Inoltre, la regressione logistica non offre una stima della varianza delle probabilità previste, che è importante per comprendere e valutare il modello.
Se ti piace l'articolo, assicurati di seguirmi per vedere i miei nuovi articoli.

![Che cos'è un elenco collegato, comunque? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































