超参数#
- class sklearn.gaussian_process.kernels.Hyperparameter(name, value_type, bounds, n_elements=1, fixed=None)[source]#
以命名元组形式指定的核函数超参数。
0.18版本新增。
- 属性:
- namestr
超参数的名称。注意,使用名为“x”的超参数的核必须具有属性self.x和self.x_bounds
- value_typestr
超参数的类型。目前,只支持“数值型”超参数。
- bounds一对浮点数 >= 0 或 “fixed”
参数的下界和上界。如果 n_elements>1,则可以分别提供一对包含 n_elements 个元素的一维数组。如果将字符串“fixed”作为 bounds 传递,则超参数的值将无法更改。
- n_elementsint,默认为 1
超参数值的元素个数。默认为 1,对应于标量超参数。n_elements > 1 对应于向量值超参数,例如各向异性长度尺度。
- fixedbool,默认为 None
此超参数的值是否固定,即在超参数调整过程中是否无法更改。如果传递 None,则根据给定的 bounds 推断“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 的别名
图库示例#
离散数据结构上的高斯过程