Matrice di confusione in sklearn linuxhint

Matrice di confusione in sklearn linuxhint
“Una libreria di apprendimento automatico gratuito costruito su Python si chiama Scikit-Learn. Include diverse classificazioni, regressione e tecniche di clustering che possiamo utilizzare per fare previsioni utili utilizzando i nostri dati. Una matrice di confusione è una statistica che determina la correttezza e l'accuratezza di un modello. Può essere usato per affrontare i problemi di categorizzazione che sono binari o multi-classe. Questo articolo discute la matrice di confusione e la sua implementazione in Sklearn."

Cos'è una matrice di confusione?

L'accuratezza e la correttezza del modello vengono misurate usando la matrice di confusione. Può essere applicato a problemi di classificazione binaria o di più classi. Molte metriche sono misurate usando le misurazioni della matrice di confusione, anche se non è una misura diretta delle prestazioni. Una matrice di confusione è una matrice multidimensionale in cui i valori previsti sono rappresentati nelle righe e i valori reali nelle colonne. La variabile target in un problema di classificazione binaria avrà due valori, 1 o 0, indicati come valori effettivi come VERO O Falso, rispettivamente. Le previsioni del modello sono indicate come valori previsti.

Fonte: Explorium.AI

Veri positivi (TP)

I veri positivi sono il numero di casi in cui il valore effettivo di un campione di dati corrisponde al valore previsto.

True Negatives (TN)

I veri negativi sono una statistica che conta il numero di casi in cui il valore effettivo di un campione di dati è zero e il valore previsto è anche zero.

Falsi positivi (FP)

I falsi positivi si riferiscono al numero di occorrenze in cui il valore effettivo di un campione di dati è 0, ma il valore previsto è 1.

Falso negativi (FN)

I falsi negativi sono una statistica che conta il numero di occorrenze in cui il valore effettivo di un campione di dati è 1, ma il valore proiettato è 0.

Le prestazioni del modello saranno favorevoli, con valori maggiori di TP e TN e valori più bassi di FP e FN, in base al significato della terminologia precedente. Il modello dovrebbe essere addestrato per massimizzare TP e TN minimizzando i valori FP e FN. Se uno dei due, quale di FP e FN dovrebbe essere minimizzato dipende dai requisiti del problema della categorizzazione. Mantenere i falsi negativi al minimo sarà cruciale nel campo medico.

Ad esempio, supponiamo che la sfida di classificazione stia determinando se il paziente ha o meno una malattia significativa come il cancro o l'HIV. Prendi, ad esempio, se il paziente ha un cancro, che è rappresentato da 1 e se il paziente non ha il cancro, che è rappresentato da 0. In questo scenario, di solito è preferibile ridurre i falsi positivi rispetto ai falsi negativi.

Cioè se un paziente ha un cancro (1) e il modello prevede un negativo (0) - falsi negativi - il paziente e la diagnosi potrebbero essere messi a repentaglio. Di conseguenza, FN deve diminuire tanto quanto possibile. D'altra parte, se il paziente non ha il cancro (0) ma il modello prevede di aver avuto il cancro (1) - falsi positivi - questo avrà meno ramificazioni perché, nella maggior parte dei casi, saranno effettuati test successivi per malattie cruciali prima che la malattia sia confermata come positiva. Di conseguenza, i falsi positivi sono preferibili ai falsi negativi in ​​questo problema.

Vantaggi della matrice di confusione

  • Dimostra come qualsiasi modello di classificazione può essere perplesso quando si fa previsioni.
  • La matrice di confusione indica il tipo di errori commessi dal tuo classificatore oltre agli errori che vengono prodotti.
  • Usando questo guasto, puoi aggirare i problemi facendo affidamento interamente sull'accuratezza della classificazione.
  • Ogni colonna della matrice di confusione visualizza istanze di quella classe proiettata.
  • Ogni riga della matrice di confusione mappa a un'istanza di classe effettiva.
  • Rivela non solo gli errori commessi da un classificatore ma anche gli errori che gli umani commettono

Come si calcolano le matrici di confusione?

Di seguito sono riportati i passaggi per calcolare le matrici di confusione:

  • Dovresti avere un set di dati di test o di convalida con valori di esito previsti.
  • Quindi, prevedi ogni riga nel set di dati di test.
  • Di seguito sono riportati i risultati e le previsioni previste:
  1. Il numero di ipotesi corrette per ogni classe.
  2. Il numero totale di previsioni imprecise per ogni classe è ordinato per classe proiettata.

Implementazione della matrice di confusione in Sklearn

# Importazione delle etichette richieste
da Sklearn.Metriche Importa Confusion_Matrix
# Le vere etichette del set di dati indicato
y_true = [1, 2, 0, 2, 1, 0]
# Le etichette previste del set di dati indicato
y_pred = [1, 0, 1, 2, 0, 1]
# Ottieni la matrice di confusione del set di dati
confusion_matrix (y_true, y_pred)

Produzione

Array ([[0, 2, 0],
[1, 1, 0],
[1, 0, 1]])

Conclusione

Abbiamo appreso la matrice di confusione e la sua implementazione in Sklearn. Sklearn è una popolare libreria ML con sede a Python che implementa varie metriche e algoritmi. La matrice di confusione determina le metriche di accuratezza dei problemi di classificazione basati su veri positivi o veri negativi o falsi positivi o falsi negativi.