基于SVM的税务稽查选案自动识别方法研究

2016-05-30 10:48赵岭峰
江苏理工学院学报 2016年2期
关键词:支持向量机机器学习

赵岭峰

摘要:支持向量机是20世纪90年代中期发展起来的机器学习技术,在众多分类算法中,支持向量机因其出色的学习能力,成为机器学习界的研究热点。着重于介绍支持向量机,先把采集来的企业申报数据随机分为训练样本和测试样本,然后通过台湾大学林智仁(Lin Chih-Jen)副教授开发设计的支持向量机工具LIBSVM,用训练样本获得SVM模型,并用这个SVM模型预测测试样本企业是否有问题,通过已知结果得到模型预测的准确率。实验结果说明该方法是一种有效的方法,完全可以作为税务稽查选案的参考。

关键词:税务稽查选案;支持向量机;机器学习

中图分类号:F810.42 文献标识码:A 文章编号:2095-7394(2016)02-0022-04

税务稽查选案,即通过计算机、人工或两者相结合的方法,对各类税务信息进行归集分类处理,在众多纳税人、扣缴义务人中选定最有可能有问题的对象。税务稽查选案目前广泛应用方法是以信息化手段调取指标偏差厉害的纳税人,然后逐户分析可能存在的问题,通过人工筛选,依靠以往的稽查和征管工作经验,确定检查方向和检查对象。

在本文中我们将尝试使用另一种方法(20世纪90年代中期发展起来的机器学习技术——支持向量机),来分析判断企业是否存在问题。支持向量机是一种机器学习的方法,它从训练资料中学习并建立一个模型,并通过此模型推测新的实例,可以广泛地应用于统计分类以及回归分析。目前,这一机器学习方法已在多个方向上得到应用,如人脸检测,汽轮发电机组的故障诊断,文本挖掘,手写体相似字识别,岩爆预测的支持向量机等。

1 SVM简介

支持向量机(Support Vector Machine,SVM)是Corinna Cortes和Vapnik8等于1995年首先提出的,它通过寻求结构化风险最小来提高学习机泛化能力,实现经验风险和置信范围的最小化,从而达到在统计样本量较少的情况下,亦能获得良好统计规律的目的。因为它在解决小样本、非线性及高维模式识别中表现出的许多特有的优势,所以研究发展迅速,现在已经在许多领域(生物信息学,文本和手写识别等)都取得了成功的应用。

支持向量机是一种机器学习的方法,它从训练资料中学习并建立一个模型,并通过此模型预测任何可能出现的输入的值的输出。训练资料是由输入(如企业申报数据)和预期输出(如稽查结果,有无问题)所组成。

SVM的主要思想可以概括为两点:它是针对线性可分情况进行分析,对于线性不可分的情况,通过使用非线性映射算法将低维输入空间线性不可分的样本转化为高维特征空间使其线性可分,从而使得高维特征空间采用线性算法对样本的非线性特征进行线性分析成为可能。它基于结构风险最小化理论之上在特征空间中建构最优分割超平面,使得学习器得到全局最优化,并且在整个样本空间的期望风险以某个概率满足一定上界。

SVM是一种有坚实理论基础的新颖的小样本学习方法。它基本上不涉及概率测度及大数定律等,因此不同于现有的统计方法。从本质上看,它避开了从归纳到演绎的传统过程,实现了高效的从训练样本到预报样本的“转导推理”,大大简化了通常的分类和回归等问题。

SVM的最终决策函数只由少数的支持向量所确定,计算的复杂性取决于支持向量的数目,而不是样本空间的维数,这在某种意义上避免了“维数灾难”。而少数支持向量决定了最终结果,这不但可以帮助我们抓住关键样本、“剔除”大量冗余样本,而且注定了该方法不但算法简单,而且具有较强的健壮性。例如增、删非支持向量样本对模型几乎没有影响,下面我们的实验也会体现这一点。

2 实验分析

2.1 实验目的

验证通过svm分类算法建立的企业模型,对未知企业是否有问题的预测准确性。

2.2 样本来源

笔者通过便利条件,直接从数据库按年抽取了某市2009到2012年所有稽查过的制造业企业,同时匹配一些相关年度申报数据(如销售收入,应纳增值税税额,存货平均数,主营业务利润等),然后在这些企业中通过excel随机函数,随机抽取了2000户作为实验样本。实验样本数据如表1。

2.3 实验涉及的工具说明

