import numpy as np
import matplotlib.pyplot as plt
from sklearn.svm import SVR
from sklearn.metrics import mean_squared_error
if __name__ == '__main__':
N = 100 # 准备创建的数据个数
np.random.seed(0)
x = np.sort(np.random.uniform(0, 6, N))
y = 2*np.sin(x) + 0.1*np.random.rand(N)
x = x.reshape(-1, 1)
clfs = [SVR(C=1, kernel='linear'),
SVR(C=1, kernel='rbf', gamma=0.1),
SVR(C=1, kernel='poly', degree=3)
]
names = ['linear', 'rbf', 'poly']
colors = ['g', 'm', 'b']
plt.figure(figsize=(10, 8))
plt.plot(x, y, 'ro', markersize=6)
for i, model in enumerate(clfs):
model.fit(x, y)
y_hat = model.predict(x)
if i == 0:
print('linear的均方误差是:%.3f' % mean_squared_error(y_hat, y))
el
SVR三种不同的核预测情况对比
最新推荐文章于 2024-08-19 14:45:48 发布
本文详细探讨了支持向量机(SVR)在使用不同核函数如线性、多项式和高斯核(RBF)时的预测表现。通过实例分析,展示了各种核在不同数据集上的适用性和效果差异,为选择合适的SVR模型提供了参考。
摘要由CSDN通过智能技术生成