调用libsvm.jar
import java.io.IOException;
public class Tlibsvm {
public static void main(String[] args) throws IOException { //svm_problem String[] arg = {
"D:\\2_1500_rfinish\\TextCategorization_2_1500_10\\data\\test.libsvm",
"D:\\2_1500_rfinish\\TextCategorization_2_1500_10\\data\\model" };
String[] parg = {
"D:\\2_1500_rfinish\\TextCategorization_2_1500_10\\data\\train.libsvm",
"D:\\2_1500_rfinish\\TextCategorization_2_1500_10\\data\\model",
"D:\\2_1500_rfinish\\TextCategorization_2_1500_10\\data\\ouput" };
//svm_train t = new svm_train();//svm_predict p = new svm_predict();
try {
svm_train.main(arg);
svm_predict.main(parg);
} catch (IOException e) {
//TODO Auto-generated catch block e.printStackTrace();
}
}
}
预测类别:
import java.io.IOException;
import libsvm.svm;
import libsvm.svm_model;
import libsvm.svm_node;
public class Tlibsvm {
public static double predictPerRecord(double[] record, svm_model model) {
svm_node[] x = new svm_node[record.length];
for (int i = 0; i < record.length; i++) {
svm_node node = new svm_node();
node.index = i;
node.value = record[i];
x[i] = node;
}
double v = svm.svm_predict(model, x);