Spec-Zone.ru › scikit-learn

RBF

классsklearn.gaussian_process.kernels.RBF(length_scale=1.0, length_scale_bounds=(1e-05, 100000.0))[источник]

Ядро радиальной базисной функции (также известное как квадратично-экспоненциальное ядро).

Ядро RBF является стационарным ядром. Оно также известно как «квадратично-экспоненциальное» ядро. Оно параметризуется параметром длины масштаба \(l>0\), который может быть скаляром (изотропный вариант ядра) или вектором с тем же числом измерений, что и входные данные X (анизотропный вариант ядра). Ядро определяется следующим образом:

\[k(x_i, x_j) = \exp\left(- \frac{d(x_i, x_j)^2}{2l^2} \right)\]

где \(l\) — масштаб длины ядра, а \(d(\cdot,\cdot)\) — евклидово расстояние. Советы по настройке параметра масштаба длины см., например, в [1].

Это ядро бесконечно дифференцируемо, что подразумевает, что GP с этим ядром в качестве функции ковариации имеет среднеквадратичные производные всех порядков и, следовательно, очень гладкие. Подробнее см. в [2], глава 4, раздел 4.2.

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

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

Параметры:
length_scalefloat или ndarray формы (n_features,), по умолчанию=1.0

Масштаб длины ядра. Если float, используется изотропное ядро. Если массив, используется анизотропное ядро, где каждое измерение l определяет масштаб длины соответствующего измерения признака.

length_scale_boundsпара float ≥ 0 или “fixed”, по умолчанию=(1e-5, 1e5)

Нижняя и верхняя граница для ‘length_scale’. Если установлено «fixed», ‘length_scale’ не может быть изменён во время подбора гиперпараметров.

Ссылки

[1]

David Duvenaud (2014). «The Kernel Cookbook: Advice on Covariance functions».

[2]

Carl Edward Rasmussen, Christopher K. I. Williams (2006). «Gaussian Processes for Machine Learning». The MIT Press.

Примеры

>>> from sklearn.datasets import load_iris
>>> from sklearn.gaussian_process import GaussianProcessClassifier
>>> from sklearn.gaussian_process.kernels import RBF
>>> X, y = load_iris(return_X_y=True)
>>> kernel = 1.0 * RBF(1.0)
>>> gpc = GaussianProcessClassifier(kernel=kernel,
...         random_state=0).fit(X, y)
>>> gpc.score(X, y)
0.9866...
>>> gpc.predict_proba(X[:2,:])
array([[0.8354..., 0.03228..., 0.1322...],
       [0.7906..., 0.0652..., 0.1441...]])
__call__(X, Y=None, eval_gradient=False)[source]

Возвращает ядро k(X, Y) и, необязательно, его градиент.

Параметры:
Xndarray формы (n_samples_X, n_features)

Левый аргумент возвращаемого ядра k(X, Y)

Yndarray формы (n_samples_Y, n_features), по умолчанию=None

Правый аргумент возвращаемого ядра k(X, Y). Если None, вычисляется k(X, X) вместо этого.

eval_gradientbool, по умолчанию=False

Определяет, вычисляется ли градиент по отношению к логарифму гиперпараметра ядра. Поддерживается только когда Y равно None.

Возвращает:
Kndarray формы (n_samples_X, n_samples_Y)

Ядро k(X, Y)

K_gradientndarray формы (n_samples_X, n_samples_X, n_dims), необязательно

Градиент ядра k(X, X) по отношению к логарифму гиперпараметра ядра. Возвращается только когда eval_gradient равно True.

propertybounds

Возвращает логарифмически преобразованные границы на theta.

Возвращает:
boundsndarray формы (n_dims, 2)

Логарифмически преобразованные границы на гиперпараметрах ядра theta

clone_with_theta(theta)[source]

Возвращает копию self с заданными гиперпараметрами theta.

Параметры:
thetandarray формы (n_dims,)

Гиперпараметры

diag(X)[source]

Возвращает диагональ ядра k(X, X).

Результат этого метода идентичен np.diag(self(X)); однако, он может быть вычислен более эффективно, поскольку оценивается только диагональ.

Параметры:
Xndarray формы (n_samples_X, n_features)

Левый аргумент возвращаемого ядра k(X, Y)

Возвращает:
K_diagndarray формы (n_samples_X,)

Диагональ ядра k(X, X)

get_params(deep=True)[source]

Получить параметры этого ядра.

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

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

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

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

propertyhyperparameters

Возвращает список всех спецификаций гиперпараметров.

is_stationary()[source]

Возвращает, является ли ядро стационарным.

propertyn_dims

Возвращает количество нефиксированных гиперпараметров ядра.

propertyrequires_vector_input

Возвращает, определено ли ядро на векторах с фиксированной длиной признаков или общих объектах. По умолчанию True для обратной совместимости.

set_params(**params)[source]

Установить параметры этого ядра.

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

Возвращает:
self
свойствоtheta

Возвращает (сглаженные, логарифмически преобразованные) нефиксированные гиперпараметры.

Обратите внимание, что theta обычно представляют собой логарифмически преобразованные значения гиперпараметров ядра, так как такое представление пространства поиска более подходит для поиска гиперпараметров, так как такие гиперпараметры, как масштабы, естественным образом находятся на логарифмической шкале.

Возвращает:
thetaмассив ndarray формы (n_dims,)

Нефиксированные, логарифмически преобразованные гиперпараметры ядра

Примеры из галереи

Сравнение классификаторов

Построение вероятности классификации

Возможность регрессии Гауссовых процессов (GPR) оценивать уровень шума в данных

Сравнение регрессии с ядром гребня и регрессии с ядром Гаусса

Прогнозирование уровня CO2 на наборе данных Мауна-Лоа с использованием регрессии Гауссовых процессов (GPR)

Регрессия Гауссовых процессов: базовый вводный пример

Классификация Гауссовых процессов (GPC) на наборе данных iris

Иллюстрация классификации Гауссовых процессов (GPC) на наборе данных XOR

Иллюстрация априорного и апостериорного распределений Гауссова процесса для различных ядер

Вероятностные прогнозы с классификацией Гауссовых процессов (GPC)

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

Spec-Zone.ru

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