丁洪麗
摘要:針對只利用單數(shù)據(jù)源進(jìn)行關(guān)系人發(fā)現(xiàn)不準(zhǔn)確、不完備的問題,研究利用多維數(shù)據(jù)的關(guān)系人分析方法。針對航班和火車出行數(shù)據(jù),采用同行規(guī)律挖掘算法得到與目標(biāo)人物一起出行的同行關(guān)系人;針對話單數(shù)據(jù),采用通聯(lián)規(guī)律統(tǒng)計算法得到與目標(biāo)人物有通話的通聯(lián)關(guān)系人;針對出行數(shù)據(jù)和話單數(shù)據(jù),采用會面關(guān)系人分析方法得到與目標(biāo)人物有會面的會面關(guān)系人;根據(jù)重點(diǎn)關(guān)系人發(fā)現(xiàn)規(guī)則從上述關(guān)系人得到重點(diǎn)關(guān)系人。實驗結(jié)果表明,本文提出的方法在關(guān)系人分析方面是十分有效的。
關(guān)鍵詞:同行規(guī)律挖掘;通聯(lián)規(guī)律統(tǒng)計;會面關(guān)系人分析;重點(diǎn)關(guān)系人分析
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2020)01-0001-04
1概述
關(guān)系人分析主要是從大量數(shù)據(jù)中挖掘出潛在的、不為人所知的、人與人之間的各種關(guān)系。隨著現(xiàn)有數(shù)據(jù)獲取技術(shù)手段的提高,獲取的各種人類行為數(shù)據(jù)量劇增,話單數(shù)據(jù)、出行數(shù)據(jù)是其中的典型代表,其中潛藏著各種類型的人物關(guān)系,這些人物關(guān)系可支撐嫌疑人查找、團(tuán)伙發(fā)現(xiàn)、商品推銷等應(yīng)用,如何從這些海量數(shù)據(jù)中挖掘人物關(guān)系及其類型變得尤為重要。
傳統(tǒng)方法在進(jìn)行關(guān)系人分析時僅采用單一數(shù)據(jù)源進(jìn)行處理,只利用話單數(shù)據(jù)進(jìn)行重點(diǎn)關(guān)系人發(fā)現(xiàn),其缺點(diǎn)是容易出現(xiàn)漏判和誤判情況。
利用話單數(shù)據(jù)進(jìn)行關(guān)系人分析是比較常用的方法,一般將通話次數(shù)多、通話時間長的人員列為重點(diǎn)關(guān)系人。然而現(xiàn)在網(wǎng)購已經(jīng)成了大家的習(xí)慣,隨之而來的快遞員、外賣送餐員越來越多。如果目標(biāo)人物經(jīng)常網(wǎng)購買東西或者定外賣,那么其與快遞員或者外賣送餐員的通話次數(shù)就很多,利用傳統(tǒng)分析方法,很容易將快遞員或者外賣送餐員等日常關(guān)系人判斷為目標(biāo)人物的重點(diǎn)關(guān)系人,產(chǎn)生誤判;另外還存在某些重點(diǎn)關(guān)系人和目標(biāo)人物通話次數(shù)并不多的情況,利用傳統(tǒng)分析方法,這些重點(diǎn)關(guān)系人就被過濾掉了,產(chǎn)生漏判。所以話單數(shù)據(jù)僅適合發(fā)現(xiàn)通聯(lián)度高的關(guān)系人。
利用航班和火車等出行數(shù)據(jù)也可以進(jìn)行重點(diǎn)關(guān)系人發(fā)現(xiàn),但也可能存在誤判和漏判的情況。經(jīng)常一起出行的人大多可認(rèn)為是重點(diǎn)關(guān)系人,但也存在兩個沒有任何關(guān)系的出差達(dá)人經(jīng)常一起出行的情況;另外不是所有的關(guān)系人都會經(jīng)常一起出行。所以出行數(shù)據(jù)僅適合發(fā)現(xiàn)同行度高的關(guān)系人。
針對上述問題,我們提出一種基于多維數(shù)據(jù)的關(guān)系人分析方法。本方法采用多數(shù)據(jù)源進(jìn)行關(guān)系人發(fā)現(xiàn),將處理過程進(jìn)行融合,判定結(jié)果既互相補(bǔ)充又交叉驗證,減少了漏判和誤判的情況。
基于多維數(shù)據(jù)的關(guān)系人分析方法流程示意圖如圖1所示。
2關(guān)系人分析方法研究
2.1同行關(guān)系人分析
針對航班和火車出行數(shù)據(jù),采用同行規(guī)律挖掘算法挖掘與目標(biāo)人物姓名一起出現(xiàn)的頻繁項目2一項集得到與目標(biāo)人物一起出行的同行關(guān)系人列表。同行關(guān)系人列表項包括目標(biāo)人物姓名、目標(biāo)人物證件號碼、同行關(guān)系人姓名、同行關(guān)系人證件號碼和同行次數(shù)。
同行規(guī)律挖掘算法(cRM,Co-occurrence Rule Mining)流程圖如圖2所示,具體為:
相關(guān)概念如下:
·k-項集:如果事件A中包含k個元素,那么稱這個事件A為k項集。
·支持度:指事件A和事件B同時發(fā)生的概率。
·最小支持度:由用戶定義的衡量支持度的一個閾值,表示項目集在統(tǒng)計意義上的最低重要性。
·頻繁項目集:事件A滿足最小支持度閾值的事件。
CRM的實現(xiàn)流程如下:
a]CRM預(yù)讀數(shù)據(jù),對出行數(shù)據(jù)中的旅客姓名進(jìn)行排序。
b)排序后,CRM將掃描一遍整個數(shù)據(jù)集,生成一個只包含一個項目的項集。計算在事務(wù)集合中的支持度,并據(jù)此得到初始的單項目頻繁項目集F.(即卜項集),隨后的每一輪搜索(假設(shè)接下來進(jìn)行第k輪搜索1都分為3步:
1)將算法第(k-1)輪搜索生成的頻繁項目集集合作為種子集合產(chǎn)生候選項集集合Ck;
2)掃描整個事務(wù)數(shù)據(jù)庫,計算候選項集集合Ck中每個候選項集的支持度;
3)本輪搜索的最后,算法計算出候選項集集合Ck中每個候選項集的支持度,并將符合最小支持度要求的候選項集加入k-項集Fk。
值得注意的是,第b)步中1)由合并和剪枝兩步完成:
1)合并:將兩個(k-1)一頻繁項目集合并來產(chǎn)生一個可能的k-候選項集c。兩個頻繁項目集的前k-2個項目都相同,只有最后一個項目不同,則該候選項集被加入候選項集集合Ck中。
21剪枝:判斷合并步中得到的候選項集集合中的候選項集c的所有(k-1)一子集是否都在(k-1)一項集Fk-1中,若其中任何一個不在(k-1)一項集中,則c必然不是頻繁項目集,則將c從候選集Ck中刪除。
同時,在第二步的整個計算過程中,并不需要將整個數(shù)據(jù)集加載入內(nèi)存,只需要在內(nèi)存中保留一條事務(wù)記錄,這一特點(diǎn)使得CRM可以用于處理非常巨大的數(shù)據(jù)集。算法僅需對數(shù)據(jù)集掃描K次,K是最大項集的大小,在本文中,K=2。
針對時間效率這一挑戰(zhàn),為了確保頻繁項目集生成的高效性,本算法首先對航班和火車出行數(shù)據(jù)中的旅客姓名進(jìn)行排序,同時,本算法采用逐級搜索,所以很方便就能夠在某一輪搜索完成后就停止。這一點(diǎn)在實際應(yīng)用中很重要,因為很多情況下過長的頻繁項目集或規(guī)則并無實際應(yīng)用,無須將它們找出。
2.2通聯(lián)關(guān)系人分析
針對話單數(shù)據(jù),采用通聯(lián)規(guī)律統(tǒng)計算法得到與目標(biāo)人物有通話的通聯(lián)關(guān)系人列表。通聯(lián)規(guī)律統(tǒng)計算法包括通聯(lián)頻次統(tǒng)計和通聯(lián)時長統(tǒng)計。如圖3所示,通聯(lián)頻次統(tǒng)計模塊查詢話單數(shù)據(jù)得到目標(biāo)人物的全部通話記錄,遍歷全部通話記錄,統(tǒng)計所有對端號碼的通聯(lián)頻次,通聯(lián)頻次降序排列,得到通聯(lián)關(guān)系人列表1。如圖4所示。通聯(lián)時長統(tǒng)計模塊查詢話單數(shù)據(jù)得到目標(biāo)人物的全部通話記錄,遍歷全部通話記錄,統(tǒng)計所有對端號碼的通聯(lián)時長,通聯(lián)時長降序排列,得到通聯(lián)關(guān)系人列表2。通聯(lián)關(guān)系人列表項包括目標(biāo)人物姓名、目標(biāo)人物證件號碼、目標(biāo)人物電話號碼、通聯(lián)關(guān)系人姓名、通聯(lián)關(guān)系人證件號碼、通聯(lián)關(guān)系人電話號碼、通聯(lián)頻7欠/通聯(lián)時長。
2.3會面關(guān)系人分析
針對出行數(shù)據(jù)和話單數(shù)據(jù)中的位置信息,利用會面規(guī)則得到與目標(biāo)人物有會面行為的會面關(guān)系人列表。會面關(guān)系人列表項包括目標(biāo)人物姓名、目標(biāo)人物證件號碼、會面關(guān)系人姓名、會面關(guān)系人證件號碼和會面次數(shù)。
以下會面規(guī)則滿足任意一條,即可判定分析對象和目標(biāo)人物有會面行為。
會面規(guī)則1:分析對象在目標(biāo)人物的停留地點(diǎn)范圍內(nèi)同時出現(xiàn)過且出現(xiàn)時間≥CXSJ分鐘;分析對象至少屬于同行關(guān)系人列表或者通聯(lián)關(guān)系人列表之一。
會面規(guī)則2:分析對象與目標(biāo)人物在活動路線上同時出現(xiàn)過且并行時間≥BXSJ分鐘;分析對象至少屬于同行關(guān)系人列表或者通聯(lián)關(guān)系人列表之一。
其中CXSJ、BXSJ可根據(jù)需要進(jìn)行設(shè)置。
會面關(guān)系人分析方法流程圖如圖5所示。會面關(guān)系人分析模塊遍歷出行數(shù)據(jù)和話單數(shù)據(jù)中的位置信息時空序列,11查找與目標(biāo)人物在停留地點(diǎn)同時出現(xiàn)的人,判定出現(xiàn)時間是否≥CXSJ分鐘,判斷是否屬于同行關(guān)系人或通聯(lián)關(guān)系人,得到滿足會面規(guī)則1的會面關(guān)系人;21查找與目標(biāo)人物在活動路線上并行出現(xiàn)的人,判定并行時間是否≥BXSJ分鐘,判斷是否屬于同行關(guān)系人或通聯(lián)關(guān)系人,得到滿足會面規(guī)則2的會面關(guān)系人;3)去除重復(fù)的關(guān)系人,得到最終的會面關(guān)系人。
2.4重點(diǎn)關(guān)系人分析
針對同行關(guān)系人列表、通聯(lián)關(guān)系人列表和會面關(guān)系人列表中的數(shù)據(jù),利用重點(diǎn)關(guān)系人發(fā)現(xiàn)規(guī)則判定得到重點(diǎn)關(guān)系人列表,重點(diǎn)關(guān)系人列表項包括目標(biāo)人物姓名、目標(biāo)人物證件號碼、目標(biāo)人物電話號碼、重點(diǎn)關(guān)系人姓名、重點(diǎn)關(guān)系人證件號碼、重點(diǎn)關(guān)系人電話號碼。
以下重點(diǎn)關(guān)系人判定規(guī)則滿足任意一條,即可判定分析對象為目標(biāo)人物的重點(diǎn)關(guān)系人。
規(guī)則1:關(guān)系人同時存在于同行關(guān)系人列表、通聯(lián)關(guān)系人列表和會面關(guān)系人列表,將其加入重點(diǎn)關(guān)系人列表;
規(guī)則2:關(guān)系人同時存在于同行關(guān)系人列表、通聯(lián)關(guān)系人列表和會面關(guān)系人列表中的任意兩個表中,將其加入重點(diǎn)關(guān)系人列表。
規(guī)則3:關(guān)系人只存在于同行關(guān)系人列表,同行次數(shù)排序前10,將其加入重點(diǎn)關(guān)系人列表。
規(guī)則4:關(guān)系人存在于通聯(lián)關(guān)系人列表,通聯(lián)頻7欠/通聯(lián)時長排序前10,將其加入重點(diǎn)通聯(lián)關(guān)系人列表。
規(guī)則5:關(guān)系人存在于會面關(guān)系人列表,會面次數(shù)大于2,將其加入重點(diǎn)關(guān)系人列表。
規(guī)則6:關(guān)系人只存在于通聯(lián)關(guān)系人列表,通聯(lián)頻次或通聯(lián)時長排序前10,但是目標(biāo)人物與此關(guān)系人存在如下通聯(lián)規(guī)律:通話時間點(diǎn)規(guī)律經(jīng)常在中午11:00-13:00期間,通話位置在同一基站位置內(nèi),且通話前后目標(biāo)人物位置相對固定,但關(guān)系人位置在不停變化。此關(guān)系人疑似外賣送餐員,可將此關(guān)系人從重點(diǎn)關(guān)系人列表移除。
通話時間點(diǎn)規(guī)律具體為:
將00:00-24:00區(qū)間分成若干個時間段,將用戶號碼每次通話的事件發(fā)生日期時間映射到每個時間段、統(tǒng)計每個時間段的通話次數(shù),得出通話時間點(diǎn)規(guī)律。
進(jìn)一步的,經(jīng)過以上規(guī)則得到的重點(diǎn)關(guān)系人列表需要根據(jù)證件號碼進(jìn)行去重處理。
3實驗結(jié)果及分析
針對出行數(shù)據(jù)和話單數(shù)據(jù),本文搭建了一個關(guān)系人分析演示系統(tǒng)。演示系統(tǒng)采用基于松耦合架構(gòu)進(jìn)行設(shè)計的B/S架構(gòu),應(yīng)用服務(wù)開發(fā)基于J2EE的設(shè)計開發(fā)規(guī)范,采用Java語言開發(fā),前端采用JavaScfipt開發(fā),數(shù)據(jù)庫方面采用impala數(shù)據(jù)庫。把出行數(shù)據(jù)和話單數(shù)據(jù)提交給演示系統(tǒng)進(jìn)行關(guān)系人分析。針對分析對象ABRAMOWICZORYSHLOMO,同行關(guān)系人發(fā)現(xiàn)模塊的結(jié)果如圖6所示。通聯(lián)關(guān)系人發(fā)現(xiàn)模塊的結(jié)果如圖7所示。會面關(guān)系人發(fā)現(xiàn)模塊的結(jié)果如圖8所示。系統(tǒng)最終給出重點(diǎn)關(guān)系人列表,并以關(guān)系網(wǎng)絡(luò)圖的形式展示目標(biāo)人物的關(guān)系網(wǎng)絡(luò),如圖9所示。經(jīng)過對比分析,系統(tǒng)給出的結(jié)果相比采用單一數(shù)據(jù)源進(jìn)行重點(diǎn)關(guān)系人發(fā)現(xiàn)得到的結(jié)果更加準(zhǔn)確,完備。
4結(jié)束語
本文提出的基于多維數(shù)據(jù)的關(guān)系人分析方法采用多數(shù)據(jù)源進(jìn)行關(guān)系人發(fā)現(xiàn),將處理過程進(jìn)行融合,判定結(jié)果既互相補(bǔ)充又交叉驗證,減少了漏判和誤判的情況,解決了只利用單一的數(shù)據(jù)源進(jìn)行關(guān)系人發(fā)現(xiàn)不準(zhǔn)確、不完備的問題。