libsvm java api文档,libsvm-javaAPI

获得

tw.edu.ntu.csie

libsvm

3.17

libsvm-3.17.jar的结构见下图,

37f776e83e5356b1dce0f73ac630d9fb.png

default package:这里是工具制作者自己封装出来的一些类,它们都有main函数,可作为小工具直接使用。

libsvm package:核心文件。

关于default package:因为里面的类不在任意一个package中,所以我们的工程无法引用。解决办法是,通过maven得到源代码,然后复制粘贴到我们的package下面。

svm_train的输入为训练集,输出为得到的训练模型。

svm_predict的输入为待预测数据,输出为得到的预测结果。

它们的输入输出都是文件。

训练集

libsvm官方提供了一些训练集:http://www.csie.ntu.edu.tw/~cjlin/libsvmtools/datasets/

其中有一个breast-cancer训练集,见图:

e3af8ea52490671e7c82855bc1d8ae3c.png

格式为: label featurIndex1:value1featurIndex2:value2  ...

训练模型model

它是一个文本文件,内容见图:

aceb31e620568f7d71fc04e52e035a7f.png

预测

本例中直接把训练集作为待预测集,结果见下:

8b5b3f80737785d0242cde8a9fd781bd.png

预测集与训练集一样,每一行都要有label标签。当我们用已知的结果来检验预测的准确性时,那么下行输出的准确性统计就是真实的:

Accuracy = 90.9090909090909% (10/11) (classification)

当我们预测未知数据时(大多数情况都属于这一种),那么这行信息忽略就可以了。

代码

参数设置

-b 表示是否携带准确性估计信息。

训练阶段与预测阶段都需要携带-b参数。例:

String[] testArgs = {"-b","1","d:/libsvm/breast-cancer.predict.txt", "d:/libsvm/breast-cancer.model", "d:/libsvm/breast-cancer.predict.result.txt"};此时,预测结果的输出为:

a989771a5c95d66e51444191680ceaaf.png

第一行是标签的集合。

从第二行开始,格式为: 预测结果    预测准确的概率    预测不准确的概率

原文:http://blog.csdn.net/chuchus/article/details/45645579

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值