我正在使用 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 网站上使用其他一些数据集时,我得到了一个带有支持向量的模型文件。 有人可以建议为什么我的数据集没有生成支持向量吗? 我的数据集文件格式正确,因此没有问题...
最佳答案
这可能意味着,根据您的数据和超参数,找到的最佳分类是为所有样本分配相同的标签。
您的样本是否不平衡?正样本和负样本的数量是多少?您可能想尝试为正/负样本添加权重来解决这个问题
鉴于样本的结构和内核类型,也可能难以分离样本。您尝试过不同的结构吗?
只有 42 个数据样本,也许您可以将它们添加到您的问题中并获得更好的答案。
关于machine-learning - libsvm 不提供支持向量/无支持向量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23586843/