SVR预测语法解析

1 投票
1 回答
1571 浏览
提问于 2025-04-18 03:20

我正在做一个学校项目,我们使用支持向量回归(SVR)来预测一系列数值的下一个值(比如股票价格)。我们在scikit(Python的一个库)上找到了一些示例代码,但我们对其中的语法有点搞不懂。

有没有人能帮我们解读一下这些代码呢?

    X = np.sort(5 * np.random.rand(40, 1), axis=0)
    Y = np.sin(X).ravel()

    from sklearn.svm import SVR
    svr_rbf = SVR(kernel='rbf', C=1e3, gamma=0.1)

    y_rbf = svr_rbf.fit(X, Y).predict(X)

我理解这段代码的前四行……我主要的问题是y_rbf这一行……这到底是怎么回事?我们是在根据训练集进行曲线拟合,然后再根据同样的输入向量进行预测吗?

我不太明白这些语法的意思。希望能得到一些帮助。

谢谢!

1 个回答

1

最后一行可以分解成:

svr_rbf.fit(X, Y)   # 1
y_rbf = svr_rbf.predict(X)  # 2
  1. 你需要建立一个模型,来描述输出y是如何依赖于X的。根据文档,你要:

    根据给定的训练数据来调整SVM模型。

  2. 接下来,你用之前建立的模型来预测每个点的值(y)。正如文档所说:

    对X中的样本进行回归。

这样做对于实验来说是可以的,但我想提醒你:一般来说,你会想用不同于用来调整模型的数据来测试你的模型,以避免过拟合。如果你对交叉验证不太了解,可以去了解一下。

撰写回答