本文整理汇总了Python中sklearn.gaussian_process.kernels.Matern方法的典型用法代码示例。如果您正苦于以下问题:Python kernels.Matern方法的具体用法?Python kernels.Matern怎么用?Python kernels.Matern使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sklearn.gaussian_process.kernels
的用法示例。
在下文中一共展示了kernels.Matern方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: __init__
# 需要导入模块: from sklearn.gaussian_process import kernels [as 别名]
# 或者: from sklearn.gaussian_process.kernels import Matern [as 别名]
def __init__(self, optimize_mode="maximize", utility='ei', kappa=5, xi=0, nu=2.5, alpha=1e-6, cold_start_num=10,
selection_num_warm_up=100000, selection_num_starting_points=250):
self._optimize_mode = OptimizeMode(optimize_mode)
# utility function related
self._utility = utility
self._kappa = kappa
self._xi = xi
# target space
self._space = None
self._random_state = np.random.RandomState()
# nu, alpha are GPR related params
self._gp = GaussianProcessRegressor(
kernel=Matern(nu=nu),
alpha=alpha,
normalize_y=True,
n_restarts_optimizer=25,
random_state=self._random_state
)
# num of random evaluations before GPR
self._cold_start_num = cold_start_num
# params for acq_max
self._selection_num_warm_up = selection_num_warm_up
self._selection_num_starting_points = selection_num_starting_points
# num of imported data
self._supplement_data_num = 0
示例2: get_gaussian_process
# 需要导入模块: from sklearn.gaussian_process import kernels [as 别名]
# 或者: from sklearn.gaussian_process.kernels import Matern [as 别名]
def get_gaussian_process(config, random_generator):
if not isinstance(config, GaussianProcessConfig):
raise ValueError("Received a non valid configuration.")
if GaussianProcessesKernels.is_rbf(config.kernel):
kernel = RBF(length_scale=config.length_scale)
else:
kernel = Matern(length_scale=config.length_scale, nu=config.nu)
return GaussianProcessRegressor(
kernel=kernel,
n_restarts_optimizer=config.num_restarts_optimizer,
random_state=random_generator,
)
示例3: __init__
# 需要导入模块: from sklearn.gaussian_process import kernels [as 别名]
# 或者: from sklearn.gaussian_process.kernels import Matern [as 别名]
def __init__(self, f, pbounds, random_state=None, verbose=2,
bounds_transformer=None):
""""""
self._random_state = ensure_rng(random_state)
# Data structure containing the function to be optimized, the bounds of
# its domain, and a record of the evaluations we have done so far
self._space = TargetSpace(f, pbounds, random_state)
# queue
self._queue = Queue()
# Internal GP regressor
self._gp = GaussianProcessRegressor(
kernel=Matern(nu=2.5),
alpha=1e-6,
normalize_y=True,
n_restarts_optimizer=5,
random_state=self._random_state,
)
self._verbose = verbose
self._bounds_transformer = bounds_transformer
if self._bounds_transformer:
self._bounds_transformer.initialize(self._space)
super(BayesianOptimization, self).__init__(events=DEFAULT_EVENTS)
示例4: get_globals
# 需要导入模块: from sklearn.gaussian_process import kernels [as 别名]
# 或者: from sklearn.gaussian_process.kernels import Matern [as 别名]
def get_globals():
X = np.array([
[0.00, 0.00],
[0.99, 0.99],
[0.00, 0.99],
[0.99, 0.00],
[0.50, 0.50],
[0.25, 0.50],
[0.50, 0.25],
[0.75, 0.50],
[0.50, 0.75],
])
def get_y(X):
return -(X[:, 0] - 0.3) ** 2 - 0.5 * (X[:, 1] - 0.6)**2 + 2
y = get_y(X)
mesh = np.dstack(
np.meshgrid(np.arange(0, 1, 0.005), np.arange(0, 1, 0.005))
).reshape(-1, 2)
GP = GaussianProcessRegressor(
kernel=Matern(),
n_restarts_optimizer=25,
)
GP.fit(X, y)
return {'x': X, 'y': y, 'gp': GP, 'mesh': mesh}
示例5: make_gp_transitive
# 需要导入模块: from sklearn.gaussian_process import kernels [as 别名]
# 或者: from sklearn.gaussian_process.kernels import Matern [as 别名]
def make_gp_transitive(
self,
n_instances=1000,
n_objects=5,
noise=0.0,
n_features=100,
kernel_params=None,
seed=42,
**kwd,
):
"""Creates a nonlinear object ranking problem by sampling from a
Gaussian process as the latent utility function.
Note that this function needs to compute a kernel matrix of size
(n_instances * n_objects) ** 2, which could allocate a large chunk of the
memory."""
random_state = check_random_state(seed=seed)
if kernel_params is None:
kernel_params = dict()
n_total = n_instances * n_objects
X = random_state.rand(n_total, n_features)
L = np.linalg.cholesky(Matern(**kernel_params)(X))
f = L.dot(random_state.randn(n_total)) + random_state.normal(
scale=noise, size=n_total
)
X = X.reshape(n_instances, n_objects, n_features)
f = f.reshape(n_instances, n_objects)
Y = f.argmax(axis=1)
Y = convert_to_label_encoding(Y, n_objects)
return X, Y
示例6: make_gp_transitive
# 需要导入模块: from sklearn.gaussian_process import kernels [as 别名]
# 或者: from sklearn.gaussian_process.kernels import Matern [as 别名]
def make_gp_transitive(
self,
n_instances=1000,
n_objects=5,
noise=0.0,
n_features=100,
kernel_params=None,
seed=42,
**kwd,
):
"""Creates a nonlinear object ranking problem by sampling from a
Gaussian process as the latent utility function.
Note that this function needs to compute a kernel matrix of size
(n_instances * n_objects) ** 2, which could allocate a large chunk of the
memory."""
random_state = check_random_state(seed=seed)
if kernel_params is None:
kernel_params = dict()
n_total = n_instances * n_objects
X = random_state.rand(n_total, n_features)
L = np.linalg.cholesky(Matern(**kernel_params)(X))
f = L.dot(random_state.randn(n_total)) + random_state.normal(
scale=noise, size=n_total
)
X = X.reshape(n_instances, n_objects, n_features)
f = f.reshape(n_instances, n_objects)
Y = scores_to_rankings(f)
return X, Y