采用台湾大学林智仁(Lin Chih-Jen)副教授等开发设计的软件包LIBSVM,该软件包提供了简单易用和快速有效的SVM模式识别与回归方法,这使得我们不必要花费大量的时间理解SVM算法的深奥数学原理和计算机程序设计。该软件包可以在http://www.csie.ntu.edu.tw/-cjlin/免费获得。

2.4 详细实验步骤

2.4.1 产生符合软件要求的数据文件

将样本随机划分为1500户企业的训练样本和500户企业的测试样本,并按照LIBSVM软件要求将训练样本和验证样本分别格式化成文件train和文件test。

按照LIBSVM软件要求,将文件格式化成如下格式:

0 1:14 871 030.39,2:27 256.24。3:2 965 841.805.4:1 532 128.27

1 1:950 897.44,2:57 423.99,3:30 925.5,4:2 546.66

0 1:210 508 744.31.2:5454 538.9,3:15 784 275.23.4:1 130 826.74

1 1:2 802 448.68,2:102 103.41,3:86 128,4:136 084.47

0 1:21 472 084.19.2:1 101 170.56.3:3 204 356.755.4:118 902.49

0 1:6 275 138 578.79。2:-372 343 321.62,3:461 957 600.77.4:993 078 657.52

1 1:1 577 484.9,2:40 859.68,3:101 973.92,4:33 422.62

0 1:301 643 912.2,2:2 690 974.51,3:4 500 019.87.4:5 520 681.07

其中第一个数字,表示该稽查下来是否有问题,1代表有问题0,代表无问题。

冒号前的1,2,3,4代表序号,可以是不连续的。

1,2,3,4冒号后的值分别代表销售收入,应纳增值税税额,存货平均数,主营业务利润。

2.4.2 对数据文件进行缩放

为了避免一些特征值范围过大而另一些特征值范围过小,以及避免在训练时为了计算核函数而计算内积的时候引起数值计算的困难,因此通常将数据缩放到[-1,1]或者是[0,1]之间。

本步骤通过svm-scale.exe训练样本train自动产生缩放规则range和缩放后的训练样本train.scale,然后通过缩放规则range产生缩放后的验证文件test.scale。以下为实例命令:

svm-scale.exe-s range train>train.scale

svm-scale.exe-r range test>test.scale

2.4.3 获得SVM模型

本步骤通过svm-train.exe实现对缩放后的训练样本train.scale的训练,获得SVM模型model。

svm-train.exe train.scale model

2.4.4 验证模型预测的准确率

本步骤通过svm-predict.exe根据训练获得的模型model,对缩放后的验证样本test.scale进行分析,生成结果集result。

svm-predict.exe test.scale model resuh

程序返回:Accuracy=81.2%f406/5001(classi-fication)

说明我们预测的准确率为81.2%。

2.5 实验分析

在1 500户企业的训练样本和500户企业的测试样本下测试改变属性值数量对分类的影响,4个属性值时,反馈预测准确率81.2%,6个属性值时,反馈预测准确率81%,8个属性值时,反馈预测准确率81.2%,10个属性值时,反馈预测准确率81.2%,可见属性数量的增加确实会影响预测准确性,但是影响不大。数据分类属性越多,问题的复杂程度就越厉害,SVM引入了核函数来应付样本的属性数,使得样本的属性可以很多,而且效率上面并没有多大变化。

改变样本数量,在测试样本均为500企业情况下,训练样本为300企业,反馈预测准确率81.2%,训练样本为600企业,反馈预测准确率81.2%,训练样本为1000企业,反馈预测准确率81.2%,训练样本为1500企业,反馈预测准确率81.2%,实验结果验证了SVM的健壮性,增、删非支持向量样本对模型几乎没有影响,小样本数据即可取得很好的效果。

3 结语

随着信息化的快速发展,税收分析在税收工作中越来越重要。新技术的学习和使用是提高分析水平的重要途径和手段之一,本文抛砖引玉,提出使用机器学习方法,利用支持向量机来分析判断企业是否有问题,实验结果表明识别准确率达到81.2%,完全可以作为税务稽查选案的又一参考。

责任编辑 祁秀春

猜你喜欢
支持向量机机器学习
基于改进支持向量机的船舶纵摇预报模型
基于词典与机器学习的中文微博情感分析
基于SVM的烟草销售量预测
动态场景中的视觉目标识别方法分析
论提高装备故障预测准确度的方法途径
基于网络搜索数据的平遥旅游客流量预测分析
前缀字母为特征在维吾尔语文本情感分类中的研究
基于熵技术的公共事业费最优组合预测
基于支持向量机的金融数据分析研究
机器学习理论在高中自主学习中的应用