trustworthiness
- sklearn.manifold.trustworthiness(X, X_embedded, *, n_neighbors=5, metric='euclidean')[исходный код]
-
Показывает, в какой степени сохраняется локальная структура.
Значение достоверности находится в диапазоне [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{array-like, sparse matrix} of shape (n_samples, n_features) or
-
(n_samples, n_samples) Если метрика — ‘precomputed’, X должна быть квадратной матрицей расстояний. В противном случае каждая строка содержит один образец.
- X_embedded{array-like, sparse matrix} of shape (n_samples, n_components)
-
Вложенное представление обучающих данных в пространстве меньшей размерности.
- n_neighborsint, default=5
-
Количество учитываемых соседей. Чтобы достоверность находилась в диапазоне [0, 1], это значение должно быть меньше
n_samples / 2, как указано в [1]. В противном случае будет вызвана ошибка. - metricstr or callable, default=’euclidean’
-
Метрика для вычисления попарных расстояний между образцами исходного пространства входных данных. Если metric равна ‘precomputed’, X должна быть матрицей попарных расстояний или квадратов расстояний. В противном случае список доступных метрик см. в документации аргумента metric в
sklearn.pairwise.pairwise_distancesи в списке метрик вsklearn.metrics.pairwise.PAIRWISE_DISTANCE_FUNCTIONS. Обратите внимание, что метрика “cosine” используетcosine_distances.Добавлено в версии 0.20.
- Возвращает:
-
- trustworthinessfloat
-
Достоверность вложенного представления в пространстве меньшей размерности.
Источники
[1]Jarkko Venna и Samuel Kaski. 2001. Сохранение соседства в методах нелинейного проецирования: экспериментальное исследование. В материалах Международной конференции по искусственным нейронным сетям (ICANN ‘01). Springer-Verlag, Берлин, Гейдельберг, 485–491.
[2]Laurens van der Maaten. Обучение параметрического вложенного представления с сохранением локальной структуры. Материалы Двенадцатой международной конференции по искусственному интеллекту и статистике, 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–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.manifold.trustworthiness.html