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-
Приближённое отображение ядра с использованием подмножества обучающих данных.
Литература
Примеры
>>> 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