NearestCentroid#

class sklearn.neighbors.NearestCentroid(metric='euclidean', *, shrink_threshold=None, priors='uniform')[Quelle]#

Nächster-Zentroid-Klassifikator.

Jede Klasse wird durch ihren Zentroiden dargestellt, wobei Teststichproben der Klasse mit dem nächstgelegenen Zentroiden zugeordnet werden.

Lesen Sie mehr im Benutzerhandbuch.

Parameter:
metric{„euclidean“, „manhattan“}, default=”euclidean”

Metrik zur Berechnung der Distanz.

Wenn metric="euclidean", ist der Zentroid für die Stichproben, die jeder Klasse entsprechen, das arithmetische Mittel, das die Summe der quadrierten L1-Distanzen minimiert. Wenn metric="manhattan", ist der Zentroid der merkmalweise Median, der die Summe der L1-Distanzen minimiert.

Geändert in Version 1.5: Alle Metriken außer "euclidean" und "manhattan" wurden als veraltet markiert und lösen nun einen Fehler aus.

Geändert in Version 0.19: metric='precomputed' wurde als veraltet markiert und löst nun einen Fehler aus.

shrink_thresholdfloat, default=None

Schwellenwert zum Schrumpfen von Centroiden, um Merkmale zu entfernen.

priors{„uniform“, „empirical“} oder array-ähnlich der Form (n_classes,), default=”uniform”

Die a-priori-Wahrscheinlichkeiten der Klassen. Standardmäßig werden die Klassenproportionen aus den Trainingsdaten abgeleitet.

Hinzugefügt in Version 1.6.

Attribute:
centroids_array-ähnlich der Form (n_classes, n_features)

Centroid jeder Klasse.

classes_array von Form (n_classes,)

Die eindeutigen Klassennamen.

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.

deviations_ndarray der Form (n_classes, n_features)

Abweichungen (oder Schrumpfungen) der Centroiden jeder Klasse vom Gesamtcentroid. Gleich der Gleichung (18.4), wenn shrink_threshold=None, ansonsten (18.5) S. 653 von [2]. Kann zur Identifizierung von Merkmalen verwendet werden, die für die Klassifizierung verwendet werden.

Hinzugefügt in Version 1.6.

within_class_std_dev_ndarray der Form (n_features,)

Gepoolte oder klasseninterne Standardabweichung der Eingabedaten.

Hinzugefügt in Version 1.6.

class_prior_ndarray der Form (n_classes,)

Die a-priori-Wahrscheinlichkeiten der Klassen.

Hinzugefügt in Version 1.6.

Siehe auch

KNeighborsClassifier

Nearest neighbors Klassifikator.

Anmerkungen

Bei Verwendung für die Textklassifizierung mit tf-idf-Vektoren ist dieser Klassifikator auch als Rocchio-Klassifikator bekannt.

Referenzen

[1] Tibshirani, R., Hastie, T., Narasimhan, B., & Chu, G. (2002). Diagnosis of multiple cancer types by shrunken centroids of gene expression. Proceedings of the National Academy of Sciences of the United States of America, 99(10), 6567-6572. The National Academy of Sciences.

[2] Hastie, T., Tibshirani, R., Friedman, J. (2009). The Elements of Statistical Learning Data Mining, Inference, and Prediction. 2. Auflage. New York, Springer.

Beispiele

>>> from sklearn.neighbors import NearestCentroid
>>> import numpy as np
>>> X = np.array([[-1, -1], [-2, -1], [-3, -2], [1, 1], [2, 1], [3, 2]])
>>> y = np.array([1, 1, 1, 2, 2, 2])
>>> clf = NearestCentroid()
>>> clf.fit(X, y)
NearestCentroid()
>>> print(clf.predict([[-0.8, -1]]))
[1]
decision_function(X)[Quelle]#

Anwenden der Entscheidungfunktion auf ein Array von Stichproben.

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

Array von Stichproben (Testvektoren).

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

Entscheidungsfunktionswerte, die sich auf jede Klasse pro Stichprobe beziehen. Im Fall von zwei Klassen hat die Form (n_samples,) und gibt das Log-Likelihood-Verhältnis der positiven Klasse an.

fit(X, y)[Quelle]#

Anpassen des NearestCentroid-Modells an die gegebenen Trainingsdaten.

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

Trainingsvektor, wobei n_samples die Anzahl der Stichproben und n_features die Anzahl der Merkmale ist. Beachten Sie, dass das Schrumpfen von Centroiden nicht mit spärlichen Matrizen verwendet werden kann.

yarray-like von Form (n_samples,)

Zielwerte.

Gibt zurück:
selfobject

Angepasster Schätzer.

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]#

Durchführung der Klassifizierung für ein Array von Testvektoren X.

Die vorhergesagte Klasse C für jede Stichprobe in X wird zurückgegeben.

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

Eingabedaten.

Gibt zurück:
y_predndarray von Form (n_samples,)

Die vorhergesagten Klassen.

predict_log_proba(X)[Quelle]#

Schätzung der Logarithmus-Klassenwahrscheinlichkeiten.

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

Eingabedaten.

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

Geschätzte Log-Wahrscheinlichkeiten.

predict_proba(X)[Quelle]#

Schätzung der Klassenwahrscheinlichkeiten.

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

Eingabedaten.

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

Wahrscheinlichkeitsschätzung der Stichprobe für jede Klasse im Modell, wobei die Klassen in der Reihenfolge von self.classes_ sortiert sind.

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$') NearestCentroid[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.