从审计角度来说,审计数据正在大规模、不间断产生并更新,审计数据挖掘就是根据事先明确的审计目标,对被审计单位的大量业务数据进行分析,揭示其中潜在的逻辑关系和规律,并形成明确而有效的审计思路的过程。 数据犹如是一座金矿,数据挖掘便是淘金的过程。数据挖掘所针对的数据基本上是没有局限性的,对数据的处理分析也不是简单的EXCEL表查询或者是SQL语句查询,而是通过算法,发掘数据之间的规律,形成一种数据分析的思路,从而得到审计人员分析应用的审计决策。 一、数据挖掘的一般过程 数据挖掘的一般过程包括数据采集、数据预处理、数据挖掘、总结分析等。 1.数据采集。在计算机审计过程中,审计数据的成功采集转换是审计结果准确性的必要保障。通常在审计遇到的问题有以下三类:一是数据规模比较大,比如医院和社保的数据通常都在数十甚至是数百GB的规模;二是数据结构各异,不同部门提供的不管是财务数据,还是业务数据,在数据结构上往往会有不小的差异;三是数据格式不同,各被审计单位之间,财务软件版本以及数据库版本也都有着很大的差别。所以,数据采集是整个数据挖掘分析过程中耗时最长,也是最重要的基础步骤。 2.数据预处理。数据预处理是对采集到的数据做进一步加工,在审计过程中经常用到的就有数据清理和数据转换等。 数据清理,顾名思义就是把所有采集到的数据,集中处理成统一的、可以直接使用的数据。这个过程中,我们可以忽略甚至是删除一些重复的数据元组,也可以适当添加缺失的数据值等。 数据转换其实就是整理数据格式,使数据规范化,符合审计人员操作要求,我们所用到的数据转换一般为数据格式的转换和不同数据库之间的数据转换。 当然,数据挖掘预处理过程不仅是我们平时审计过程中所处理的结构化数据,原始数据可以是半结构化,以及非结构化的数据。 3.数据挖掘的方法。现如今,数据挖掘的软件如Modeler、SASEM等越来越成熟,云计算数据分析挖掘技术也在逐步壮大,与此同时,数据挖掘的算法也在不断更新、扩充。但是常用的方法主要还是分类、回归分析、聚类算法、决策树算法、估计和预测、特征、Web页挖掘等,它们分别从不同的角度对数据进行挖掘。这里主要介绍下分类、聚类算法、决策树算法等。 ①分类和聚类算法。审计采集的数据,首先是要找到数据的共同点,然后才能对数据有进一步了解,而分类算法就是根据数据的共同点进行分组。例如我们在医院审计中,可以根据业务不同分类为门诊数据和住院数据。聚类分析相比较分类算法是一种未知的存在,我们并不知道根据什么进行分类,也不知道要分成几类,而是根据数据的相似性和差异性,以及数据之间的内部关联进行聚类。例如在对某单位的财务数据进行审计,数据之间的内部联系看不到,而聚类分析可以找出隐藏在数据之中的某种关系,找出数据异常的情况。 ②决策树方法。决策树其实就是解决问题的分析步骤,每一步可以非常精确,并且依次类推,直到得到答案。比如在医院审计中,可以询问是否是住院病人、是否是企业职工、是否已退休、是否医保报销、报销比例是多少等等,直到得出需要的结果。优秀的决策树算法,可以用最少的步骤得出审计决策,这就是系统需要寻找的最有效路径。但是,往往在使用决策树算法的时候,遇到的实际问题会比较复杂,那么就可以将现有的决策树划分成多个小的决策树进行单独分析,从而解决问题。 ③审计数据挖掘基本流程图(举例说明)
二、关于数据挖掘的思考 1.内容抽象。数据挖掘多年以前就已经被国内外提及,也可以说是伴随着大数据的发展而逐步人们熟知。但是,数据挖掘技术以算法为基础,一个好的算法,就是一个好的解决思路,相比较经常运用到的数据分析技术,比如关系型数据库来说,数据挖掘就显得抽象许多。 2.服务软件不多,且价格昂贵。就目前市场来看,可以使用的数据挖掘软件并不是很多,CS架构的软件,算法也不能及时更新,越来越多的服务商开始应用云计算为客户提供数据挖掘技术服务,相比以前,方式更加灵活,但是价格都比较高。 3.数据结果的多样性。一套数据蕴藏的信息量是不可限量的,多种算法运用到一套数据上,可能得到的知识和规则是不一样的,那么做出的审计决策也会有所不同。所以,审计人员要明确自己需要什么样的结果,从而选择最相近的算法进行分析,产生结果只是第一步,让计算机结果运用到审计延伸中,将结果变得有价值,才是我们需要的。