一、下载libsvm数据集
先下载好LibSVM数据集
下载地址:密码1qkk
下载解压好后在打开SVM Toy.exe
保存为first.text
再添加一些数据保存为second.text
打开IDEA,新建一个java项目
将libsvm中所有文件复制到src下libsvm文件中
再将java中这四个文件夹放入text文件夹中
再新建一个Text.java代码
代码如下:
package text;
import java.io.IOException;
public class Text {
public static void main(String args[]) throws IOException {
//存放数据以及保存模型文件路径
String filepath = "E:\\libsvm\\libsvm-3.25\\libsvm-3.25\\text";
String[] arg = {"-s","0","-c","10","-t","0",filepath+"first.txt",filepath+"line.txt"};
String[] arg1 = {filepath+"second.txt",filepath+"line.txt",filepath+"predict1.txt"};
System.out.println("----------------线性-----------------");
//训练函数
svm_train.main(arg);
svm_predict.main(arg1);
arg[5]="1";
arg[7]=filepath+"poly.txt";//输出文件路径
arg1[1]=filepath+"poly.txt";
arg1[2]=filepath+"predict2.txt";
System.out.println("---------------多项式-----------------");
svm_train.main(arg);
svm_predict.main(arg1);
arg[5]="2";
arg[7]=filepath+"RBF.txt";
arg1[1]=filepath+"RBF.txt";
arg1[2]=filepath+"predict3.txt";
System.out.println("---------------高斯核-----------------");
svm_train.main(arg);
svm_predict.main(arg1);
}
}
注意改下路径,运行得到:
决策树的数学公式:
f(x)=SV*x+rho
二、总结
运用libsvm来进行训练很方便很清晰