在 RBF 支持向量机中训练和预测

Posted

技术标签:

【中文标题】在 RBF 支持向量机中训练和预测【英文标题】:train and predict in RBF Support Vector Machine 【发布时间】:2018-07-31 09:46:47 【问题描述】:

我正在尝试在我的训练和测试数据集上运行 SVM RBF 回归。

[svm = SVC(kernel='rbf', random_state=0 , C=C, gamma=0.9)
  svm.fit(NewX , NewY)]

火车步骤没有任何问题。然而,在预测步骤svm.predict 它给了我这个错误

"ValueError: 所有输入数组维度,除了 连接轴必须完全匹配”

调用预测方法:

[Z = svm.predict(np.c_[NX_Test.ravel(),NY_Test.ravel()])
    Z = Z.reshape(NX_Test.shape)]

数据格式:

我的训练数据集是一个包含 80 个输入示例的列表,其中每个示例是 100 个样本的信号)

我的测试数据是一个包含 20 个输入示例的列表,其中每个示例也是一个由 100 个样本组成的信号)

https://pythonspot.com/support-vector-machine/

【问题讨论】:

请阅读“How to Ask”,然后阅读edit 你的问题,以便清楚你做了什么,你想做什么,以及发生了什么。另外,请确保您的帖子包含实际的问题 请定义"does not work"。您可以发布完整的错误跟踪吗?拥有一个可重复的小样本数据集也很有帮助...... 【参考方案1】:

您是否检查了所有训练样本的尺寸是否匹配?

SVM 需要样本(特征向量)具有相同的维度。 考虑 libSVM 格式的以下特征向量:

1:0.2 2:0.4 3:1.0 4:0.07 5:0.3

第一个值表示索引和第二个关联值。该向量的维度为5,因此,所有其他特征向量都必须与该维度匹配才能进行训练。训练后,您要预测的向量也必须与该维度完全匹配。因此,请验证是否满足此约束。

【讨论】:

以上是关于在 RBF 支持向量机中训练和预测的主要内容,如果未能解决你的问题,请参考以下文章

支持向量机中的“支持”是啥意思?

反向支持向量机:计算预测

lssvm预测基于鲸鱼算法优化lssvm数据预测matlab源码

lssvm预测基于鲸鱼优化算法的lssvm数据预测matlab源码

lssvm预测基于鲸鱼优化算法的lssvm数据预测matlab源码

使用支持向量机预测时间序列的未来值