總和#

class sklearn.gaussian_process.kernels.Sum(k1, k2)[原始碼]#

Sum 核函數接受兩個核函數 \(k_1\)\(k_2\),並透過以下方式結合它們:

\[k_{sum}(X, Y) = k_1(X, Y) + k_2(X, Y)\]

請注意,__add__ 魔術方法被覆寫了,所以 Sum(RBF(), RBF()) 等同於使用 + 運算子與 RBF() + RBF()

使用者指南中閱讀更多內容。

在 0.18 版中新增。

參數:
k1Kernel

總和核函數的第一個基礎核函數

k2Kernel

總和核函數的第二個基礎核函數

範例

>>> from sklearn.datasets import make_friedman2
>>> from sklearn.gaussian_process import GaussianProcessRegressor
>>> from sklearn.gaussian_process.kernels import RBF, Sum, ConstantKernel
>>> X, y = make_friedman2(n_samples=500, noise=0, random_state=0)
>>> kernel = Sum(ConstantKernel(2), RBF())
>>> gpr = GaussianProcessRegressor(kernel=kernel,
...         random_state=0).fit(X, y)
>>> gpr.score(X, y)
1.0
>>> kernel
1.41**2 + RBF(length_scale=1)
__call__(X, Y=None, eval_gradient=False)[原始碼]#

返回核函數 k(X, Y) 以及可選的其梯度。

參數:
Xarray-like,形狀為 (n_samples_X, n_features) 或物件列表

返回的核函數 k(X, Y) 的左側參數

Yarray-like,形狀為 (n_samples_X, n_features) 或物件列表,預設值=None

返回的核函數 k(X, Y) 的右側參數。如果為 None,則會改為評估 k(X, X)。

eval_gradient布林值,預設值=False

決定是否計算關於核函數超參數的對數的梯度。

返回:
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 時才會返回。

property bounds#

返回 theta 上經過對數轉換的邊界。

返回:
boundsndarray,形狀為 (n_dims, 2)

核函數的超參數 theta 上經過對數轉換的邊界

clone_with_theta(theta)[原始碼]#

返回一個使用給定超參數 theta 的自我複製。

參數:
thetandarray,形狀為 (n_dims,)

超參數

diag(X)[原始碼]#

返回核函數 k(X, X) 的對角線。

此方法的結果與 np.diag(self(X)) 相同;但是,由於僅評估對角線,因此可以更有效率地評估它。

參數:
Xarray-like,形狀為 (n_samples_X, n_features) 或物件列表

核函數的參數。

返回:
K_diagndarray,形狀為 (n_samples_X,)

核函數 k(X, X) 的對角線

get_params(deep=True)[原始碼]#

取得此核函數的參數。

參數:
deep布林值,預設值=True

如果為 True,將會返回此估算器和所包含的子物件(為估算器)的參數。

返回:
paramsdict

參數名稱對應至它們的值。

property hyperparameters#

返回所有超參數的列表。

is_stationary()[原始碼]#

返回核函數是否為靜態。

property n_dims#

返回核函數的非固定超參數的數量。

property requires_vector_input#

返回核函數是否為靜態。

set_params(**params)[原始碼]#

設定此核函數的參數。

此方法適用於簡單的核函數以及巢狀核函數。後者的參數形式為 <component>__<parameter>,因此可以更新巢狀物件的每個元件。

返回:
self
property theta#

返回(扁平化、經過對數轉換的)非固定超參數。

請注意,theta 通常是核函數的超參數的經過對數轉換的值,因為搜尋空間的這種表示方式更適合超參數搜尋,因為長度尺度等超參數自然存在於對數尺度上。

返回:
thetandarray,形狀為 (n_dims,)

核函數的非固定、經過對數轉換的超參數