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’)¶

Współczynnik podobieństwa Jaccarda.

Wskaźnik Jaccarda lub współczynnik podobieństwa Jaccarda, zdefiniowany jako wielkość przecięcia podzielona przez wielkość unii dwóch zbiorów etykiet, jest używany do porównania zestawu przewidywanych etykiet dla próbki z odpowiadającym mu zestawem etykiet w y_true.

Czytaj więcej w Podręczniku użytkownika.

Parametry y_true1d tablica podobna do tablicy, lub tablica wskaźników etykiet / macierz rzadka

Ground truth (poprawne) etykiety.

y_pred1d array-like, or label indicator array / sparse matrix

Predicted labels, as returned by a classifier.

labelsarray-like of shape (n_classes,), default=None

Zbiór etykiet do uwzględnienia, jeśli average != 'binary', i ich kolejność, jeśli average is None. Etykiety obecne w danych mogą zostać wykluczone, na przykład w celu obliczenia średniej wieloklasowej ignorującej większość klas ujemnych, podczas gdy etykiety nieobecne w danych dadzą wynik 0 składowych w średniej makro. W przypadku celów wieloznakowych, etykiety są indeksami kolumn. Domyślnie wszystkie etykiety w y_true iy_pred są używane w porządku posortowanym.

pos_labelstr lub int, default=1

Klasa do raportowania, jeśli average='binary' i dane są binarne.Jeśli dane są wieloklasowe lub wieloznakowe, zostanie to zignorowane; ustawienie labels= i average != 'binary' spowoduje, że raportowane będą wyniki tylko dla tej etykiety.

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

Jeśli None, zwracane są wyniki dla każdej klasy. W przeciwnym razie określa typ uśredniania wykonywanego na danych:

'binary':

Zgłaszaj wyniki tylko dla klasy określonej przez pos_label.Ma to zastosowanie tylko wtedy, gdy cele (y_{true,pred}) są binarne.

'micro':

Oblicz metryki globalnie, zliczając łączną liczbę wyników prawdziwie pozytywnych,fałszywie negatywnych i fałszywie pozytywnych.

'macro':

Oblicz metryki dla każdej etykiety i znajdź ich nieważoną średnią. To nie bierze pod uwagę nierównowagi etykiet.

'weighted':

Calculate metrics for each label, and find their average, weightedby support (the number of true instances for each label). To zmienia 'makro’, aby uwzględnić nierównowagę etykiet.

'samples':

Oblicz metryki dla każdej instancji i znajdź ich średnią (onlymeanful for multilabel classification).

sample_weightarray-like of shape (n_próbek,), default=None

Wagi próbek.

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

Ustawia wartość do zwrócenia, gdy istnieje podział zerowy, tj. gdy nie ma wartości ujemnych w przewidywaniach i etykietach. Jeśli ustawione na „warn”, działa to jak 0, ale ostrzeżenie jest również podnoszone.

Zwraca scorefloat (jeśli średnia nie jest None) lub tablicę float, shape =

Zobacz także

accuracy_score, f_score, multilabel_confusion_matrix

Uwagi

jaccard_score może być słabą metryką, jeśli nie ma wartości ujemnych dla niektórych próbek lub klas. Jaccard jest niezdefiniowany, jeśli nie ma prawdziwych lub przewidywanych etykiet, a nasza implementacja zwróci wynik 0 z ostrzeżeniem.

1

Wikipedia wpis dla indeksu Jaccard.

Przykłady

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

W przypadku binarnym:

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

W przypadku wieloetykietowym:

>>> 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()

W przypadku wieloklasowym:

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

Przykłady z użyciem sklearn.metrics.jaccard_scoreś

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.