pairwise_distances_argmin_min#
- sklearn.metrics.pairwise_distances_argmin_min(X, Y, *, ось=1, метрика='euclidean', metric_kwargs=None)[источник]#
Вычислить минимальные расстояния между одной точкой и набором точек.
Эта функция вычисляет для каждой строки в X индекс строки Y, которая является ближайшей (в соответствии с указанным расстоянием). Минимальные расстояния также возвращаются.
Это в основном эквивалентно вызову:
(pairwise_distances(X, Y=Y, metric=metric).argmin(axis=axis), pairwise_distances(X, Y=Y, metric=metric).min(axis=axis))
но использует гораздо меньше памяти и быстрее для больших массивов.
- Параметры:
- X{array-like, sparse matrix} формы (n_samples_X, n_features)
Массив, содержащий точки.
- Y{array-like, sparse matrix} формы (n_samples_Y, n_features)
Массив, содержащий точки.
- осьint, по умолчанию=1
Ось, вдоль которой вычисляются argmin и расстояния.
- метрикаstr или callable, по умолчанию='euclidean'
Метрика для вычисления расстояния. Любая метрика из scikit-learn или
scipy.spatial.distanceможет быть использован.Если metric — вызываемая функция, она вызывается для каждой пары экземпляров (строк), и полученное значение записывается. Вызываемая функция должна принимать два массива на вход и возвращать одно значение, указывающее расстояние между ними. Это работает для метрик Scipy, но менее эффективно, чем передача имени метрики в виде строки.
Матрицы расстояний не поддерживаются.
Допустимые значения для metric:
из scikit-learn: ['cityblock', 'cosine', 'euclidean', 'l1', 'l2', 'manhattan', 'nan_euclidean']
из
scipy.spatial.distance: [‘braycurtis’, ‘canberra’, ‘chebyshev’, ‘correlation’, ‘dice’, ‘hamming’, ‘jaccard’, ‘kulsinski’, ‘mahalanobis’, ‘minkowski’, ‘rogerstanimoto’, ‘russellrao’, ‘seuclidean’, ‘sokalmichener’, ‘sokalsneath’, ‘sqeuclidean’, ‘yule’]
См. документацию для
scipy.spatial.distanceдля подробностей об этих метриках.Примечание
'kulsinski'устарел в SciPy 1.9 и будет удален в SciPy 1.11.Примечание
'matching'был удален в SciPy 1.9 (используйте'hamming'вместо этого).- metric_kwargsdict, по умолчанию=None
Аргументы ключевых слов для передачи указанной метрической функции.
- Возвращает:
- argminndarray
Y[argmin[i], :] — это строка в Y, ближайшая к X[i, :].
- расстоянияndarray
Массив минимальных расстояний.
distances[i]это расстояние между i-й строкой в X и argmin[i]-й строкой в Y.
Смотрите также
pairwise_distancesРасстояния между каждой парой образцов X и Y.
pairwise_distances_argminТо же, что и
pairwise_distances_argmin_minно возвращает только argmins.
Примеры
>>> from sklearn.metrics.pairwise import pairwise_distances_argmin_min >>> X = [[0, 0, 0], [1, 1, 1]] >>> Y = [[1, 0, 0], [1, 1, 0]] >>> argmin, distances = pairwise_distances_argmin_min(X, Y) >>> argmin array([0, 1]) >>> distances array([1., 1.])