超参数#

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

超参数的类型。目前仅支持“numeric”超参数。

bounds一对浮点数 >= 0 或 “fixed”

参数的下限和上限。如果 n_elements>1,可以交替地给出包含 n_elements 个元素的一对一维数组。如果传入字符串“fixed”作为边界,则超参数的值不能更改。

n_elementsint, default=1

超参数值的元素数量。默认为 1,对应于标量超参数。n_elements > 1 对应于向量值超参数,例如,各向异性长度尺度。

fixedbool, default=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, /)#

返回值的出现次数。

fixed#

字段号 4 的别名

index(value, start=0, stop=sys.maxsize, /)#

返回值的第一个索引。

如果该值不存在,则引发 ValueError。

n_elements#

字段号 3 的别名

name#

字段号 0 的别名

value_type#

字段号 1 的别名