基于高斯过程的学习算法代码
时间: 2023-12-22 22:02:53 浏览: 28
下面是基于高斯过程的学习算法的 Python 代码示例:
```python
import numpy as np
from sklearn.gaussian_process import GaussianProcessRegressor
from sklearn.gaussian_process.kernels import RBF
# 生成训练数据
X_train = np.array([[0.1], [0.3], [0.5], [0.9]])
y_train = np.sin(X_train)
# 定义高斯过程回归模型
kernel = RBF(length_scale=1.0, length_scale_bounds=(1e-1, 10.0))
gp = GaussianProcessRegressor(kernel=kernel, alpha=0.1, n_restarts_optimizer=10)
# 训练模型
gp.fit(X_train, y_train)
# 预测数据
X_test = np.array([[0.2], [0.4], [0.6], [0.8], [1.0]])
y_pred, sigma = gp.predict(X_test, return_std=True)
# 输出结果
print("预测值:", y_pred)
print("置信区间:", sigma)
```
以上代码中,利用 `np.sin()` 函数生成了训练数据 `X_train` 和 `y_train`,然后定义了一个 RBF 核的高斯过程回归模型 `gp`,并使用 `fit()` 方法进行训练。接着,利用 `predict()` 方法对测试数据 `X_test` 进行预测,并得到预测结果 `y_pred` 和置信区间 `sigma`。最后,输出预测结果和置信区间。