
作者:小伍哥
來源:小伍哥聊風(fēng)控
關(guān)于圖的風(fēng)控應(yīng)用,之前的很多文章都是基于算法的,今天分享一篇基于圖進(jìn)行人工特征提取的欺詐檢測文章,這樣大部分人都能應(yīng)用上了,其中的特征提取方法和思想,值得我們探索和借鑒,可以作為無監(jiān)督的的指標(biāo)進(jìn)行監(jiān)控,也可以作為算法特征的輸入。本文內(nèi)容來自論文《SocialWatch: Detection of Online Service Abuse via Large-Scale Social Graphs》,地址:https://users.soe.ucsc.edu/~abadi/Papers/socialwatch.pdf
本文主要進(jìn)行的是兩類風(fēng)險(xiǎn)賬戶的檢測:黑產(chǎn)自己注冊的賬號+黑產(chǎn)盜號的賬號。在一些網(wǎng)絡(luò)在線服務(wù)中,黑產(chǎn)會使用這些控制的惡意賬號進(jìn)行一些惡意行為,這些賬號可能是黑產(chǎn)批量注冊的,也可能是盜號,因此需要有明顯的特征去區(qū)分惡意賬號和正常賬號。論文為了識別郵箱服務(wù)中的惡意賬號,提出來兩類特征:一類是基于圖的屬性統(tǒng)計(jì)指標(biāo),另一類是基于社交關(guān)系的特征(social affinity feature)。
我們可以從這篇文章中學(xué)到幾個點(diǎn):第一個是如何構(gòu)圖(文章中用的郵件,我們可以用電話、地址、點(diǎn)擊、設(shè)備、IP等),第二個是圖統(tǒng)計(jì)特征提,第三個是圖社交關(guān)系特征提取。
論文中根據(jù)郵件關(guān)系構(gòu)建了兩種不同類型的圖,頂點(diǎn)都是用戶,但是邊的構(gòu)造有所不同,示意圖如下。
1)發(fā)送郵件的有向圖Gd:如果用戶v1給v2發(fā)郵件,那么生成v1指向v2的邊,權(quán)重是發(fā)送的數(shù)量
2)用戶關(guān)系的無向圖Gu:如果用戶v1給v2發(fā)郵件>=2,同時v2給v1發(fā)郵件>=2,那么v1和v2之間會形成一條邊。
下圖為示意圖,第一個圖覆蓋比較廣,第二個條件的條件比較嚴(yán)格,通過要求邊緣的權(quán)重至少同時為2,可以消除因偶爾或意外電子郵件交換(例如,意外回復(fù)惡意帳戶)而導(dǎo)致的弱連接,圖會小很多,但是整個圖的靠靠性要強(qiáng)很多,可能很多人不知道結(jié)構(gòu)化的數(shù)據(jù)怎么構(gòu)建有向圖和無向圖,后面我會出個文章教大家怎么構(gòu)圖。
條件1圖:節(jié)點(diǎn)數(shù)為6.82億個,邊數(shù)57.45
條件2圖:節(jié)點(diǎn)個數(shù)2.55億個,邊數(shù)4.369
對于黑產(chǎn)自己的賬號,有兩個最顯著且易于計(jì)算的圖屬性,節(jié)點(diǎn)度 和 PageRank。度是一種能捕捉賬戶攻擊性的圖屬性,PageRank 是一種從全局層面計(jì)算整個圖上每個節(jié)點(diǎn)的權(quán)重的方法。接下來,我們將討論如何在社交環(huán)境中修改這兩個屬性以進(jìn)行檢測。
賬號回復(fù)率 = 回復(fù)該賬號郵件的賬號數(shù)/接收該賬號郵件的賬號數(shù)
惡意賬號出度大(發(fā)郵件給其他的賬號數(shù)量多),但回復(fù)率會比較低,通過簡單的統(tǒng)計(jì),可以找到一些明顯的惡意賬號。
PageRank算法是一種基于圖的傳播算法,一種簡單的想法是在有向圖Gd上使用PageRank,傳播善意分?jǐn)?shù)(goodness score),然而盡管惡意賬號的回復(fù)率比較低,但是由于發(fā)送的郵件數(shù)巨大,偶然性的回復(fù)會使得其善意分?jǐn)?shù)偏高,而一些不活躍的正常賬號善意分?jǐn)?shù)會比較低。
為了解決上述問題,論文提出來了兩處改進(jìn),一是修改邊的權(quán)重(考慮發(fā)送和回復(fù)比例),二是把原來網(wǎng)絡(luò)圖連接關(guān)系進(jìn)行反轉(zhuǎn)(入鏈變成出鏈,出鏈變成入鏈),傳播惡意分?jǐn)?shù)(badness score)。
下面舉一個簡單的例子:
假設(shè)一個正常賬號A發(fā)送給spammer的郵件數(shù)是1,而給其friend的郵件數(shù)是10。那么在傳播goodness score時,根據(jù)A發(fā)送郵件數(shù)作為傳播權(quán)重,傳給spammer的善意得分比較小。
將出入關(guān)系進(jìn)行反轉(zhuǎn),若spammer給A發(fā)送的郵件數(shù)是100,而friend給A發(fā)送的郵件數(shù)是10,根據(jù)公式:
w(A->spammer) = (101/2) /( 101/2+11/11+11/11) ) = 96.4%
w(A->friend) = (11/11) /( 101/2+11/11+11/11) ) = 1.8%
根據(jù)上述權(quán)重由A傳播惡意分?jǐn)?shù),傳給spammer的善意得分比較大。定義指標(biāo)badness_score/goodness_score,若指標(biāo)大于某閾值則認(rèn)為賬號是惡意的。
上面的計(jì)算不是很理解的同學(xué),可以看看這個文章,網(wǎng)頁排序算法PageRank:http://sparkandshine.net/webpages-ranking-algorithm-pagerank/
被盜的賬號相比于黑產(chǎn)自己注冊的賬號來講行為的噪音更大(被盜號賬戶,過去的行為都很正常,并沒有大規(guī)模的異常郵件行為),通過degree或者pagerank很難識別到,為了解決這個問題,作者從社交關(guān)系的角度出發(fā),定義了兩個 social affinity feature(社會親和力特征):Recipient connectivity(收件人連通性 )和 Social distance(社交距離),下面我們分別看看這兩個特征的具體含義。
1、 Recipient connectivity(收件人連通性 )
一個正常賬號 和 與其進(jìn)行郵件通訊的賬號往往處于同一個社區(qū),對于一個賬號v,從Gu中抽取頂點(diǎn)為接收到v郵件的賬號子圖Gu(v),通過連通圖聚類得到若干連通分量c1,c2,...,ck,這些連通圖分量的成員數(shù)至少為2,于是:對于節(jié)點(diǎn)v而言,刪除節(jié)點(diǎn)v得到以節(jié)點(diǎn)v為中心的一階的子圖,然后使用connected components 算法獲取k個聯(lián)通分量,顯然最小聯(lián)通分量包含兩個節(jié)點(diǎn)。
最后使用公式:Recipient connectivity(v) = 連通分量的賬號數(shù)之和/接收到v郵件的賬號數(shù)
我畫了個示意圖,如下所示,我們把定點(diǎn)V剔除后,剩下的圖,連通性各不相同,圖1就是比較異常的,只要定都發(fā)送,發(fā)送的各個點(diǎn)之間并沒有聯(lián)系,剔除后連同分量為0,而圖3,剔除后的三個賬戶,依然連通,所以連通分量為3。
這背后的直覺就是正常的賬戶和周圍人的聯(lián)系一般較為密切而極少與不認(rèn)識的人存在聯(lián)系,因此其 recipient connectivity 往往較高,而對于一個被劫持的正常賬戶,由于被劫持賬戶也是用來發(fā)廣告之類的(比如微博號、qq號,微信號被盜,會給關(guān)注的人發(fā)各種亂七八糟的私信),因此被劫持的賬戶一旦發(fā)生了這類行為,其recipient connectivity往往會發(fā)生變化,從而變得較低。
Recipient connectivity的一個問題是兩個用戶在郵件網(wǎng)絡(luò)中沒有聯(lián)系,不代表其在真實(shí)世界中也沒有聯(lián)系。
注意:無向圖G的極大連通子圖稱為G的連通分量( Connected Component),任何連通圖的連通分量只有一個,即是其自身,非連通的無向圖有多個連通分量。求圖的連通分量的目的,是為了確定從圖中的一個頂點(diǎn)是否能到達(dá)圖中的另一個頂點(diǎn),也就是說,圖中任意兩個頂點(diǎn)之間是否有路徑可達(dá)。這個問題從圖上可以直觀地看出答案,然而,一旦把圖存入計(jì)算機(jī)中,答案就不大清楚了。
2、Social distance(收件人社交距離)
對于一個賬號v,從子圖Gu中剔除賬號v和相關(guān)的邊,于是:Social distance(v)= 接收到v郵件的賬號之間的平均最短距離
However, the social-distance fea-ture l(v) requires computing shortest-path distances on the largegraph Gu for all user pairs in R(v)
這個特征怎么理解?其背后的直覺是復(fù)雜網(wǎng)絡(luò)中的“小世界”,正常賬戶往往在一個社交圈子里,大部分人彼此認(rèn)識,因此對于正常用戶的通過郵件構(gòu)建起來的社交圈子而言,其social distance比較短,而對于被劫持的正常賬戶而言,群體中的其他人彼此并不認(rèn)識,其social distance比較長。
有了這些相關(guān)特征后,如果有已知的被盜賬號,那么通過各種算法就可以構(gòu)建一個分類任務(wù)了,從而識別其他的被盜賬號,或者直接用規(guī)則,識別被盜賬號。
收獲就這兩個社交親和力特征,用來幫助處理盜號問題,沒標(biāo)簽就做規(guī)則,有標(biāo)簽就作為特征train 模型。在上述缺失觀測的情況下,由最短路徑距離定義的社會距離是完整圖上真實(shí)社會距離的上限近似值。
通過上面的圖,我們可以發(fā)現(xiàn)一個理論,六度分隔理論,哈佛大學(xué)心理學(xué)教授斯坦利·米爾格拉姆于1967年根據(jù)這個概念做過一次連鎖信實(shí)驗(yàn),嘗試證明平均只需要6步就可以聯(lián)系任何兩個互不相識的人。后世的人們將這個理論稱作是“六度空間理論”或“六度分隔理論”。我們的計(jì)算中,正常用戶的距離,均值恰好是6左右。
文章就寫到這里了,文章雖然簡單,但是里面的細(xì)節(jié)還是非常多的,大家可以結(jié)合自己的業(yè)務(wù),尋找不同的關(guān)系圖,然后來研究里面提到的指標(biāo)。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
LSTM 模型輸入長度選擇技巧:提升序列建模效能的關(guān)鍵? 在循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)家族中,長短期記憶網(wǎng)絡(luò)(LSTM)憑借其解決長序列 ...
2025-07-11CDA 數(shù)據(jù)分析師報(bào)考條件詳解與準(zhǔn)備指南? ? 在數(shù)據(jù)驅(qū)動決策的時代浪潮下,CDA 數(shù)據(jù)分析師認(rèn)證愈發(fā)受到矚目,成為眾多有志投身數(shù) ...
2025-07-11數(shù)據(jù)透視表中兩列相乘合計(jì)的實(shí)用指南? 在數(shù)據(jù)分析的日常工作中,數(shù)據(jù)透視表憑借其強(qiáng)大的數(shù)據(jù)匯總和分析功能,成為了 Excel 用戶 ...
2025-07-11尊敬的考生: 您好! 我們誠摯通知您,CDA Level I和 Level II考試大綱將于 2025年7月25日 實(shí)施重大更新。 此次更新旨在確保認(rèn) ...
2025-07-10BI 大數(shù)據(jù)分析師:連接數(shù)據(jù)與業(yè)務(wù)的價(jià)值轉(zhuǎn)化者? ? 在大數(shù)據(jù)與商業(yè)智能(Business Intelligence,簡稱 BI)深度融合的時代,BI ...
2025-07-10SQL 在預(yù)測分析中的應(yīng)用:從數(shù)據(jù)查詢到趨勢預(yù)判? ? 在數(shù)據(jù)驅(qū)動決策的時代,預(yù)測分析作為挖掘數(shù)據(jù)潛在價(jià)值的核心手段,正被廣泛 ...
2025-07-10數(shù)據(jù)查詢結(jié)束后:分析師的收尾工作與價(jià)值深化? ? 在數(shù)據(jù)分析的全流程中,“query end”(查詢結(jié)束)并非工作的終點(diǎn),而是將數(shù) ...
2025-07-10CDA 數(shù)據(jù)分析師考試:從報(bào)考到取證的全攻略? 在數(shù)字經(jīng)濟(jì)蓬勃發(fā)展的今天,數(shù)據(jù)分析師已成為各行業(yè)爭搶的核心人才,而 CDA(Certi ...
2025-07-09【CDA干貨】單樣本趨勢性檢驗(yàn):捕捉數(shù)據(jù)背后的時間軌跡? 在數(shù)據(jù)分析的版圖中,單樣本趨勢性檢驗(yàn)如同一位耐心的偵探,專注于從單 ...
2025-07-09year_month數(shù)據(jù)類型:時間維度的精準(zhǔn)切片? ? 在數(shù)據(jù)的世界里,時間是最不可或缺的維度之一,而year_month數(shù)據(jù)類型就像一把精準(zhǔn) ...
2025-07-09CDA 備考干貨:Python 在數(shù)據(jù)分析中的核心應(yīng)用與實(shí)戰(zhàn)技巧? ? 在 CDA 數(shù)據(jù)分析師認(rèn)證考試中,Python 作為數(shù)據(jù)處理與分析的核心 ...
2025-07-08SPSS 中的 Mann-Kendall 檢驗(yàn):數(shù)據(jù)趨勢與突變分析的有力工具? ? ? 在數(shù)據(jù)分析的廣袤領(lǐng)域中,準(zhǔn)確捕捉數(shù)據(jù)的趨勢變化以及識別 ...
2025-07-08備戰(zhàn) CDA 數(shù)據(jù)分析師考試:需要多久?如何規(guī)劃? CDA(Certified Data Analyst)數(shù)據(jù)分析師認(rèn)證作為國內(nèi)權(quán)威的數(shù)據(jù)分析能力認(rèn)證 ...
2025-07-08LSTM 輸出不確定的成因、影響與應(yīng)對策略? 長短期記憶網(wǎng)絡(luò)(LSTM)作為循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)的一種變體,憑借獨(dú)特的門控機(jī)制,在 ...
2025-07-07統(tǒng)計(jì)學(xué)方法在市場調(diào)研數(shù)據(jù)中的深度應(yīng)用? 市場調(diào)研是企業(yè)洞察市場動態(tài)、了解消費(fèi)者需求的重要途徑,而統(tǒng)計(jì)學(xué)方法則是市場調(diào)研數(shù) ...
2025-07-07CDA數(shù)據(jù)分析師證書考試全攻略? 在數(shù)字化浪潮席卷全球的當(dāng)下,數(shù)據(jù)已成為企業(yè)決策、行業(yè)發(fā)展的核心驅(qū)動力,數(shù)據(jù)分析師也因此成為 ...
2025-07-07剖析 CDA 數(shù)據(jù)分析師考試題型:解鎖高效備考與答題策略? CDA(Certified Data Analyst)數(shù)據(jù)分析師考試作為衡量數(shù)據(jù)專業(yè)能力的 ...
2025-07-04SQL Server 字符串截取轉(zhuǎn)日期:解鎖數(shù)據(jù)處理的關(guān)鍵技能? 在數(shù)據(jù)處理與分析工作中,數(shù)據(jù)格式的規(guī)范性是保證后續(xù)分析準(zhǔn)確性的基礎(chǔ) ...
2025-07-04CDA 數(shù)據(jù)分析師視角:從數(shù)據(jù)迷霧中探尋商業(yè)真相? 在數(shù)字化浪潮席卷全球的今天,數(shù)據(jù)已成為企業(yè)決策的核心驅(qū)動力,CDA(Certifie ...
2025-07-04CDA 數(shù)據(jù)分析師:開啟數(shù)據(jù)職業(yè)發(fā)展新征程? ? 在數(shù)據(jù)成為核心生產(chǎn)要素的今天,數(shù)據(jù)分析師的職業(yè)價(jià)值愈發(fā)凸顯。CDA(Certified D ...
2025-07-03