Spec-Zone.ru › scikit-learn

KernelCenterer

classsklearn.preprocessing.KernelCenterer[источник]

Центрирует произвольную матрицу ядра \(K\).

Определим ядро \(K\) следующим образом:

\[K(X, Y) = \phi(X) . \phi(Y)^{T}\]

\(\phi(X)\) — функция, отображающая строки \(X\) в пространство Гильберта, а матрица \(K\) имеет форму (n_samples, n_samples).

Этот класс позволяет вычислять \(\tilde{K}(X, Y)\) так, что:

\[\tilde{K(X, Y)} = \tilde{\phi}(X) . \tilde{\phi}(Y)^{T}\]

\(\tilde{\phi}(X)\) — центрированные отображённые данные в пространстве Гильберта.

KernelCenterer центрирует признаки без явного вычисления отображения \(\phi(\cdot)\). При работе с центрированными ядрами иногда это требуется для алгебраических вычислений, таких как разложение по собственным значениям, например, для KernelPCA.

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

Атрибуты:
K_fit_rows_ndarray формы (n_samples,)

Среднее значение каждого столбца матрицы ядра.

K_fit_all_float

Среднее значение матрицы ядра.

n_features_in_int

Количество признаков, обнаруженных при вызове fit.

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

feature_names_in_ndarray формы (n_features_in_,)

Названия признаков, обнаруженных при вызове fit. Определяется только в том случае, если X содержит названия признаков, и все они являются строками.

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

См. также

sklearn.kernel_approximation.Nystroem

Приближённое отображение ядра с использованием подмножества обучающих данных.

Литература

[1]

Schölkopf, Bernhard, Alexander Smola, and Klaus-Robert Müller. “Nonlinear component analysis as a kernel eigenvalue problem.” Neural computation 10.5 (1998): 1299-1319.

Примеры

>>> from sklearn.preprocessing import KernelCenterer
>>> from sklearn.metrics.pairwise import pairwise_kernels
>>> X = [[ 1., -2.,  2.],
...      [ -2.,  1.,  3.],
...      [ 4.,  1., -2.]]
>>> K = pairwise_kernels(X, metric='linear')
>>> K
array([[  9.,   2.,  -2.],
       [  2.,  14., -13.],
       [ -2., -13.,  21.]])
>>> transformer = KernelCenterer().fit(K)
>>> transformer
KernelCenterer()
>>> transformer.transform(K)
array([[  5.,   0.,  -5.],
       [  0.,  14., -14.],
       [ -5., -14.,  19.]])
fit(K, y=None)[источник]

Обучает KernelCenterer.

Параметры:
Kndarray формы (n_samples, n_samples)

Матрица ядра.

yNone

Игнорируется.

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

Возвращает сам экземпляр.

fit_transform(X, y=None, **fit_params)[источник]

Обучает преобразователь на данных и преобразует их.

Обучает преобразователь на X и y с необязательными параметрами fit_params и возвращает преобразованную версию X.

Параметры:
Xмассивоподобный объект формы (n_samples, n_features)

Входные выборки.

yмассивоподобный объект формы (n_samples,) или (n_samples, n_outputs), по умолчанию None

Целевые значения (None для преобразований без учителя).

**fit_paramsdict

Дополнительные параметры обучения. Передавайте их только в том случае, если оцениватель принимает дополнительные параметры в методе fit.

Возвращает:
X_newмассив ndarray формы (n_samples, n_features_new)

Преобразованный массив.

get_feature_names_out(input_features=None)[источник]

Получает названия выходных признаков для преобразования.

К названиям выходных признаков добавляется имя класса в нижнем регистре. Например, если преобразователь возвращает 3 признака, то названия выходных признаков будут такими: ["class_name0", "class_name1", "class_name2"].

Параметры:
input_featuresмассивоподобный объект из строк или None, по умолчанию None

Используется только для проверки названий признаков относительно названий, обнаруженных в fit.

Возвращает:
feature_names_outndarray из объектов str

Названия преобразованных признаков.

get_metadata_routing()[источник]

Получает настройки маршрутизации метаданных этого объекта.

О том, как работает механизм маршрутизации, см. в руководстве пользователя.

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

Объект MetadataRequest, содержащий информацию о маршрутизации.

get_params(deep=True)[источник]

Получает параметры этого оценивателя.

Параметры:
deepbool, по умолчанию True

Если True, возвращает параметры этого оценивателя и содержащихся в нём подобъектов, являющихся оценивателями.

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

Названия параметров, сопоставленные их значениям.

set_output(*, transform=None)[источник]

Задаёт контейнер выходных данных.

Подробности см. в руководстве пользователя, а пример использования API — в разделе Знакомство с API set_output.

Параметры:
transform{“default”, “pandas”, “polars”}, по умолчанию None

Настраивает формат вывода для transform и fit_transform.

  • "default": формат вывода преобразователя по умолчанию
  • "pandas": вывод в формате DataFrame
  • "polars": вывод в формате Polars
  • None: конфигурация преобразования не изменяется

Добавлено в версии 1.4: добавлен параметр "polars".

Возвращает:
selfэкземпляр оценивателя

Экземпляр оценивателя.

set_params(**params)[источник]

Задаёт параметры этого оценивателя.

Метод работает как с простыми оценивателями, так и с вложенными объектами (например, Pipeline). Параметры последних имеют вид <component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.

Параметры:
**paramsdict

Параметры оценивателя.

Возвращает:
selfэкземпляр оценивателя

Экземпляр оценивателя.

set_transform_request(*, copy:bool|None|str='$UNCHANGED$') → KernelCenterer[источник]

Настраивает, следует ли запрашивать передачу метаданных в метод transform.

Обратите внимание, что этот метод имеет значение только в том случае, если данный оцениватель используется как вложенный оцениватель в составе метаоценивателя и маршрутизация метаданных включена с помощью enable_metadata_routing=True (см. sklearn.set_config). О том, как работает механизм маршрутизации, см. в руководстве пользователя.

Для каждого параметра доступны следующие варианты:

  • True: метаданные запрашиваются и передаются в transform, если они предоставлены. Если метаданные не предоставлены, запрос игнорируется.
  • False: метаданные не запрашиваются, и метаоцениватель не передаёт их в transform.
  • None: метаданные не запрашиваются, и метаоцениватель выдаст ошибку, если пользователь их предоставит.
  • str: метаданные следует передавать метаоценивателю под указанным псевдонимом вместо исходного имени.

Значение по умолчанию (sklearn.utils.metadata_routing.UNCHANGED) сохраняет существующий запрос. Это позволяет изменить запрос для одних параметров, не затрагивая остальные.

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

Параметры:
copystr, True, False или None, по умолчанию sklearn.utils.metadata_routing.UNCHANGED

Настройка маршрутизации метаданных для параметра copy в transform.

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

Обновлённый объект.

transform(K, copy=True)[источник]

Центрирует матрицу ядра.

Параметры:
Kndarray формы (n_samples1, n_samples2)

Матрица ядра.

copybool, по умолчанию True

Задайте False, чтобы выполнять вычисления на месте.

Возвращает:
K_newndarray формы (n_samples1, n_samples2)

Возвращает сам экземпляр.

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

Spec-Zone.ru

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