Hyperparameter#
- class sklearn.gaussian_process.kernels.Hyperparameter(name, value_type, bounds, n_elements=1, fixed=None)[source]#
以具名的tuple形式呈現的 Kernel 超參數規範。
版本 0.18 新增。
- 屬性:
- namestr
超參數的名稱。請注意,使用名稱為 “x” 的超參數的 kernel 必須具有屬性 self.x 和 self.x_bounds
- value_typestr
超參數的類型。目前僅支援 “numeric” 數值型超參數。
- bounds一對浮點數 >= 0 或 “fixed”
參數的下限和上限。如果 n_elements>1,則可以選擇給定一對每個都具有 n_elements 的 1 維陣列。如果將字串 “fixed” 作為邊界傳遞,則超參數的值無法更改。
- n_elementsint,預設值=1
超參數值的元素數量。預設值為 1,對應於純量超參數。n_elements > 1 對應於向量值的超參數,例如,非等向長度尺度。
- fixedbool,預設值=None
此超參數的值是否固定,即在超參數調整期間無法更改。如果傳遞 None,則根據給定的邊界推導 “fixed” 值。
範例
>>> from sklearn.gaussian_process.kernels import ConstantKernel >>> from sklearn.datasets import make_friedman2 >>> from sklearn.gaussian_process import GaussianProcessRegressor >>> from sklearn.gaussian_process.kernels import Hyperparameter >>> X, y = make_friedman2(n_samples=50, noise=0, random_state=0) >>> kernel = ConstantKernel(constant_value=1.0, ... constant_value_bounds=(0.0, 10.0))
我們可以存取每個超參數
>>> for hyperparameter in kernel.hyperparameters: ... print(hyperparameter) Hyperparameter(name='constant_value', value_type='numeric', bounds=array([[ 0., 10.]]), n_elements=1, fixed=False)
>>> params = kernel.get_params() >>> for key in sorted(params): print(f"{key} : {params[key]}") constant_value : 1.0 constant_value_bounds : (0.0, 10.0)
- bounds#
欄位編號 2 的別名
- count(value, /)#
傳回 value 出現的次數。
- fixed#
欄位編號 4 的別名
- index(value, start=0, stop=sys.maxsize, /)#
傳回 value 的第一個索引。
如果 value 不存在,則引發 ValueError。
- n_elements#
欄位編號 3 的別名
- name#
欄位編號 0 的別名
- value_type#
欄位編號 1 的別名