Y,表示X事件發(fā)生后,Y事件會有一定概率發(fā)生,其中X事件,Y事件可定義為集合,如X表示{x1,x2,"/>
太自紅
在審計(jì)數(shù)據(jù)分析中,當(dāng)處理一些關(guān)系復(fù)雜模糊問題時,使用關(guān)系性數(shù)據(jù)庫比對難于到達(dá)目標(biāo),借助數(shù)據(jù)挖掘工具能很好解決此類問題,尤其是關(guān)聯(lián)規(guī)則算法,很多審計(jì)場景都很適用。本文將結(jié)合審計(jì)實(shí)例,探討下關(guān)聯(lián)規(guī)則算法在審計(jì)數(shù)據(jù)分析中的運(yùn)用。
一、關(guān)聯(lián)規(guī)則算法概述及模型抽象
關(guān)聯(lián)關(guān)系反映事件間依賴關(guān)聯(lián)關(guān)系,這種關(guān)系基于數(shù)據(jù)統(tǒng)計(jì)描述認(rèn)定,與關(guān)系數(shù)據(jù)庫中表間大于等于等邏輯關(guān)系不同,他用統(tǒng)計(jì)結(jié)果描述事件關(guān)系,形如:X->Y,表示X事件發(fā)生后,Y事件會有一定概率發(fā)生,其中X事件,Y事件可定義為集合,如X表示{x1,x2,x3}的集合,Y表示{y1,y2}的集合,則X->Y表示x1,x2,x3同時發(fā)生后,y1,y2同時發(fā)生有一定概率,{x1,x2,x3}、{y1,y2}都稱為項(xiàng)集,概率是由發(fā)生事件明細(xì)數(shù)據(jù)統(tǒng)計(jì)而來,關(guān)聯(lián)規(guī)則目的在于在一個數(shù)據(jù)集中找出各項(xiàng)集之間的關(guān)聯(lián)關(guān)系。
二、關(guān)聯(lián)規(guī)則算法在審計(jì)分析中的場景
在審計(jì)工作中尋找事件關(guān)聯(lián)關(guān)系的場景很多,如在工程招投標(biāo)審計(jì)中,審查投標(biāo)單位是否內(nèi)部關(guān)聯(lián)對工程項(xiàng)目圍標(biāo)操作,通過分析項(xiàng)目投標(biāo)記錄事件,發(fā)現(xiàn)投標(biāo)單位間關(guān)聯(lián)程度,當(dāng)多個單位在多次投標(biāo)中都同時出現(xiàn)時,我們視為非偶然事件,通過計(jì)算這些事件在總樣本中的概率,把高概率事件作為審計(jì)關(guān)注重點(diǎn)。
上述問題的復(fù)雜性在于多個單位的中“多”和多次中的“多”,多個單位是指單位不同形式組合,如在所有投標(biāo)事件中,出現(xiàn)了N家單位,如果設(shè)定是兩家以上單位組合才有意義,則首先要形成C種組合可能,繼而在這種組合上做出次數(shù)統(tǒng)計(jì)。使用sql表間聯(lián)接完成此種組合十分復(fù)雜,集合{A,B,C}和集合{A,C,B}代表的同一集合,在sql中難于實(shí)現(xiàn)和區(qū)分,無法繼續(xù)頻數(shù)統(tǒng)計(jì)。而使用關(guān)聯(lián)規(guī)則算法工具,只需給出閾值,算法能自動迭代檢索所有投標(biāo)事件,根據(jù)設(shè)定的閾值(至少多少家投標(biāo)單位,至少多少次重合等),形成投標(biāo)事件的頻繁項(xiàng)集(單位組合),找出滿足戶最小信任度的規(guī)則(次數(shù)統(tǒng)計(jì))的關(guān)聯(lián)關(guān)系。
類似審計(jì)思路有醫(yī)保審計(jì)結(jié)伴刷卡住院,通過分析醫(yī)保刷卡記錄,尋找多個患者多次同時住院刷醫(yī)保卡,將這種非偶然事件作為審計(jì)重點(diǎn)關(guān)注,審計(jì)是否存在醫(yī)院辦理假住院,集中刷醫(yī)保卡騙取醫(yī)?,F(xiàn)象;還有在財(cái)政惠農(nóng)補(bǔ)貼審計(jì)中,可分析惠農(nóng)補(bǔ)貼卡結(jié)伴刷卡取款現(xiàn)象,通過尋找多張不同用戶卡多次同時取款的非偶然行為,推斷惠農(nóng)銀行卡可能集中在某一個人手中,進(jìn)而發(fā)現(xiàn)涉嫌侵占惠農(nóng)補(bǔ)貼的問題。
三、使用sqlserver數(shù)據(jù)挖掘工具做關(guān)聯(lián)規(guī)則分析
1.挖掘數(shù)據(jù)的準(zhǔn)備。關(guān)聯(lián)規(guī)則算法主要用到事例表和事例嵌套表,事例表反應(yīng)發(fā)生的每次事件,事例嵌套表反應(yīng)每次事件中參與者,事例表中的事件ID是事例嵌套表的外鍵。如工程招投標(biāo)圍標(biāo)關(guān)聯(lián)管理規(guī)則分析,事例表就是每個投標(biāo)事件,可用標(biāo)段名稱作為事例表主鍵,嵌套表為參與每個事例的投標(biāo)公司,在惠農(nóng)補(bǔ)貼卡結(jié)伴刷卡的關(guān)聯(lián)規(guī)則分析中,定義某個時間段在某個ATM機(jī)上取款作為事例,事例嵌套表則為發(fā)生這種行為的卡用戶。下圖為工程投標(biāo)關(guān)聯(lián)規(guī)則事例表和事例嵌套表的結(jié)構(gòu)。
2.模型參數(shù)設(shè)定。關(guān)聯(lián)規(guī)則算法由于運(yùn)算量大,因此需要根據(jù)業(yè)務(wù)實(shí)際需求配置不同參數(shù),提供的參數(shù)有最大項(xiàng)集允許生成數(shù)(maximum_itemset_count),用于限制項(xiàng)集的最大迭代、單個項(xiàng)集允許最大項(xiàng)數(shù)(maximum_itemset_size)、項(xiàng)集最大事例數(shù)(maximum_support),關(guān)聯(lián)規(guī)則重要性閾值(minimum_importance)、單個項(xiàng)集最小項(xiàng)數(shù)(minimu_itemset
_size),關(guān)聯(lián)規(guī)則最小概率(minimum_probablility),項(xiàng)集最小事例數(shù)(minimu_support),項(xiàng)集出現(xiàn)重合的最小次數(shù),當(dāng)滿足時產(chǎn)生規(guī)則。以項(xiàng)目招投標(biāo)的關(guān)聯(lián)規(guī)則分析為例,要把至少3家單位超過5次以上同時投標(biāo)情況作為審計(jì)重點(diǎn)關(guān)注,考慮運(yùn)算量和實(shí)際需要,實(shí)際中只需要挖掘出一定區(qū)間就能說明問題,可對8家以上同時或超過10次以上同時投標(biāo)的情況不繼續(xù)運(yùn)算,因此把參數(shù)設(shè)置成minimu_itemset_size=3;minimu_support=5;maximum_itemset_size=8;maximum_support=10。
3.模型分析結(jié)果使用,挖掘模型查看器中清晰表達(dá)出各家公司間的關(guān)聯(lián)關(guān)系,如圖2的依賴關(guān)系網(wǎng)中,可以看到不同公司關(guān)聯(lián)關(guān)系集合,把每組集合作為審計(jì)重點(diǎn),進(jìn)一步調(diào)查是否有關(guān)聯(lián)關(guān)系參與圍標(biāo)串標(biāo)。
本篇介紹了關(guān)聯(lián)規(guī)則算法的一些基本概念和思想,并以工程招投標(biāo)圍標(biāo)審計(jì)為例,使用sqlserver數(shù)據(jù)挖掘工具中做了實(shí)例,探討了關(guān)聯(lián)規(guī)則算法在審計(jì)數(shù)據(jù)分析中的運(yùn)用。在審計(jì)實(shí)踐中,通過對隨機(jī)事例的非偶然假設(shè),使用關(guān)聯(lián)規(guī)則算法分析事例主體或客體間的關(guān)聯(lián)關(guān)系,有利于從大量事例中發(fā)現(xiàn)人為違規(guī)操作的問題,審計(jì)數(shù)據(jù)分析工作者借助數(shù)據(jù)挖掘工具,只需做出模型抽象和數(shù)據(jù)準(zhǔn)備就能高效實(shí)現(xiàn)這一目標(biāo)。
(作者單位:江西省審計(jì)廳)