一种基于多阶段MapReduce模型的纳税人偷漏税嫌疑群组检测方法_6

文档序号:9811173阅读:来源:国知局
存在出度不为0的节点,若存 在,转Step5.4,若不存在,则输出patternTree(i),存入模式树列表patternTreeList中; Step5.4:遍历subgra地(i)和1:rade(i),判断是否存在W运些出度不为0的节点为起始 节点的边,若存在,则将运些边存入集合arcs ( i )中,转steps . 5,若不存在,则输出 patternTree。),存入模式树列表patternTreeList中; Step5.5:将arcs (i)中的边的终止节点存入集合endNodes (i)中,并将arcs (i)中的边 存入patternTreeQ)中,然后令startNodesQ) = endNodes(i),并清空arcsQ)和endNodes (i),转Step5.4; ②生成模式库 Step 1 :Maper2端将第1个MapReduce过程输出的模式树列表patternTreeList按照 化doop分布式文件系统的块大小划分为M2个分片,每个分片包含的模式树的个数为1121 = 化i/M2,其中N21为patternTreeList中的模式树的总数,M2为Maper2任务的个数,然后,作业 调度器化b2将每个分片分别交给其对应的一个Maper2任务进行处理; Step2:调用Maper2任务的方法函数从每个模式树的根节点rooti开始遍历,遍历历经节 点Ar,若遇到出度为0的节点Ar,则生成的模式(rooti,Ai,…,Ar),用old化tternBasel表示, 并形成键/值对<r〇〇ti,ol沁atternBasel〉,若首次到达某条交易边的终止节点V,则生成模 式(;rooti,Ai,…,Ar) 一 V,用 oldPatternBaseS 表示,并形成键 /值对〈rooti, oldPatternBaseS〉,将上述两种键/值对均存入集合oldKeyValuesList中, 〇1服eyValuesList暂时放在本地的内存缓冲区,若缓冲区存满,则将缓冲区的数据写入本 地创建的溢写文件中; Step3:对于oWKe^aluesList中的所有键/值对,首先在本地进行合并,并按键的值进 行排序,然后分区类hditioner2将oWKe^aluesList中的键/值对分为R2个分区,每个分 区包含的键/值对的个数为Π22 =化2/R2,其中化劝oWKe^aluesList中的键/值对的总数,R2 为Reducer 2任务的个数,每个分区分别交给其对应的一个Reducer 2任务进行处理; Step4: Reducer2任务接收Maper2任务传来的有序数据并顺序读取,把具有相同键的 键/值对合并为一类,形成新的键/值对<r〇〇ti,oldPatte;rnBaseList〉,其中, oldPatternBaseList为同一个键所对应的模式的集合,合并后的值传给Reducer2任务的方 法函数,执行对应的算法; 516口5:调用1?6(111。6'2任务的方法函数遍历所有输入的<1'〇〇1:1,〇1(1化1:1611113日361^131:〉, 对于 oldPatternBaseList 中的每个模式,包括 oldPatternBasel 和oldPatternBaseS,删掉 其中的根节点rooti,生成模式(Ai,…,Ar)和(Ai,…,Ar)一V,分别用patternBasel与 patternBaseS表示,均存入模式列表patternBaseList中; ③生成键值对列表 Step 1 :Maper3端将第2个MapReduce过程输出的模式列表patternBaseList按照化doop 分布式文件系统的块大小划分为M3个分片,每个分片包含的模式的个数为Π31 = Ν3ι/Μ3,其中 化1为patternBaseList中的模式的总数,M3为Maper3任务的个数,然后,作业调度器化b3将 每个分片分别交给其对应的一个Maper3任务进行处理; Step2:调用Maper3任务的方法函数提取每个模式patternBase的前件中的所有元素 (Al,…,Ar)及后件元素 v分别作为键,生成Nl个键/值对<Al,patte;rnBase〉,···,<Ar, patternBase〉,<v, patternBase〉,其中化为patternBase中的节点个数,将运些键/值对存 入集合ke^aluesList3中,k巧化luesList3暂时放在本地的内存缓冲区,若缓冲区存满,贝U 将缓冲区的数据写入本地创建的溢写文件中; Step3:对于k巧ValuesLis口中的所有键/值对,首先在本地进行合并,并按键的值进行 排序,然后分区类hditioner3将k巧ValuesLis口中的键/值对分为R3个分区,每个分区包 含的键/值对的个数为ri32 = N32/R3,其中化2为ke^aluesList3中的键/值对的总数,R3为 Reducer 3任务的个数,每个分区分别交给其对应的一个Reducer 3任务进行处理; Step4:Reducer3任务接收Maper3任务传来的有序数据并顺序读取,将具有相同键W的 键/值对合并为一类,形成新的键/值对<w,newPatte;rnBaseList〉,其中, newPatternBaseList为同一个键所对应的所有值的集合,合并后的值传给Reducer3任务的 方法函数,执行对应的算法; 516口5:调用1?日山1。日^任务的方法函数遍历所有输入的<'\¥,]1日*化1:1日11113日3日1^131:〉,对于 newF*atte;rnBaseList中的每个模式patternBase,若w为其前件元素,则将patternBase放入 前件列表1'_9日1:1日1']113日3日1^131:中;若¥为其后件元素,则将9日1:1日1']113日3日放入后件列表¥_ patternBaseList中,最后,对每一个键w生成键/值对<'\¥,1'_9日1:1日1']113日3日^31:〉或<'\¥,¥_ P曰tternB曰seList〉; ④利用键值对列表进行前件匹配 Stepl:Maper4端将第3个MapReduce过程的输出按照化doop分布式文件系统的块大小 划分为M4个分片,每个分片包含的模式的个数为n" = N"/M4,其中N"为输入的所有键/值对 的个数,M4为Maper4任务的个数,然后,作业调度器化b4将每个分片分别交给其对应的一个 Maper4任务进行处理; Step2:对输入的每一个键W调用Maper4任务的方法函数,首先判断其对应的前件列表 r_patte;rnBaseList和后件列表v_patte;rnBaseList是否均存在,若均存在,则每次从;r_ patte;rnBaseLisdPlv_patte;rnBaseList 中各取出一个模式 patternBasel 和 patternBaseS 进行匹配,直到所有组合匹配完毕;反之,则不考虑该键/值对;其中,上述匹配原则为:若对 应的两个模式patternBasel和patternBaseS存在相同的前件元素,则匹配成功,将 patternBasel和patternBaseS放入模式二元组(patternBasel ,patte;rnBase2)中,并生成 键/值对<w, (patternBasel ,口日1:1611113日362)〉,将运些键/值对存入集合46八日11163^314中, keyValuesList4暂时放在本地的内存缓冲区,若缓冲区存满,则将缓冲区的数据写入本地 创建的溢写文件中; Step3:对于k巧ValuesList4中的所有键/值对,首先在本地进行合并,并按键的值进行 排序,然后分区类hditioner4将k巧ValuesList4中的键/值对分为R4个分区,每个分区包 含的键/值对的个数为ru2 = N42/R4,其中N42为ke^aluesList4中的键/值对的总数,R4为 Reducer4任务的个数,每个分区分别交给其对应的一个Reducer4任务进行处理; Step4: Reducer4任务接收Maper4任务传来的有序数据并顺序读取,把具有相同键的 键/值对合并为一类,形成新的键/值对<w, patte;rnBaseF>ai;r〉,其中,patte;rnBaseF>ai;r为同 一个键所对应的所有模式二元组(patternBasel ,patte;rnBase2)的集合,合并后的值传给 Reducer4任务的方法函数,执行对应的算法; Step5:对输入<w,patte;rnBasePai;r〉调用Reducer4任务的方法函数,取出 patternBase化ir中的二元组(patternBasel, patternBaseS),找到patternBasel和 patternBaseS形成的弱连通子图,将其中包含的所有节点存入集合wccii中,然后将wccii 作为输出存入偷漏税嫌疑群组列表susGroups中,即susG;roups = {wccii |ii = l,2,…,p},其 中P表示弱连通子图的数量。2.根据权利要求1所述的一种基于多阶段MapReduce模型的纳税人偷漏税嫌疑群组检 测方法,其特征在于,基于着色图的纳税人利益关联网络的构建中Step2:利用上述6种同构 关系分别构建相关的同构关系网络,具体构造过程如下: Step2.1:对于企业C中的所有企业节点,在控股企业和被控股企业之间添加单向控股 边,形成企业控股关系网络IN-Net; Step2.2:对于企业C中的所有企业节点,在卖出企业和购入企业之间添加单向交易边 77?,形成交易关系网络TR-Net; Step2.3:对于法人代表L中的所有法人代表节点和企业C中的所有企业节点,若某个法 人代表节点和某个企业节点之间存在单向实际控制人关系,则添加单向实际控制人边?子, 形成实际巧制人关系网络化-Net; Step2.4:对于董事B中的所有董事节点和企业C中的所有企业节点,若某个董事节点和 某个企业节点之间存在单向控股关系,则添加单向控股边/;;/?,形成董事控股关系网络皿- Net; Step2.5:对于法人代表L中的所有法人代表节点,在存在亲属关系的两个法人代表节 点之间添加双向亲属关系边/'哀,形成亲属关系网络IR-Net; Step2.6:对于董事B中的所有董事节点,在存在互锁关系的两个董事节点之间添加双 向互锁关系边i,形成互锁关系网络IL-Net。3.根据权利要求1所述的一种基于多阶段MapReduce模型的纳税人偷漏税嫌疑群组检 测方法,其特征在于,基于强连通分量的纳税人利益关联网络的约减中的亲属关系聚合操 作、互锁关系聚合操作与利益控制关系聚合操作具体如下: a) 亲属关系聚合操作: 由于亲属关系网络强连通分量集合IR-Scc中的每个强连通分量中的法人代表节点之 间存在亲属关系,相应亲属关系边的颜色标记为?,则在网络STPIIN中,将每个强连通分 量所包含的多个法人代表节点聚合为一个新生法人代表聚合节点γ/1,并将该新生节点γ/1 的颜色标记为1/,同时,删除运些聚合的法人代表节点之间的亲属关系边;此外,重新构建 与运些聚合的法人代表节点均存在共同连接的企业节点和新生法人代表聚合节点v^i的 边,将原有连接强连通分量集合IR-Scc中的每个强连通分量的连接边重新连接到/1; b) 互锁关系聚合操作: 由于互锁关系网络强连通分量集合IL-Scc中的每个强连通分量中的董事节点之间存 在互锁关系边;I,则在网络STPIIN-I中,将每个强连通分量所包含的多个董事节点聚合为 一个新生董事聚合节点v\,并将该新生节点v\的颜色标记为B/,同时,删除运些聚合的董 事节点间的互锁关系边;此外,重新构建与运些聚合的董事节点均存在共同连接的企业节 点和新生董事聚合节点v\的边;在将原有连接强连通分量集合IL-Scc中的每个强连通分 量的连接边重新连接到v\的同时,若存在指向外部同一节点的不同边,则分别按照颜色聚 合为不同颜色的边,每种颜色只保留一条; C)利益控制关系聚合操作: 由于利益控制关系网络强连通分量集合IC-Scc中的每个强连通分量中的企业节点之 间存在利益控制关系边/^,则在网络STPIIN-II中,将每个强连通分量所包含的多个企业 节点聚合为一个新生企业聚合节点γ/。,并将该新生节点γ/。的颜色标记为(/,同时,删除运 些聚合的企业节点间的利益控制关系边;此外,重新构建与运些聚合的企业节点均存在共 同连接的其他节点和新生企业聚合节点γ/。的边;在将原有连接强连通分量集合IC-Scc中 的每个强连通分量的连接边重新连接到/。的同时,若存在指向外部同一节点的不同边,贝U 分别按照颜色聚合为不同颜色的边,每种颜色只保留一条。4.根据权利要求1所述的一种基于多阶段MapReduce模型的纳税人偷漏税嫌疑群组检 测方法,其特征在于,构建模式树中Step2中所述的计算subgra地(i)中的每个节点vm的入 度indegreem和出度outdegreem由W下MapReduce过程实现: Step2.1 :Mape;r/端把subgra地(i)按照Hadoop分布式文件系统的块大小划分为个分 片,每个分片包含的边的个数为rA = N/i/R/,其中沪1为subgraph(i)中的边的总数,]T为 Maper^任务的个数,然后,作业调度器化bl'将每个分片分别交给其对应的一个Maper^任务 进行处理; Step2.2:对分片中的每条边e = (vm,vn)调用Maper^任务的方法函数,得到入度为0、出 度为1的节点Vm,W及入度为1、出度为0的节点Vn,分别生成键/值对<Vm,0〉、<Vm,l〉,W及<Vn, 1〉、<¥。,0〉,将入度相关的键/值对<¥。,0〉和<¥。,1〉存入入度表1地巧¥曰11163^31中,将出度 相关的键/值对<乂。,1〉和<¥。,0〉存入出度表〇11证巧¥日11163^31中,1111(巧¥日11163^31和 outKeyValuesList暂时存放在本地的内存缓冲区,若缓冲区存满,则将缓冲区的数据写入 本地创建的溢写文件中; Step2.3:对于inKe}fValuesLi st和outKeyValuesList中的所有键/值对,首先在本地进 行合并,并按键的值进行排序,然后分区类Partitionei·/将inKeyValuesList和 outKeyValuesList中的键/值对分为R/个分区,每个分区包含的键/值对的个数为r/ 2 =妒2/ R',其中Ν' 2为inKe}fValuesList或outKe^aluesList中的键/值对的总数,R'为Reducer'任 务的个数,每个分区分别交给其对应的一个Reducer^任务进行处理; Step2.4: Reducer^任务接收Maper^任务传来的有序数据,顺序读取入度表与出度表中 的数据,并分别将入度表和出度表中具有相同键Vm的键/值对合并为一类,形成新的键/值 对<¥111, ¥111:[化131:〉和<¥111, VmOUl:List〉,其中,VminList 和VmOUtList 分别为同一个键 Vm 所对应 的所有入度和出度值的集合,合并后的值传给Reduced任务的方法函数,执行对应的算法; Step2.5:对同一个键Vm所对应的VminList和VmOutList调用Reducer'任务的方法函数, 分别将VminList和VmOutList中的所有值相加,得到节点Vm的入度indegreem和出度 outdegreem。
【专利摘要】本发明公开了一种基于多阶段MapReduce模型的纳税人偷漏税嫌疑群组检测方法,包括以下步骤:首先,提出了利用多网融合来构建基于着色图的纳税人利益关联网络的方法;其次,提出了基于强连通分量的纳税人利益关联网络的约减方法;然后,引入利益前件网络的概念,在利益前件网络中发现所有的极大弱连通子图,最后,利用多阶段MapReduce模型,对每个极大弱连通子图及其对应的交易边构建模式树,然后遍历模式树来生成模式库,进而对模式库中的模式进行两两匹配,找到所有符合匹配原则的模式对,最终生成所有的纳税人偷漏税嫌疑群组。其中,多阶段MapReduce模型由于采用分布式计算,能够极大地提高国家税务部门的嫌疑偷漏税分析效率,为国家挽回税务流失的损失。
【IPC分类】G06Q10/06, G06Q40/00, G06Q50/26
【公开号】CN105574649
【申请号】CN201510920257
【发明人】田锋, 乐佳, 齐天亮, 吴凡, 郑庆华, 马天, 姚昀东, 兰田
【申请人】西安交通大学
【公开日】2016年5月11日
【申请日】2015年12月10日
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1