准备我的数据以进行SVM libsvm matlab的培训

时间:2014-09-21 10:48:58

标签: matlab machine-learning svm libsvm

我仍然对如此多的答案感到困惑,这些答案并不全面,如何在mat-lab中为Libsvm准备数据,以及完成培训的具体要求是什么

我有以下数据,我需要知道下一步是什么(我现在在Excel中的数据)

lable   words   total_char  domain len  Ratio   digit   dash    Jaccard  String 
-1         0       0             11     0.0000      0      0    0.3444  uvcaylkgdpg
-1         0       0              8     0.0000      0      0    0.2707  yqdqyntx
-1         1       2              10    0.2000      0      0    0.1761  vzcocljtfi
-1         0       0              8     0.0000      0      0    0.1919  wojpnhwk
-1         0       0              9     0.0000      0      0    0.3475  plrjgcjzf

 1         1       4             6      0.6667      0      0    0.4264  google
 1         4       14            8      1.7500      0      0    0.3444  facebook
 1         4       13            7      1.8571      0      0    0.2707  youtube
 1         1       3             5      0.6000      0      0    0.1761  yahoo
 1         1       3             5      0.6000      0      0    0.1919  baidu
 1         0       0             9      0.0000      0      0    0.3475  wikipedia

这是我需要训练分类器的数据的一部分

现在我知道mat实验室的下一步是做什么的 我做了以下事情 安装Libsvm,它工作正常 我需要知道如何才能获得最佳结果和正确的调整以便绘制结果?

1 个答案:

答案 0 :(得分:1)

您所说的下一部分是训练分类器或创建模型以供将来分类。即查找SVM模型的参数。您可以在LIBSVM中使用svmtrain来训练模型。

例如,

model = svmtrain(TrainLabel, TrainVec, '-c 1 -g 0.00154'); 

您需要确定的参数是c和gamma。

之后的步骤是做svmpredict所需的预测。

示例:

[predict_label, accuracy, dec_values] = svmpredict(TestLabel, TestVec, model);

希望它可以帮助您继续您的流程。

由我阅读此qn的答案:Retraining after Cross Validation with libsvm