SVR回归的Scikit学习包问题

2024-04-25 05:11:30 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用Scikit学习包来拟合支持向量机回归模型,但它并不像我期望的那样工作。在

你能帮我找出错误吗?我想使用的代码是:

from sklearn.svm import SVR
import numpy as np


X = []
x = np.arange(0, 20)
y = [3, 4, 8, 4, 6, 9, 8, 12, 15, 26, 35, 40, 45, 54, 49, 59, 60, 62, 63, 68]
X.append(x)

clf = SVR(verbose=1)
clf.fit(np.transpose(X), y)

print("Expecting Result:")
print(y)
print("Predicted Result:")
print(clf.predict(np.transpose(X)))

我得到的输出是:

^{pr2}$

可以看出,预测结果与训练数据相差甚远。 我怎样才能提高合身性?在

谢谢

大卫


Tags: 代码from模型import错误npresultsklearn
1条回答
网友
1楼 · 发布于 2024-04-25 05:11:30

这是一种边缘情况,RBF(scikit-learn中SVM的默认值)内核不能很好地工作。在

将SVR行更改为: clf = SVR(verbose=1, kernel='linear')你会看到更合理的结果。在

[LibSVM]Expecting Result: [3, 4, 8, 4, 6, 9, 8, 12, 15, 26, 35, 40, 45, 54, 49, 59, 60, 62, 63, 68] Predicted Result: [ -6.9 -2.9 1.1 5.1 9.1 13.1 17.1 21.1 25.1 29.1 33.1 37.1 41.1 45.1 49.1 53.1 57.1 61.1 65.1 69.1]

我知道你只是想了解一下SVM的工作原理。看看this博客文章,了解RBF内核是如何工作的。在

相关问题 更多 >