Spec-Zone.ru › scikit-learn

pairwise_kernels

sklearn.metrics.pairwise.pairwise_kernels(X, Y=None, metric='linear', *, filter_params=False, n_jobs=None, **kwds)[исходный код]

Вычисляет ядро между массивами X и необязательным массивом Y.

Эта функция принимает один или два массива признаков либо матрицу ядра и возвращает матрицу ядра.

  • Если X — это массив признаков формы (n_samples_X, n_features) и:

    • Y является None, а metric не равно ‘precomputed’, возвращаются попарные ядра между X и самим собой.
    • Y — это массив признаков формы (n_samples_Y, n_features), возвращаются попарные ядра между X и Y.
  • Если X — это матрица ядра формы (n_samples_X, n_samples_X), metric должно быть равно ‘precomputed’. В таком случае Y игнорируется, а X возвращается без изменений.

Этот метод позволяет безопасно передавать матрицу ядра на вход, сохраняя совместимость со многими другими алгоритмами, которые принимают массив векторов.

Допустимые значения metric:

[‘additive_chi2’, ‘chi2’, ‘linear’, ‘poly’, ‘polynomial’, ‘rbf’, ‘laplacian’, ‘sigmoid’, ‘cosine’]

Подробнее см. в руководстве пользователя.

Параметры:
X{array-like, sparse matrix} of shape (n_samples_X, n_samples_X) or (n_samples_X, n_features)

Массив попарных ядер между образцами или массив признаков. Если metric == “precomputed”, массив должен иметь форму (n_samples_X, n_samples_X), в противном случае — (n_samples_X, n_features).

Y{array-like, sparse matrix} of shape (n_samples_Y, n_features), default=None

Второй массив признаков, используемый только в том случае, если X имеет форму (n_samples_X, n_features).

metricstr or callable, default=”linear”

Метрика, используемая для вычисления ядра между объектами в массиве признаков. Если metric — строка, она должна быть одной из метрик из pairwise.PAIRWISE_KERNEL_FUNCTIONS. Если metric равно “precomputed”, предполагается, что X является матрицей ядра. Также metric может быть вызываемым объектом: он вызывается для каждой пары объектов (строк), а полученное значение сохраняется. Вызываемый объект должен принимать на вход две строки из X и возвращать соответствующее значение ядра в виде одного числа. Поэтому вызываемые объекты из sklearn.metrics.pairwise не допускаются, поскольку они работают с матрицами, а не с отдельными образцами. Вместо этого используйте строку, обозначающую ядро.

filter_paramsbool, default=False

Следует ли отфильтровывать недопустимые параметры.

n_jobsint, default=None

Количество заданий для вычисления. Попарная матрица разбивается на n_jobs равных частей, которые вычисляются с помощью многопоточности.

None означает 1, если только не используется контекст joblib.parallel_backend. -1 означает использование всех процессоров. Подробнее см. в глоссарии.

**kwdsнеобязательные именованные параметры

Все остальные параметры передаются непосредственно функции ядра.

Возвращает:
Kndarray of shape (n_samples_X, n_samples_X) or (n_samples_X, n_samples_Y)

Матрица ядра K, в которой K_{i, j} — это ядро между i-м и j-м векторами заданной матрицы X, если Y равно None. Если Y не равно None, K_{i, j} — это ядро между i-м массивом из X и j-м массивом из Y.

Примечания

Если metric является вызываемым объектом, ограничения на размерности X и Y не накладываются.

Примеры

>>> from sklearn.metrics.pairwise import pairwise_kernels
>>> X = [[0, 0, 0], [1, 1, 1]]
>>> Y = [[1, 0, 0], [1, 1, 0]]
>>> pairwise_kernels(X, Y, metric='linear')
array([[0., 0.],
       [1., 2.]])

© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.metrics.pairwise.pairwise_kernels.html

Spec-Zone.ru

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