99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀基于六度分隔理論、PageRank等的人工風(fēng)控特征提取框架
基于六度分隔理論、PageRank等的人工風(fēng)控特征提取框架
2022-04-25
收藏

作者:小伍哥

來源:小伍哥聊風(fēng)控

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

關(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)系特征提取。

二、設(shè)計(jì)構(gòu)建Graph

論文中根據(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)圖。

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

條件1圖:節(jié)點(diǎn)數(shù)為6.82億個,邊數(shù)57.45

條件2圖:節(jié)點(diǎn)個數(shù)2.55億個,邊數(shù)4.369

三、檢測黑產(chǎn)自己注冊的賬號

對于黑產(chǎn)自己的賬號,有兩個最顯著且易于計(jì)算的圖屬性,節(jié)點(diǎn)度 和 PageRank。度是一種能捕捉賬戶攻擊性的圖屬性,PageRank 是一種從全局層面計(jì)算整個圖上每個節(jié)點(diǎn)的權(quán)重的方法。接下來,我們將討論如何在社交環(huán)境中修改這兩個屬性以進(jìn)行檢測。

1、賬號回復(fù)率

賬號回復(fù)率 = 回復(fù)該賬號郵件的賬號數(shù)/接收該賬號郵件的賬號數(shù)

惡意賬號出度大(發(fā)郵件給其他的賬號數(shù)量多),但回復(fù)率會比較低,通過簡單的統(tǒng)計(jì),可以找到一些明顯的惡意賬號。

2、PageRank

PageRank算法是一種基于圖的傳播算法,一種簡單的想法是在有向圖Gd上使用PageRank,傳播善意分?jǐn)?shù)(goodness score),然而盡管惡意賬號的回復(fù)率比較低,但是由于發(fā)送的郵件數(shù)巨大,偶然性的回復(fù)會使得其善意分?jǐn)?shù)偏高,而一些不活躍的正常賬號善意分?jǐn)?shù)會比較低。

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

為了解決上述問題,論文提出來了兩處改進(jìn),一是修改邊的權(quán)重(考慮發(fā)送和回復(fù)比例),二是把原來網(wǎng)絡(luò)圖連接關(guān)系進(jìn)行反轉(zhuǎn)(入鏈變成出鏈,出鏈變成入鏈),傳播惡意分?jǐn)?shù)(badness score)。

下面舉一個簡單的例子:

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

假設(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ù)公式:

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

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/

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

三、被盜號賬戶檢測-社會親和力特征

被盜的賬號相比于黑產(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ù)

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

我畫了個示意圖,如下所示,我們把定點(diǎn)V剔除后,剩下的圖,連通性各不相同,圖1就是比較異常的,只要定都發(fā)送,發(fā)送的各個點(diǎn)之間并沒有聯(lián)系,剔除后連同分量為0,而圖3,剔除后的三個賬戶,依然連通,所以連通分量為3。

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

這背后的直覺就是正常的賬戶和周圍人的聯(lián)系一般較為密切而極少與不認(rèn)識的人存在聯(lián)系,因此其 recipient connectivity 往往較高,而對于一個被劫持的正常賬戶,由于被劫持賬戶也是用來發(fā)廣告之類的(比如微博號、qq號,微信號被盜,會給關(guān)注的人發(fā)各種亂七八糟的私信),因此被劫持的賬戶一旦發(fā)生了這類行為,其recipient connectivity往往會發(fā)生變化,從而變得較低。

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

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郵件的賬號之間的平均最短距離

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

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比較長。

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

有了這些相關(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左右。

基于六度分隔理論、PageRank等的人工風(fēng)控<a href='/map/tezheng/' style='color:#000;font-size:inherit;'>特征</a>提取框架

文章就寫到這里了,文章雖然簡單,但是里面的細(xì)節(jié)還是非常多的,大家可以結(jié)合自己的業(yè)務(wù),尋找不同的關(guān)系圖,然后來研究里面提到的指標(biāo)。

數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗(yàn)證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }