LabelPropagation#

class sklearn.semi_supervised.LabelPropagation(kernel='rbf', *, gamma=20, n_neighbors=7, max_iter=1000, tol=0.001, n_jobs=None)[Quelle]#

Label Propagation Klassifikator.

Lesen Sie mehr im Benutzerhandbuch.

Parameter:
kernel{‘knn’, ‘rbf’} oder aufrufbar, Standard=‘rbf’

Zeichenketten-Identifikator für die zu verwendende Kernel-Funktion oder die Kernel-Funktion selbst. Nur die Zeichenketten 'rbf' und 'knn' sind gültige Eingaben. Die übergebene Funktion sollte zwei Eingaben der Form (n_samples, n_features) erhalten und eine Gewichtsmatrix der Form (n_samples, n_samples) zurückgeben.

gammafloat, Standard=20

Parameter für den RBF-Kernel.

n_neighborsint, Standard=7

Parameter für den KNN-Kernel, der strikt positiv sein muss.

max_iterint, default=1000

Maximale Anzahl erlaubter Iterationen ändern.

tolfloat, Standard=1e-3

Konvergenztoleranz: Schwellenwert, um das System im stationären Zustand zu betrachten.

n_jobsint, default=None

Die Anzahl der parallelen Jobs, die ausgeführt werden sollen. None bedeutet 1, es sei denn, Sie befinden sich in einem joblib.parallel_backend-Kontext. -1 bedeutet die Verwendung aller Prozessoren. Siehe Glossar für weitere Details.

Attribute:
X_{array-like, sparse matrix} der Form (n_samples, n_features)

Eingabearray.

classes_ndarray der Form (n_classes,)

Die eindeutigen Labels, die zur Klassifizierung von Instanzen verwendet werden.

label_distributions_ndarray der Form (n_samples, n_classes)

Kategoriale Verteilung für jedes Element.

transduction_ndarray der Form (n_samples)

Label, das jedem Element während fit zugewiesen wird.

n_features_in_int

Anzahl der während des fits gesehenen Merkmale.

Hinzugefügt in Version 0.24.

feature_names_in_ndarray mit Form (n_features_in_,)

Namen der während fit gesehenen Merkmale. Nur definiert, wenn X Merkmalnamen hat, die alle Zeichenketten sind.

Hinzugefügt in Version 1.0.

n_iter_int

Anzahl der durchgeführten Iterationen.

Siehe auch

LabelSpreading

Alternative Strategie zur Label-Propagation, die robuster gegenüber Rauschen ist.

Referenzen

Xiaojin Zhu und Zoubin Ghahramani. Learning from labeled and unlabeled data with label propagation. Technical Report CMU-CALD-02-107, Carnegie Mellon University, 2002 http://pages.cs.wisc.edu/~jerryzhu/pub/CMU-CALD-02-107.pdf

Beispiele

>>> import numpy as np
>>> from sklearn import datasets
>>> from sklearn.semi_supervised import LabelPropagation
>>> label_prop_model = LabelPropagation()
>>> iris = datasets.load_iris()
>>> rng = np.random.RandomState(42)
>>> random_unlabeled_points = rng.rand(len(iris.target)) < 0.3
>>> labels = np.copy(iris.target)
>>> labels[random_unlabeled_points] = -1
>>> label_prop_model.fit(iris.data, labels)
LabelPropagation(...)
fit(X, y)[Quelle]#

Passt ein semi-überwachtes Label-Propagation-Modell an X an.

Parameter:
X{array-like, sparse matrix} der Form (n_samples, n_features)

Trainingsdaten, wobei n_samples die Anzahl der Stichproben und n_features die Anzahl der Merkmale ist.

yarray-like von Form (n_samples,)

Zielklassenwerte, wobei unbeschriftete Punkte als -1 markiert sind. Allen unbeschrifteten Stichproben werden intern transduktiv Labels zugewiesen, die in transduction_ gespeichert sind.

Gibt zurück:
selfobject

Gibt die Instanz selbst zurück.

get_metadata_routing()[Quelle]#

Holt das Metadaten-Routing dieses Objekts.

Bitte prüfen Sie im Benutzerhandbuch, wie der Routing-Mechanismus funktioniert.

Gibt zurück:
routingMetadataRequest

