java类分类器_Java机器学习库(Java ML)(四、SVM分类器)

本文介绍了支持向量机(SVM)的基本概念,包括最大边距超平面、稀疏性和稳健性。SVM通过核方法进行非线性分类,广泛应用于模式识别。文中提到了LibSVM,这是一个由林智仁教授开发的快速支持向量机库,Java-ML项目简化了其使用。文章展示了如何在Java中创建、训练SVM分类器,并讨论了分类器的保存和加载方法,以及预测过程。
摘要由CSDN通过智能技术生成

这里简单的介绍一下支持向量机的概念。

支持向量机(Support Vector machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane)。

SVM使用铰链损失函数(hinge loss)计算经验风险(empirical risk)并在求解系统中加入了正则化项以优化结构风险(structural risk),是一个具有稀疏性和稳健性的分类器。SVM可以通过核方法(kernel method)进行非线性分类,是常见的核学习(kernel learning)方法之一。

SVM被提出于1964年,在二十世纪90年代后得到快速发展并衍生出一系列改进和扩展算法,在人像识别、文本分类等模式识别(pattern recognition)问题中有得到应用。

分类器常用术语

* True Positive (TP): "真正"指被model预测为正的正样本,即判断为真的正确率

* True Negative(TN): "真负" 指被model预测为负的负样本,即判断为假的正确率

* False Positive(FP): "假正" 指被模型预测为正的负样本,即误报率

* False Negative(FN): "假负" 指被模型预测为负的正样本,即漏报率

* 精准度(precision): P = TP/(TP+FP) 指被分类器判定正例中的正样本的比重

* 召回率(Recall): R=TP/(TP+FN) = 1- FN/T 指的是被预测为正例的占总的正例的比重

* 准确率(Accuracy): A = TP/(TP+FN)=(TP+TN)/(TP+FN+FP+TN) 分类器的准确度,能将正的判定为正,负的判定为负。

LIBSVM

JAVA-ML中封装了java开源支持向量机的库。LibSVM是台湾林智仁(Chih-Jen Lin)教授2001年开发的一套支持向量机的库,这套库运算速度还是挺快的,可以很方便的对数据做分类或回归。由于LibSVM程序小,运用灵活,输入参数少,并且是开源的,易于扩展,因此成为目前国内应用最多的SVM的库。

经过Java-ML项目使得LibSVM更易使用,避免了一些不必要参数的输入。

创建SVM分类器

244048007d77b523705f6c5893f09194.png

创建SVM分类器

上面的代码将加载示例iris数据集。接下来,它创建LibSVM的一个实例,接下来将使用它训练出一个分类器。

训练SVM分类器

bd6da46c4e8a4525d2430f308ba98d45.png

训练SVM分类器

这里我们对样本进行trainCount=5轮训练,训练集与测试集比例为4:1,训练输出结果如下

3952353e56fdc464e73de3180153337f.png

训练结果

由训练输出结果我们可以看出在第4轮与第5轮训练结束精确度与准确率就已经逮到了1。

分类器的保存与加载

Java-ML提供了一个工具类Serial,该类提供了将Java可序列化对象保存成文件的方法和文件加载成Java可序列化对象的方法。

99e51173582e5721415463ab04e07472.png

方法1

110f173fd9f825b058aed9375df73c7a.png

方法2

2d66a207f4039b89fe5c53aac589de94.png

Serial使用方法

分类器的预测

59fb1873ec527cf705ae8249015b4689.png

分类器的预测

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值