DotProduct
- classsklearn.gaussian_process.kernels.DotProduct(sigma_0=1.0, sigma_0_bounds=(1e-05, 100000.0))[источник]
-
Ядро скалярного произведения.
Ядро DotProduct является нестационарным и может быть получено из линейной регрессии, если задать априорные распределения \(N(0, 1)\) для коэффициентов \(x_d (d = 1, . . . , D)\) и априорное распределение \(N(0, \sigma_0^2)\) для смещения. Ядро DotProduct инвариантно относительно поворота координат вокруг начала координат, но не относительно переносов. Оно параметризуется параметром sigma_0 \(\sigma\), который определяет неоднородность ядра. При \(\sigma_0^2 =0\) ядро называется однородным линейным ядром, в противном случае оно является неоднородным. Ядро задаётся формулой
\[k(x_i, x_j) = \sigma_0 ^ 2 + x_i \cdot x_j\]Ядро DotProduct обычно комбинируют с экспоненцированием.
Дополнительные сведения о ядре DotProduct см. в [1], глава 4, раздел 4.2.
Подробнее см. в руководстве пользователя.
Добавлено в версии 0.18.
- Параметры:
-
- sigma_0float >= 0, default=1.0
-
Параметр, определяющий неоднородность ядра. Если sigma_0=0, ядро является однородным.
- sigma_0_boundspair of floats >= 0 or “fixed”, default=(1e-5, 1e5)
-
Нижняя и верхняя границы для «sigma_0». Если задано значение «fixed», параметр «sigma_0» нельзя изменять во время настройки гиперпараметров.
Ссылки
Примеры
>>> 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)[источник]
-
Возвращает ядро k(X, Y) и, при необходимости, его градиент.
- Параметры:
-
- Xndarray of shape (n_samples_X, n_features)
-
Левый аргумент возвращаемого ядра k(X, Y)
- Yndarray of shape (n_samples_Y, n_features), default=None
-
Правый аргумент возвращаемого ядра k(X, Y). Если None, вместо этого вычисляется k(X, X).
- eval_gradientbool, default=False
-
Определяет, вычисляется ли градиент относительно логарифма гиперпараметра ядра. Поддерживается только при Y равном None.
- Возвращает:
-
- Kndarray of shape (n_samples_X, n_samples_Y)
-
Ядро k(X, Y)
- K_gradientndarray of shape (n_samples_X, n_samples_X, n_dims), optional
-
Градиент ядра k(X, X) относительно логарифма гиперпараметра ядра. Возвращается только если
eval_gradientравно True.
- propertybounds
-
Возвращает границы для theta в логарифмическом масштабе.
- Возвращает:
-
- boundsndarray of shape (n_dims, 2)
-
Границы гиперпараметров theta ядра в логарифмическом масштабе
- clone_with_theta(theta)[источник]
-
Возвращает копию self с заданными гиперпараметрами theta.
- Параметры:
-
- thetandarray of shape (n_dims,)
-
Гиперпараметры
- diag(X)[источник]
-
Возвращает диагональ ядра k(X, X).
Результат этого метода идентичен np.diag(self(X)); однако его можно вычислить эффективнее, поскольку вычисляется только диагональ.
- Параметры:
-
- Xndarray of shape (n_samples_X, n_features)
-
Левый аргумент возвращаемого ядра k(X, Y).
- Возвращает:
-
- K_diagndarray of shape (n_samples_X,)
-
Диагональ ядра k(X, X).
- get_params(deep=True)[источник]
-
Получает параметры этого ядра.
- Параметры:
-
- deepbool, default=True
-
Если True, будут возвращены параметры этого оценщика и содержащихся в нём объектов, являющихся оценщиками.
- Возвращает:
-
- paramsdict
-
Имена параметров, сопоставленные с их значениями.
- propertyhyperparameters
-
Возвращает список описаний всех гиперпараметров.
- is_stationary()[источник]
-
Возвращает признак стационарности ядра.
- propertyn_dims
-
Возвращает количество незакреплённых гиперпараметров ядра.
- propertyrequires_vector_input
-
Возвращает признак того, определено ли ядро для векторов признаков фиксированной длины или для объектов общего вида. По умолчанию True для обратной совместимости.
- set_params(**params)[источник]
-
Задаёт параметры этого ядра.
Метод работает как с простыми, так и со вложенными ядрами. Параметры последних имеют вид
<component>__<parameter>, что позволяет обновлять каждый компонент вложенного объекта.- Возвращает:
-
- self
- propertytheta
-
Возвращает (сведённые в одномерный массив, преобразованные логарифмированием) незакреплённые гиперпараметры.
Обратите внимание, что theta обычно содержит значения гиперпараметров ядра, преобразованные логарифмированием, поскольку такое представление пространства поиска лучше подходит для поиска гиперпараметров: например, масштабы длины естественным образом задаются в логарифмической шкале.
- Возвращает:
-
- thetandarray of shape (n_dims,)
-
Незакреплённые гиперпараметры ядра, преобразованные логарифмированием
Примеры галереи
© 2007–2026 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.9/modules/generated/sklearn.gaussian_process.kernels.DotProduct.html