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

Jaccard hasonlósági együttható pontszám.

A Jaccard-index vagy Jaccard hasonlósági együttható, amelyet úgy határozunk meg, hogy a metszéspont méretét elosztjuk két címkekészlet uniójának méretével, arra szolgál, hogy összehasonlítsuk egy minta megjósolt címkekészletét a y_true-ben szereplő megfelelő címkekészlettel.

Bővebben a felhasználói kézikönyvben.

Paraméterek y_true1d tömbszerű, vagy címkeindikátor tömb / ritka mátrix

Ground truth (helyes) címkék.

y_pred1d tömbszerű, vagy címkeindikátor tömb / ritka mátrix

Az osztályozó által visszaadott előre jelzett címkék.

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

A címkék halmaza, ha average != 'binary', és azok rendje, ha average is None. Az adatokban jelenlévő címkék kizárhatók, például egy többosztályos átlag kiszámításához, amely figyelmen kívül hagyja a többségi negatív osztályt, míg az adatokban nem jelenlévő címkék 0 komponenst eredményeznek a makroátlagban. Többcímkés célértékek esetén a címkék oszlopindexek. Alapértelmezés szerint a y_true ésy_pred összes címke rendezett sorrendben kerül felhasználásra.

pos_labelstr vagy int, default=1

A jelentendő osztály, ha average='binary' és az adatok binárisak.Ha az adatok többosztályosak vagy többcímkések, ezt figyelmen kívül hagyjuk;labels= és average != 'binary' beállítása csak az adott címke pontszámait jelenti.

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

Ha None, akkor az egyes osztályok pontszámait adjuk vissza. Egyébként ezmeghatározza az adatokon végzett átlagolás típusát:

'binary': y_{true,pred}) binárisak. 'micro':

Globálisan számolja ki a metrikákat az összes igaz pozitív, hamis negatív és hamis pozitív eredmény számlálásával.

'macro':

Számítsuk ki a metrikákat minden egyes címkére, és találjuk meg a súlyozatlan átlagukat. Ez nem veszi figyelembe a címkék kiegyensúlyozatlanságát.

'weighted':

Számítsuk ki a metrikákat minden címkére, és találjuk meg az átlagukat, a támogatással súlyozva (a valódi példányok száma minden címkéhez). Ez módosítja a “makrót”, hogy figyelembe vegye a címkék kiegyensúlyozatlanságát.

'samples':

Kiszámítja a metrikákat minden egyes példányra, és megtalálja az átlagukat (csak multilabel osztályozásnál van jelentősége).

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

Minta súlyok.

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

Beállítja az értéket, amelyet akkor ad vissza, ha nulla osztás van, azaz ha nincsenek negatív értékek az előrejelzésekben és a címkékben. Ha “warn”-ra van állítva, akkor ez úgy viselkedik, mint a 0, de figyelmeztetést is kap.

Visszaadja scorefloat (ha az átlag nem None) vagy float tömb, shape =

See also

accuracy_score, f_score, multilabel_confusion_matrix

Notes

jaccard_score lehet rossz metrika, ha néhány minta vagy osztály esetében nopozitív értékek vannak. A Jaccard nem definiált, ha nincsenek igaz vagy megjósolt címkék, és a mi implementációnk 0 pontszámot ad vissza egy figyelmeztetéssel.

1

Wikipedia bejegyzés a Jaccard indexről.

Példák

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

Bináris esetben:

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

Multicímkés esetben:

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

A többosztályos esetben:

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

Példák a sklearn használatával.metrics.jaccard_score¶

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.