Spec-Zone.ru › scikit-learn

Надёжность

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

Показывает, насколько сохраняется локальная структура.

Надёжность находится в пределах [0, 1]. Она определяется как

\[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))\]

где для каждого образца i, \(\mathcal{N}_{i}^{k}\) - это его k ближайших соседей в выходном пространстве, и каждый образец j является его \(r(i, j)\)-м ближайшим соседом во входном пространстве. Другими словами, любые неожиданные ближайшие соседи в выходном пространстве штрафуются пропорционально их рангу во входном пространстве.

Параметры:
X{массив, разреженная матрица} формы (n_samples, n_features) или

(n_samples, n_samples) Если метрика - ‘precomputed’, X должен быть квадратной матрицей расстояний. В противном случае она содержит образец в каждой строке.

X_embedded{массив, разреженная матрица} формы (n_samples, n_components)

Встраивание обучающих данных в низкоразмерное пространство.

n_neighborsint, default=5

Количество соседей, которые будут рассмотрены. Должно быть меньше, чем n_samples / 2 для обеспечения надёжности в пределах [0, 1], как упоминалось в [1]. В противном случае будет вызвана ошибка.

metricstr или callable, default=’euclidean’

Какую метрику использовать для вычисления попарных расстояний между образцами из исходного входного пространства. Если метрика - ‘precomputed’, X должна быть матрицей попарных расстояний или квадратов расстояний. В противном случае, для списка доступных метрик см. документацию аргумента metric в sklearn.pairwise.pairwise_distances и метрики, перечисленные в sklearn.metrics.pairwise.PAIRWISE_DISTANCE_FUNCTIONS. Обратите внимание, что метрика «cosine» использует cosine_distances.

Добавлено в версии 0.20.

Возвращает:
trustworthinessfloat

Надёжность низкоразмерного встраивания.

Ссылки

[1]

Jarkko Venna and 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.

Примеры

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

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/generated/sklearn.manifold.trustworthiness.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API