label_binarize#
- sklearn.preprocessing.label_binarize(y, *, classes, neg_label=0, pos_label=1, sparse_output=False)[Quelle]#
Binarisiert Labels im One-vs-all-Verfahren.
In scikit-learn stehen mehrere Regressions- und binäre Klassifikationsalgorithmen zur Verfügung. Eine einfache Möglichkeit, diese Algorithmen auf den Multi-Class-Klassifikationsfall zu erweitern, ist die Verwendung des sogenannten One-vs-All-Schemas.
Diese Funktion ermöglicht die Berechnung dieser Transformation für einen festen Satz von Klassenbezeichnungen, die im Voraus bekannt sind.
- Parameter:
- yarray-like oder Sparse-Matrix
Sequenz von Integer-Labels oder Multilabel-Daten zum Kodieren.
- classesarray-like der Form (n_classes,)
Enthält eindeutig das Label für jede Klasse.
- neg_labelint, Standardwert=0
Wert, mit dem negative Labels kodiert werden müssen.
- pos_labelint, Standardwert=1
Wert, mit dem positive Labels kodiert werden müssen.
- sparse_outputbool, Standardwert=False,
Auf True setzen, wenn die binäre Ausgabematrix im CSR-Sparse-Format gewünscht wird.
- Gibt zurück:
- Y{ndarray, sparse matrix} von Form (n_samples, n_classes)
Die Form wird bei binären Problemen (n_samples, 1) sein. Die Sparse-Matrix wird im CSR-Format vorliegen.
Siehe auch
LabelBinarizerKlasse, die verwendet wird, um die Funktionalität von label_binarize zu wrappen und das Anpassen an Klassen unabhängig von der Transformationsoperation zu ermöglichen.
Beispiele
>>> from sklearn.preprocessing import label_binarize >>> label_binarize([1, 6], classes=[1, 2, 4, 6]) array([[1, 0, 0, 0], [0, 0, 0, 1]])
Die Klassenreihenfolge wird beibehalten
>>> label_binarize([1, 6], classes=[1, 6, 4, 2]) array([[1, 0, 0, 0], [0, 1, 0, 0]])
Binäre Ziele werden in einen Spaltenvektor transformiert
>>> label_binarize(['yes', 'no', 'no', 'yes'], classes=['no', 'yes']) array([[1], [0], [0], [1]])