我正在尝试libSVM包,使用径向基函数和线性分类,我遵循(我认为)他们的自述文件中的所有建议。
我有一个很大的文件要训练,(70K),所以我试着使用liblline.而不是RBF。
唯一的问题是,在训练阶段之后,我无法获得模型,我的命令行如下所示:
./train -c 4 -v 5 -s 6 TrainingSet.scal TrainingSet.scal.Model训练完成后,我有了准确度估计,但是当我查看*.model文件来对我的测试集使用它时,我根本找不到它。
你认为这是包中的bug,还是我遗漏了什么?
谢谢
Rad
发布于 2013-03-01 07:16:39
选项-v 5表示您正在对训练集进行5倍评估。如果启用此选项,则liblinear将使用5倍评估来估计误差,并且不会输出模型。
如果你想输出模型,那么不要使用-v 5。在这种情况下,Tt不会输出训练错误。但是你可以使用来估计测试集上的误差。
发布于 2013-02-28 04:52:45
我通常直接在代码上使用库,但我认为在您的情况下没有执行训练,因为您使用的是选项-s 6,我认为它是未定义的。
它的用法如下:
` -s svm_type :设置支持向量机的类型(默认为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)希望这能成功。
https://stackoverflow.com/questions/15121645
复制相似问题