如何将 libsvm 预测的类标签保存为 csv



我是SVM的新手,我正在使用libsvm 3.21来训练和测试我的数据。我的每个实例都有类标签 1,2,..,5(假设我有 10 个)。

有没有办法将预测的类标签(例如 3,5,1,2,3,4,2,1,1,4)打印到 csv 或 txt 文件中?我一直在 http://www.csie.ntu.edu.tw/~cjlin/libsvm/faq.html 这里寻找,但似乎libsvm只输出这个(以及.model,.range和.scale文件):

optimization finished, #iter = 219
nu = 0.431030
obj = -100.877286, rho = 0.424632
nSV = 132, nBSV = 107
Total nSV = 132

根据libsvm中的自述文件,假设你有train.data,test.data,你需要做的是使用svm-train训练你的数据

user:~$ ./svm-train train.data svm.model
*
optimization finished, #iter = 162
nu = 0.431029
obj = -100.877288, rho = 0.424462
nSV = 132, nBSV = 107
Total nSV = 132

然后使用刚刚使用 SVM 预测训练的模型测试 test.data

user:~$ ./svm-predict test.data svm.model svm.output
Accuracy = 86.6667% (234/270) (classification)

您可以在 svm.output 中找到预测的标签。

user:~$ head -5 svm.output 
1
-1
-1
1
-1

特别是,如果要将其更改为.csv文件,则可以键入

user:~$ tr -s 'n' ',' < svm.output > svm.csv

最新更新