trustworthiness#

sklearn.manifold.trustworthiness(X, X_embedded, *, n_neighbors=5, metric='euclidean')[Quelle]#

Gibt an, inwieweit die lokale Struktur erhalten bleibt.

Die Vertrauenswürdigkeit liegt zwischen [0, 1]. Sie ist definiert als

\[T(k) = 1 - \frac{2}{nk (2n - 3k - 1)} \sum^n_{i=1} \sum_{j \in \mathcal{N}_{i}^{k}} \max(0, (r(i, j) - k))\]

wobei für jedes Sample i, \(\mathcal{N}_{i}^{k}\) seine k nächsten Nachbarn im Ausgaberaum sind, und jedes Sample j sein \(r(i, j)\)-ter nächster Nachbar im Eingaberaum ist. Mit anderen Worten, unerwartete nächste Nachbarn im Ausgaberaum werden proportional zu ihrem Rang im Eingaberaum bestraft.

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

(n_samples, n_samples) Wenn die Metrik 'precomputed' ist, muss X eine quadratische Distanzmatrix sein. Andernfalls enthält es ein Sample pro Zeile.

X_embedded{array-like, sparse matrix} von Form (n_samples, n_components)

Einbettung der Trainingsdaten in einen niedrigdimensionalen Raum.

n_neighborsint, Standard=5

Die Anzahl der Nachbarn, die berücksichtigt werden. Sollte kleiner als n_samples / 2 sein, um sicherzustellen, dass die Vertrauenswürdigkeit innerhalb von [0, 1] liegt, wie in [1] erwähnt. Andernfalls wird ein Fehler ausgelöst.

metricstr oder callable, Standard=’euclidean’

Welche Metrik zur Berechnung von paarweisen Distanzen zwischen Samples aus dem ursprünglichen Eingaberaum verwendet werden soll. Wenn metric 'precomputed' ist, muss X eine Matrix von paarweisen Distanzen oder quadrierten Distanzen sein. Andernfalls finden Sie für eine Liste verfügbarer Metriken die Dokumentation des Arguments metric in sklearn.pairwise.pairwise_distances und die in sklearn.metrics.pairwise.PAIRWISE_DISTANCE_FUNCTIONS aufgeführten Metriken. Beachten Sie, dass die „cosine“-Metrik cosine_distances verwendet.

Hinzugefügt in Version 0.20.

Gibt zurück:
trustworthinessfloat

Vertrauenswürdigkeit der niedrigdimensionalen Einbettung.

Referenzen

[1]

Jarkko Venna und Samuel Kaski. 2001. Neighborhood Preservation in Nonlinear Projection Methods: An Experimental Study. In Proceedings of the International Conference on Artificial Neural Networks (ICANN ‘01). Springer-Verlag, Berlin, Heidelberg, 485-491.

[2]

Laurens van der Maaten. Learning a Parametric Embedding by Preserving Local Structure. Proceedings of the Twelfth International Conference on Artificial Intelligence and Statistics, PMLR 5:384-391, 2009.

Beispiele

>>> from sklearn.datasets import make_blobs
>>> from sklearn.decomposition import PCA
>>> from sklearn.manifold import trustworthiness
>>> X, _ = make_blobs(n_samples=100, n_features=10, centers=3, random_state=42)
>>> X_embedded = PCA(n_components=2).fit_transform(X)
>>> print(f"{trustworthiness(X, X_embedded, n_neighbors=5):.2f}")
0.92