文本挖掘之发票内容分析
Posted 坐看云起Jean
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文本挖掘之发票内容分析相关的知识,希望对你有一定的参考价值。
虚开发票的问题最近有所抬头,虚开发票等发票分析的基础是发票内容的准确分类识别(打标签),然后通过图论(有向图)等方法重组上下游交易网络,在信息流上先分析疑点,再通过实物流与资金流核查。社会经济活动千变万化,发票内容就千变万化。原地税在线开票相对严格,开票项目只能从列表中选择,品名只能写在备注中。营改增后都用增值税发票,货物劳务名称写法就自由很多,给进一步分析带来困难。应用文本挖掘的自然语言处理(NLP)技术,可以相对准确的分类。好在写法变化虽多,结构其实相对简单,不象作家天马行空,最后必定落实到具体的名词,只需正确分词、标注词性,就可以准确分类。
这里以本市金三并库版的代开增值税专用发票数据为例,研究一下发票货物劳务准确标签的问题,进一步研究交易网络则要用自开票的数据,要有上下游投入产出关系。抽取了2016年5月1日全面营改增后本市代开的130万张发票,涉及266万项货物劳务明细的品名。
图1、读入发票货物劳务名称,用结巴分词分词及标注词性,选出名词及特定词性(如x)的词,取最后一个为该项货物劳务的分类。如“2016年6月商铺租金”分词结果为“2016,年,6,月,商铺,租金”,词性为“m,m,x,m,n,n”,关键词为“商铺,租金”,分类为最后一个名词“租金”。笔记本上耗时4653秒。
图2、每个发票明细项货物劳务名称分词统计图,绝大部分切分为1~6个词,也有超长的切分为37个词。“局,大楼,大院,局,大楼,饭堂,井,岸,所,白藤,湖,营业厅,白,蕉,所,六乡,营业厅,乾务,所,五山,营业所,斗门,所,莲,洲,所,莲溪,营业厅,外围,灭蚊,蝇,蟑,鼠,红火蚁,第三季度,服务,款”。
图3、每个发票明细项货物劳务名称包含名词统计图,绝大部分包含为1~4个名词,如上例的词性标注为“n,n,n,n,n,n,zg,n,c,nr,ns,n,a,zg,c,ns,n,x,c,x,n,n,c,n,ng,c,x,n,f,n,ng,n,n,n,l,vn,m”,包含了27个名词。
图4、分词及分类的效果,看开头及结尾各10项,准确度不错,只有最后一项“海水泵维修”分类成“水泵”是错的,准确率95%。严谨的评估要随机抽样,比如10%,人工核实。
图5、分词后总体词频统计,“服务费”、“租金”等是最高的,但“月”、“年”、“费”,数字等词频也很高,分词有很大的改善空间,一是分词前过滤掉数字及月、年等常见停止词,二是建立发票专用词库。
图6、分词后的词性统计,名词是绝对的主角,英文数字也不少,可以改善。
图7、货物劳务分类结果统计,服务费、租金、管理费、代理费占大多数,这与代开发票多为小微企业或自然人的业务场景相关。注意货物劳务名称为空的也超过8万项(已具体查看核实),系统有bug,不应该为空的。
图8、搜狗输入法的细胞词库,建立发票专用词库时可以用此类第三方词库或委托第三方完成,给整个税务系统用。
图9、下一步就是通过有向图重建交易网络分析。R语言上用igraph等工具包,这是它的作者匈牙利人Gabor Csardi与波士顿大学教授Eric D.Kolaczyk写的书,是波士顿大学数学与统计学系的课程教材。
以上是关于文本挖掘之发票内容分析的主要内容,如果未能解决你的问题,请参考以下文章