sklearn.metrics.jaccard_score¶

sklearn.metrics.jaccard_score(y_true, y_pred, *, labels=None, pos_label=1, average=’binary’, sample_weight=None, zero_division=’warn’)¶

Punteggio del coefficiente di similarità Jaccard.

L’indice Jaccard, o coefficiente di somiglianza Jaccard, definito come la dimensione dell’intersezione divisa per la dimensione dell’unione di due insiemi di etichette, è usato per confrontare l’insieme delle etichette previste per un campione con l’insieme corrispondente di etichette in y_true.

Leggi di più nella Guida utente.

Parametri y_true1d array-like, o array di indicatori di etichette / matrice sparsa

Etichette di verità di base (corrette).

y_pred1d array-like, o array di indicatori di etichette / matrice sparsa

Etichette previste, come restituite da un classificatore.

labelsarray-like di forma (n_classes,), default=None

L’insieme di etichette da includere quando average != 'binary', e il loro ordine se average is None. Le etichette presenti nei dati possono essere escluse, per esempio per calcolare una media multiclasse ignorando una classe negativa maggioritaria, mentre le etichette non presenti nei dati daranno come risultato 0 componenti in una media macro. Per gli obiettivi multiclasse, le etichette sono indici di colonna. Per default, tutte le etichette in y_true ey_pred sono usate in ordine ordinato.

pos_labelstr o int, default=1

La classe da riportare se average='binary' e i dati sono binari.Se i dati sono multiclasse o multilabel, questo verrà ignorato; impostando labels= e average != 'binary' verranno riportati solo i punteggi per quell’etichetta.

average{None, ‘micro’, ‘macro’, ‘samples’, ‘weighted’, ‘binary’}, default=’binary’

Se None, vengono riportati i punteggi per ogni classe. Altrimenti, questo determina il tipo di mediazione eseguita sui dati:

'binary':

Riporta solo i risultati per la classe specificata da pos_label.Questo è applicabile solo se gli obiettivi (y_{true,pred}) sono binari.

'micro':

Calcola le metriche globalmente contando il totale di veri positivi, falsi negativi e falsi positivi.

'macro':

Calcolare le metriche per ogni etichetta, e trovare la loro media non pesata. Questo non tiene conto dello squilibrio delle etichette.

'weighted':

Calcola le metriche per ogni etichetta e trova la loro media, ponderata per il supporto (il numero di istanze vere per ogni etichetta). Questo altera la ‘macro’ per tenere conto dello squilibrio delle etichette.

'samples':

Calcola le metriche per ogni istanza, e trova la loro media (significativa solo per la classificazione multilabel).

sample_weightarray-like of shape (n_samples,), default=None

Pesi campione.

zero_division “warn”, {0.0, 1.0}, default=”warn”

Imposta il valore da restituire quando c’è una divisione zero, cioè quando non ci sono valori negativi nelle previsioni e nelle etichette. Se impostato su “warn”, si comporta come 0, ma viene anche generato un avviso.

Restituisce scorefloat (se average non è None) o array di float, shape =

Vedi anche

accuracy_score, f_score, multilabel_confusion_matrix

Note

jaccard_score può essere una metrica scarsa se ci sono nopositivi per alcuni campioni o classi. Jaccard è indefinito se non ci sono etichette vere o predette, e la nostra implementazione restituirà un punteggio di 0 con un avvertimento.

1

Voce di Wikipedia per l’indice Jaccard.

Esempi

>>> import numpy as np>>> from sklearn.metrics import jaccard_score>>> y_true = np.array(,... ])>>> y_pred = np.array(,... ])

Nel caso binario:

>>> jaccard_score(y_true, y_pred)0.6666...

Nel caso multilabel:

>>> jaccard_score(y_true, y_pred, average='samples')0.5833...>>> jaccard_score(y_true, y_pred, average='macro')0.6666...>>> jaccard_score(y_true, y_pred, average=None)array()

Nel caso multiclasse:

>>> y_pred = >>> y_true = >>> jaccard_score(y_true, y_pred, average=None)array()

Esempi usando sklearn.metrics.jaccard_score¶

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.