支持向量机回归预测代码
时间: 2023-09-09 08:07:08 浏览: 94
基于支持向量机(SVM)的数据回归预测Python代码 sklearn实现
5星 · 资源好评率100%
以下是一个简单的支持向量机回归预测代码示例,使用的是Python中的scikit-learn库:
```python
# 导入所需的库
import numpy as np
from sklearn.svm import SVR
import matplotlib.pyplot as plt
# 创建一个随机数据集,包含10个点
X = np.sort(5 * np.random.rand(10, 1), axis=0)
y = np.sin(X).ravel()
# 添加一些噪声
y[::5] += 3 * (0.5 - np.random.rand(2))
# 创建SVR对象并拟合数据
svr_rbf = SVR(kernel='rbf', C=1e3, gamma=0.1)
svr_lin = SVR(kernel='linear', C=1e3)
svr_poly = SVR(kernel='poly', C=1e3, degree=2)
y_rbf = svr_rbf.fit(X, y).predict(X)
y_lin = svr_lin.fit(X, y).predict(X)
y_poly = svr_poly.fit(X, y).predict(X)
# 绘制结果
lw = 2
plt.scatter(X, y, color='darkorange', label='data')
plt.plot(X, y_rbf, color='navy', lw=lw, label='RBF model')
plt.plot(X, y_lin, color='c', lw=lw, label='Linear model')
plt.plot(X, y_poly, color='cornflowerblue', lw=lw, label='Polynomial model')
plt.xlabel('data')
plt.ylabel('target')
plt.title('Support Vector Regression')
plt.legend()
plt.show()
```
这个示例中,我们首先创建了一个包含10个点的随机数据集,并向其添加了一些噪声。接下来,我们使用三种不同的内核(径向基函数内核、线性内核和二次内核)创建了三个支持向量机预测模型,并使用fit方法拟合了数据。最后,我们绘制了结果,显示出每个模型的预测结果。
阅读全文