R语言中文分词方法在审计短文本中的应用

作者简介:
牛艳芳,孙瑜,韩新,山东财经大学,山东省莱芜市审计局

原文出处:
中国审计

内容提要:

02


期刊代号:V3
分类名称:审计文摘
复印期号:2017 年 08 期

关 键 词:

字号:

      面对复杂的信息化环境,审计人员需要分析的非结构化文本数据日益增多,如被审计单位的规章制度、会议纪要、办公文档关键字词的检索,财务核算中的摘要分析、财政支付系统中的项目名称、被审计单位的地址等。当前,非结构化数据所占的比重不断增大,因其不具备固定的数据结构特点,使得传统查询性分析的审计方法力不从心。本文探索了当前流行的中文分词方法在财政支出审计短文本中的应用。

      中文分词方法简介

      分词方法就是把一个文本字符串序列切分成一个个单独的词,并按照一定的规范重新组合成词序列的过程。按照文本长度,一般将文本分为长文本(如会议记录、采购合同、工作报告等)与短文本(如微博、短信、凭证上填写的摘要、收款人名称等)。从分析步骤看,长文本和短文本都遵循相似的分析步骤:首先利用分词方法进行文本处理,去除其中的噪音数据,进而形成结构化矩阵,再使用聚类、分类等分析方法,对所形成的结构化矩阵进行分析。

      由于中文不像英文那样词与词之间有空格隔开,其句子中的词不能通过明显的分界符来简单划界,因此中文分词比英文要复杂许多。目前,中文分词技术已取得了重要的进展与成果,商业开发并支持中文分词的工具较多,大致可以分为集成服务类和开源工具类。集成服务类,主要由软件供应商提供在线软件分词服务,利用导入、粘贴文本或直接输入网址的方式引入文本,在线分析文本词频等。由于审计数据比较敏感且数据分析需求多样,并不适合这些在线服务。开源工具类也有较多选择,可以实现中文人名识别、繁体中文识别、中文词性输出以及过滤停用词等功能。当前流行的中文分词工具非R语言和Python莫属,R语言中有Rwordseg包,它基于ICTCLAS中文分词系统,包括中文分词、词性标注、命名实体识别、支持用户自定义输出的词类标准及输出格式。在本文案例中,应用的是R语言的Rwordseg包。

      支付系统的摘要规范性检查

      伴随我国财政国库管理制度的改革与发展,国库集中支付制度不断完善。该制度下,各级财政部门有较完善的财政支付信息系统,该级部门管理的财政资金纳入国库单一账户体系管理。当预算单位需要支付款项时,向该系统提出申请,经审核后把资金通过单一账户体系支付给收款人。多年来,审计人员积累了对国库集中支付资金的监督、管理以及反映预算单位使用财政资金的真实性、合规性等经验,如大额支付分析、资金支付用途分析等。本文将中文分词方法应用到财政支付系统的摘要规范性分析和收款对象分析中,以提高审计分析效率和效果。

      国库集中支付系统的核心业务表存储了各预算单位的财政资金支付流水,该流水表有功能科目、经济科目等重要分类字段,来说明每项资金的用途、性质和来源等,其中摘要是对每一条财政支付用途做进一步说明,摘要虽然字数不多,但包含的信息却非常重要,它补充说明支付款项的用途,是对经济科目的辅助说明信息。审计人员通常从摘要中筛选部分关键词来实现部分数据查询,如果预算单位的摘要书写过于简略、笼统或模糊不清,就会影响数据分析效果,不利于公共资金审计全覆盖目标的实现。因此,运用中文分词技术可以实现财政支付摘要规范性分析,以查找摘要书写比较差的单位。摘要规范性的主要分析步骤如下:

      (一)按照经济科目分类制作词库

      支付信息中摘要书写一般比较简短,且受个人书写及表述习惯影响,要判断其规范性必须有参照对比源。摘要既然是对财政支付用途的进一步说明,必然与反映经济性质和具体用途的经济科目分类趋于一致,包括工资福利支出、商品和服务支出、对个人和家庭的补助、对企事业单位的补贴、转移性支出、债务利息支出、债务还本支出、其他资本性支出和其他支出9大类。以301类的工资福利支出为例,该科目反映单位支付在职人员的基本工资、津补贴、奖金等,那么301类的摘要应该经常出现“应付职工工资”“在职薪资”等关键词,如果摘要出现“差旅费”“办公用品”等词,而经济科目却是“301”类,则表示该摘要书写错误。

      审计人员以财政部颁布的《政府收支分类科目》为参考,搜集整理每一个大类科目经常出现的关键词,将这些词用TXT文本记录,并用经济大类科目命名,就形成“30100.txt”“30200.txt”等9个文件,进而利用Rwordseg包进行经济科目词库加载,为下一步摘要书写规范性做参考。

      (二)利用分词方法进行摘要规范性判断

      如果摘要为空或者长度小于2,则直接加入分类标签“过于简单”,且不进行分词;如果长度大于2,则利用Rwordseg包进行分词,且词性属性设置为“TRUE”,由于该包分词算法不是以用户自定义词库为第一优先级,如“30100.txt”的词库中虽然有“工资”一词,但分词结果仍是“工资”词性设置为n,而不是预期的“30100”。在尚无能力改变分词算法的条件下,审计人员采取折中方法,把摘要中的名词词性一并提取,提取一系列名词词性,如名词(n)、动名词(vn)、名语素(ng)、名形词(an),进而运用字符串匹配来判断是否包含词库中的词汇。

相关文章: