Spec-Zone.ru › scikit-learn

DotProduct

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

Ядро скалярного произведения.

Ядро скалярного произведения является нестационарным и может быть получено из линейной регрессии, применив априорные распределения \(N(0, 1)\) к коэффициентам \(x_d (d = 1, . . . , D)\) и априорное распределение \(N(0, \sigma_0^2)\) к смещению. Ядро скалярного произведения инвариантно к повороту координат вокруг начала координат, но не к сдвигам. Оно параметризуется параметром sigma_0 \(\sigma\), который контролирует неоднородность ядра. При \(\sigma_0^2 =0\), ядро называется однородным линейным ядром, в противном случае — неоднородным. Ядро задаётся

\[k(x_i, x_j) = \sigma_0 ^ 2 + x_i \cdot x_j\]

Ядро скалярного произведения обычно используется в сочетании с возведением в степень.

Дополнительные сведения о ядре скалярного произведения см. в [1], Глава 4, Раздел 4.2.

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

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

Параметры:
sigma_0float >= 0, по умолчанию=1.0

Параметр, контролирующий неоднородность ядра. Если sigma_0=0, ядро является однородным.

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

Нижняя и верхняя граница для ‘sigma_0’. Если установлено значение “fixed”, ‘sigma_0’ не может быть изменён во время настройки гиперпараметров.

Ссылки

[1]

Карл Эдвард Расмуссен, Кристофер К. И. Уильямс (2006). «Гауссовы процессы для машинного обучения». Издательство MIT Press.

Примеры

>>> from sklearn.datasets import make_friedman2
>>> from sklearn.gaussian_process import GaussianProcessRegressor
>>> from sklearn.gaussian_process.kernels import DotProduct, WhiteKernel
>>> X, y = make_friedman2(n_samples=500, noise=0, random_state=0)
>>> kernel = DotProduct() + WhiteKernel()
>>> gpr = GaussianProcessRegressor(kernel=kernel,
...         random_state=0).fit(X, y)
>>> gpr.score(X, y)
0.3680...
>>> gpr.predict(X[:2,:], return_std=True)
(array([653.0..., 592.1...]), array([316.6..., 316.6...]))
__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.

свойствоbounds

Возвращает логарифмически преобразованные границы на 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

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

свойствоhyperparameters

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

is_stationary()[source]

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

свойствоn_dims

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

свойствоrequires_vector_input

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

set_params(**params)[source]

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

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

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

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

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

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

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

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

Иллюстрация классификации методом Гауссовых процессов (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.DotProduct.html

Spec-Zone.ru

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