libsvm 不提供支持向量/没有支持向量
Posted
技术标签:
【中文标题】libsvm 不提供支持向量/没有支持向量【英文标题】:libsvm not giving support vectors / no support vectors 【发布时间】:2014-06-28 12:08:27 【问题描述】:我正在使用 jlibsvm 做 SVM 进行回归。我的数据集非常小(42 个样本)。当我使用数据集使用带有 sigmoid 内核的 epsilon SVR 创建模型时,不会生成支持向量。
这是我在模型文件中得到的:
svm_type epsilon_svr
kernel_type sigmoid
gamma 0.02380952425301075
coef0 0.0
label
rho -66.42803
total_sv 0
probA -1.0
SV
当我在 libsvm 网站上使用其他一些数据集时,我会得到一个带有支持向量的模型文件。 有人可以建议为什么没有为我的数据集生成支持向量吗? 我的数据集文件格式正确,所以没有问题...
【问题讨论】:
【参考方案1】:这可能意味着,根据您的数据和超参数,找到的最佳分类是为所有样本分配相同的标签。
您的样品是否不平衡?正样本和负样本的数量是多少?您可能想尝试为正/负样本添加权重以解决此问题
考虑到样本的结构和内核类型,也可能难以分离样本。您是否尝试过不同的结构?
只有 42 个数据样本,也许您可以将它们添加到您的问题中并获得更好的答案。
【讨论】:
Nicolas 感谢您的回复。我对神经网络和 K 最近邻使用了相同的数据,但效果很好。不过,我不得不调整神经网络的很多参数。我的数据是非线性的,我正在使用 SVM 进行回归我使用 epsilon SVR 并尝试了各种内核函数,例如线性、多项式、径向基、S 型。但同样的结果。关于更改和尝试哪些参数等的任何想法?? 我的数据有 14 个输入。样本数量为 42 .. 我尝试使用更高的样本 200 。仍然没有帮助。我正在使用 epsilon SVR。 @vinzzz,还没有运气吗?如果您发现发生这种情况的原因,请添加一些信息!谢谢!以上是关于libsvm 不提供支持向量/没有支持向量的主要内容,如果未能解决你的问题,请参考以下文章