Spec-Zone.ru › scikit-learn

KernelCenterer

classsklearn.preprocessing.KernelCenterer[source]

Центрирование произвольной матрицы ядра \(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_массив формы (n_samples,)

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

K_fit_all_float

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

n_features_in_int

Количество признаков, увиденных во время подгонки.

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

feature_names_in_массив формы (n_features_in_,)

Имена признаков, увиденных во время подгонки. Определены только тогда, когда 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)[source]

Подгонка KernelCenterer.

Параметры:
Kмассив формы (n_samples, n_samples)

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

yNone

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

Возвращает:
selfобъект

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

fit_transform(X, y=None, **fit_params)[source]

Подгонка к данным, затем преобразование.

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

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

Входные образцы.

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

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

**fit_paramsdict

Дополнительные параметры подгонки.

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

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

get_feature_names_out(input_features=None)[source]

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

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

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

Используется только для проверки имён признаков с именами, увиденными в fit.

Возвращает:
feature_names_outмассив str объектов

Имена преобразованных признаков.

get_metadata_routing()[source]

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

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

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

MetadataRequest encapsulating routing information.

get_params(deep=True)[source]

Получить параметры этого оценщика.

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

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

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

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

set_output(*, transform=None)[source]

Установить контейнер вывода.

См. Введение в API set_output для примера использования API.

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

Настроить вывод transform и fit_transform.

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

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

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

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

set_params(**params)[source]

Установить параметры этого оценщика.

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

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

Параметры оценщика.

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

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

set_transform_request(*, copy:bool|None|str='$UNCHANGED$') → KernelCenterer[source]

Запрос метаданных, переданных методу transform.

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

Варианты для каждого параметра:

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

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

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

Примечание

Этот метод актуален только в том случае, если данный оценщик используется как под-оценщик мета-оценщика, например, внутри Pipeline. В противном случае он не имеет эффекта.

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

Маршрутизация метаданных для параметра copy в transform.

Возвращает:
selfобъект

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

transform(K, copy=True)[source]

Центрирование ядровой матрицы.

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

Ядерная матрица.

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

Установите в False для выполнения вычислений на месте.

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

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

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

Spec-Zone.ru

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