培训LIBLINEAR的输出

时间:2013-02-27 20:22:43

标签: machine-learning svm libsvm

我正在尝试使用libSVM软件包,使用RBF和线性分类,我跟随(我认为)其README文件中的所有建议。

我有一个大文件要训练,(70K)所以我试图使用liblinear而不是RBF。

唯一的问题是我在训练阶段后无法获得模型,我的命令行如下所示:

./train -c 4 -v 5 -s 6 TrainingSet.scal TrainingSet.scal.Model

训练结束后,我有精确度估计,但是当我查看* .model文件以将其用于我的测试集时,我根本找不到它。

您认为这是包中的错误还是我在这里缺少什么?

由于

Rad公司

2 个答案:

答案 0 :(得分:2)

选项-v 5表示您正在对训练集进行5倍评估。如果启用此选项,则liblinear使用5倍评估估计错误,并且不输出模型。

如果要输出模型,则不要使用-v 5.在这种情况下,Tt不会输出训练错误。但您可以使用liblinear-predict来估计测试集上的错误。

答案 1 :(得分:0)

我通常直接在代码上使用库,但我认为在你的情况下没有执行训练,因为你使用的选项-s 6我认为是未定义的。

这是用法:

` -s svm_type:设置SVM类型(默认为0)

0 -- C-SVC      (multi-class classification)
1 -- nu-SVC     (multi-class classification)
2 -- one-class SVM  
3 -- epsilon-SVR    (regression)
4 -- nu-SVR     (regression)

` 您也省略了内核类型

-t kernel_type : set type of kernel function (default 2)
0 -- linear: u'*v
1 -- polynomial: (gamma*u'*v + coef0)^degree
2 -- radial basis function: exp(-gamma*|u-v|^2)
3 -- sigmoid: tanh(gamma*u'*v + coef0)
4 -- precomputed kernel (kernel values in training_set_file)

希望这会成功。