Ein MetadataRequest, der Routing-Informationen kapselt.

get_params(deep=True)[Quelle]#

Holt Parameter für diesen Schätzer.

Parameter:
deepbool, default=True

Wenn True, werden die Parameter für diesen Schätzer und die enthaltenen Unterobjekte, die Schätzer sind, zurückgegeben.

Gibt zurück:
paramsdict

Parameternamen, zugeordnet ihren Werten.

predict(X)[Quelle]#

Führt eine induktive Inferenz über das Modell durch.

Parameter:
Xarray-like der Form (n_samples, n_features)

Die Datenmatrix.

Gibt zurück:
yndarray der Form (n_samples,)

Vorhersagen für Eingabedaten.

predict_proba(X)[Quelle]#

Vorhersage der Wahrscheinlichkeit für jedes mögliche Ergebnis.

Berechnet die Wahrscheinlichkeitsschätzungen für jede einzelne Stichprobe in X und für jede mögliche, während des Trainings gesehene Klasse (kategoriale Verteilung).

Parameter:
Xarray-like der Form (n_samples, n_features)

Die Datenmatrix.

Gibt zurück:
probabilitiesndarray der Form (n_samples, n_classes)

Normalisierte Wahrscheinlichkeitsverteilungen über die Klassenlabels.

score(X, y, sample_weight=None)[Quelle]#

Gibt die Genauigkeit für die bereitgestellten Daten und Bezeichnungen zurück.

Bei der Multi-Label-Klassifizierung ist dies die Subset-Genauigkeit, eine strenge Metrik, da für jede Stichprobe verlangt wird, dass jede Label-Menge korrekt vorhergesagt wird.

Parameter:
Xarray-like der Form (n_samples, n_features)

Teststichproben.

yarray-like der Form (n_samples,) oder (n_samples, n_outputs)

Wahre Bezeichnungen für X.

sample_weightarray-like der Form (n_samples,), Standardwert=None

Stichprobengewichte.

Gibt zurück:
scorefloat

Mittlere Genauigkeit von self.predict(X) in Bezug auf y.

set_params(**params)[Quelle]#

Setzt die Parameter dieses Schätzers.

Die Methode funktioniert sowohl bei einfachen Schätzern als auch bei verschachtelten Objekten (wie Pipeline). Letztere haben Parameter der Form <component>__<parameter>, so dass es möglich ist, jede Komponente eines verschachtelten Objekts zu aktualisieren.

Parameter:
**paramsdict

Schätzer-Parameter.

Gibt zurück:
selfestimator instance

Schätzer-Instanz.

set_score_request(*, sample_weight: bool | None | str = '$UNCHANGED$') LabelPropagation[Quelle]#

Konfiguriert, ob Metadaten für die score-Methode angefordert werden sollen.

Beachten Sie, dass diese Methode nur relevant ist, wenn dieser Schätzer als Unter-Schätzer innerhalb eines Meta-Schätzers verwendet wird und Metadaten-Routing mit enable_metadata_routing=True aktiviert ist (siehe sklearn.set_config). Bitte lesen Sie das Benutzerhandbuch, um zu erfahren, wie der Routing-Mechanismus funktioniert.

Die Optionen für jeden Parameter sind

  • True: Metadaten werden angefordert und, falls vorhanden, an score übergeben. Die Anforderung wird ignoriert, wenn keine Metadaten vorhanden sind.

  • False: Metadaten werden nicht angefordert und der Meta-Schätzer übergibt sie nicht an score.

  • None: Metadaten werden nicht angefordert und der Meta-Schätzer löst einen Fehler aus, wenn der Benutzer sie bereitstellt.

  • str: Metadaten sollten mit diesem Alias an den Meta-Schätzer übergeben werden und nicht mit dem ursprünglichen Namen.

Der Standardwert (sklearn.utils.metadata_routing.UNCHANGED) behält die bestehende Anforderung bei. Dies ermöglicht es Ihnen, die Anforderung für einige Parameter zu ändern und für andere nicht.

Hinzugefügt in Version 1.3.

Parameter:
sample_weightstr, True, False, oder None, Standardwert=sklearn.utils.metadata_routing.UNCHANGED

Metadaten-Routing für den Parameter sample_weight in score.

Gibt zurück:
selfobject

Das aktualisierte Objekt.