1

这个问题一般是关于 LibSVM 或 SVM 的。我想知道是否可以使用相同的 SVM 模型对不同长度的特征向量进行分类。

假设我们用以下特征向量的大约 1000 个实例训练 SVM:[feature1 feature2 feature3 feature4 feature5]

现在我想预测一个长度为 5 的测试向量。如果我收到的概率太低,我现在想检查包含 2-5 列的测试向量的第一个子集。所以我想关闭 1 功能。

我现在的问题是:是否可以告诉 SVM 只检查特征 2-5 以进行预测(例如使用权重),还是我必须训练不同的 SVM 模型。一个用于 5 个功能,另一个用于 4 个功能等等......?

提前致谢...

马库斯

4

1 回答 1

0

您始终可以通过修改文件从测试点中删除功能,但我强烈建议不要使用这种方法。当所有特征都存在时,SVM 模型是有效的。如果您使用的是线性内核,只需将给定特征设置为 0 就会隐含地导致它被忽略(尽管您不应该这样做)。当使用其他内核时,这是非常不可以的。

使用与用于训练的特征集不同的特征集进行预测并不是一个好方法。

我强烈建议为您希望在预测中使用的特征子集训练一个新模型。

于 2013-05-08T13:09:25.613 回答