compute_class_weight#
- sklearn.utils.class_weight.compute_class_weight(class_weight, *, classes, y, sample_weight=None)[Quellcode]#
Schätzt Klassengewichte für unausgeglichene Datensätze.
- Parameter:
- class_weightdict, “balanced” oder None
Wenn „balanced“, werden die Klassengewichte gegeben durch
n_samples / (n_classes * np.bincount(y))oder deren gewichtete Entsprechung, wennsample_weightbereitgestellt wird. Wenn ein Wörterbuch gegeben wird, sind die Schlüssel Klassen und die Werte die entsprechenden Klassengewichte. WennNonegegeben wird, sind die Klassengewichte einheitlich.- classesndarray
Array der Klassen, die in den Daten vorkommen, wie gegeben durch
np.unique(y_org)mity_orgden ursprünglichen Klassenbezeichnungen.- yarray-like von Form (n_samples,)
Array der ursprünglichen Klassenbezeichnungen pro Stichprobe.
- sample_weightarray-like der Form (n_samples,), Standardwert=None
Array von Gewichten, die einzelnen Stichproben zugewiesen werden. Wird nur verwendet, wenn
class_weight='balanced'.
- Gibt zurück:
- class_weight_vectndarray der Form (n_classes,)
Array mit
class_weight_vect[i]dem Gewicht für die i-te Klasse.
Referenzen
Die „balanced“-Heuristik ist inspiriert von Logistic Regression in Rare Events Data, King, Zen, 2001.
Beispiele
>>> import numpy as np >>> from sklearn.utils.class_weight import compute_class_weight >>> y = [1, 1, 1, 1, 0, 0] >>> compute_class_weight(class_weight="balanced", classes=np.unique(y), y=y) array([1.5 , 0.75])