柯家龍
國家互聯(lián)網應急中心江蘇分中心
近年來,社交網站已經成為網民生活中的重要組成部分。然而與“網絡黑產”緊密相關的引流機器人賬號卻充斥著各大社交網站,如新浪微博等。引流機器人賬號是指:由程序控制并通過發(fā)帖、轉載、評論等方式,將部分網民誘導至特定網站、特定人群、特定組織,從而起到傳播不良信息、操控輿論、誘導消費甚至實施網絡詐騙等目的的網絡社交賬號。常見的引流類型包括涉黃、涉賭、刷單、醫(yī)美、股票投資、小貸廣告等,其社會危害程度較大。因此,利用技術手段準確識別出社交網站中的引流機器人賬號具有重要意義。
目前,國內外用于識別檢測引流機器人賬號的方式,基本上都是基于引流機器人賬號和正常人類賬號之間的特征差異,構造出檢測準確率較高、綜合代價較小的檢測模型。模型的常用特征包括賬號屬性、信用屬性、社交屬性等,具體又可以細分為資料完整度、賬號信用值、賬號影響力、發(fā)文豐富度、發(fā)文互動率等特征值。Yang 等設計了基于圖像、鄰居等的識別算法。趙斌等重點研究了微博內容中的文本相關性和時間相關性,提出了基于重用檢測模型的微博垃圾用戶檢測算法。劉勘等結合微博發(fā)送信息熵、發(fā)送端所屬平臺等特征,并基于隨機森林算法,完成相關賬號檢測。
為準確高效地識別出網絡引流機器人賬號,本文在前人研究基礎上,深入挖掘社交賬號在發(fā)文方面的特性,提出了一種基于賬號發(fā)文特征的智能檢測方法。以新浪微博引流機器人賬號為例,我們發(fā)現(xiàn)該類賬號通常具有轉載博文、重復發(fā)文、高頻發(fā)文、深夜發(fā)文等特征,我們稱之為“發(fā)文行為特征”,同時其在發(fā)文內容語義上也具有一定的引流特性,我們稱之為“發(fā)文內容特征”。本文基于上述特征,引入自然語言處理領域的BERT 算法和多種機器學習算法,設計并實現(xiàn)了一套引流機器人賬號智能檢測模型。
引流機器人賬號為了達到擴大知悉范圍、增強引流效果的目的,其幕后操控的大量引流機器人賬號往往會批量轉發(fā)引流帖子內容,而正常的人類社交賬號一般不會有此特征?;诖颂卣鳎覀円搿霸瓌?chuàng)發(fā)文率”(Original Posting Ratio,OPR)特征指標。提取新浪微博賬號的歷史發(fā)文數量,并統(tǒng)計其中轉發(fā)情況和原創(chuàng)發(fā)文情況,計算OPR 指標。“原創(chuàng)發(fā)文率”特征指標表達式為:
其中,posting_num 表示該賬號發(fā)布的博文總數量(包括原創(chuàng)的和轉發(fā)的),original_posting_num 表示該賬號的原創(chuàng)發(fā)文數量。
引流機器人賬號出于引流的目的,經常會將事先編輯好的、具有誘導性的文字內容,在社交網站平臺上重復發(fā)布或轉載,而正常的人類社交賬號一般不具備此特征?;诖颂卣?,我們引入“重復發(fā)文率”(Repeated Posting Ratio,RPR)特征指標。提取新浪微博賬號的歷史發(fā)文內容,統(tǒng)計其重復發(fā)文情況,計算RPR 指標?!爸貜桶l(fā)文率”特征指標表達式為:
其中,posting_num 表示該賬號發(fā)布的博文總數量(包括重復的和非重復的),repeated_posting_num 表示發(fā)文內容重復的數量。在判定博文內容是否重復之前,我們還需要對博文中的“@”字符、轉發(fā)標識、表情、空格等特殊情況進行預處理,以保證真實效果。
對新浪微博賬號的發(fā)文頻率進行研究后,我們發(fā)現(xiàn)引流機器人賬號為了達到增加曝光率的目的,其往往存在短時間內多次發(fā)布博文的特征,而正常的人類社交賬號則一般無此明顯特征?;诖颂卣?,我們引入“發(fā)文頻率”(Posting Frequency,PF)特征指標。我們統(tǒng)計新浪微博賬號的歷史發(fā)文數量和時間跨度,計算其發(fā)文頻率指標PF。記頻率為:
其中,posting_num 表示該賬號posting_period 統(tǒng)計時間內的博文總數,posting_period 表示該賬號按天計數的發(fā)文時間跨度。則“發(fā)文頻率”特征指標歸一化表達式為:
xmax、xmin分別為頻率原始數據的最大值、最小值。
新浪微博引流機器人賬號在發(fā)文時間上也有別于正常人類賬號。例如,引流機器人賬號往往會在深夜凌晨等時段發(fā)布引流博文。基于此特性,我們引入“發(fā)文時間”(Posting Time,PT)特征指標。
根據經驗,我們將一天中的24 小時劃分為5 個區(qū)間,并對發(fā)文時間落在不同區(qū)間內的情況賦予不同的權重值?!鞍l(fā)文時間”特征權重經驗值如表1 所示。
表1 發(fā)文時間特征權重值表
根據表1 的“發(fā)文時間”特征權重值表,提出“發(fā)文時間”PT 特征指標表達式為:
新浪微博引流機器人賬號的發(fā)文內容或轉載內容在語義方面往往具有較為明顯的特征。目前,大量充斥在新浪微博網站平臺上的引流機器人業(yè)務方向有很多,例如涉醫(yī)療美容、涉股票投資、涉色情網站、涉賭博網站、涉刷單詐騙、涉貸款廣告等。我們重點研究上述引流方向特征,并結合自然語言處理領域的BERT 深度學習算法,對發(fā)文內容進行是否引流二分類訓練,以完成文本語義檢測識別。
2018 年10 月11 日,Google 發(fā)布自然語言處理領域重磅論文,BERT 算法橫空出世。BERT 全稱是Bidirectional Encoder Representation from Transformers,是一種雙向編碼模型算法,其最大特點是拋棄了傳統(tǒng)的RNN 和CNN,通過Attention 機制將任意位置的兩個單詞的距離轉換成1,有效地解決了NLP 中棘手的長期依賴問題。BERT 作為一個Word2Vec 的替代者,其在NLP 領域的11 個方向大幅刷新了精度,可以說是近年來自殘差網絡最有突破性的一項技術。
我們對獲取的新浪微博引流機器人賬號發(fā)文和轉載數據進行總結,將常見的且危害較大的引流發(fā)文內容歸納為如表2 所示。
表2 重點引流業(yè)務方向
上述6 個重點引流業(yè)務方向,是基于新浪微博平臺引流機器人賬號發(fā)文類型總結得來的。盡管我們不能窮盡引流內容類別,但是表2 所列舉的方向是我們關注的重點,具備較強的代表性,在很大程度上能夠達到本文研究目的。圖1 為某醫(yī)美引流的微博樣例截圖。
圖1 某醫(yī)美引流微博截圖
根據表2 分類方向,并結合人工研判方式,對新浪微博賬號的歷史發(fā)文和轉載數據進行標注。具體標注方式為:正常的普通微博內容文本標注為0,命中表2 中的重點引流方向的文本標注為1?;贐ERT 算法,利用已標注發(fā)文數據進行是否引流的二分類訓練優(yōu)化。訓練完成的模型,已具備了對微博發(fā)文內容是否引流進行判別的語義分類能力。
為了偽裝,一些引流機器人賬號也會發(fā)布正常的微博內容。因此,具體到某一個引流機器人賬號,其歷史發(fā)文數據在語義上可能存在引流和非引流兩類?;谏鲜龇治觯覀円搿鞍l(fā)文內容引流率”(Drainage Ratio,DR)特征指標,將提取的新浪微博賬號歷史發(fā)文內容進行是否引流的二分類判別,并定義“發(fā)文內容引流率”特征指標表達式為:
其中,posting_num 表示該賬號發(fā)布的博文總數量(包括引流的和非引流的),drainage_posting_num 表示該賬號被BERT 判定為引流的博文數量。
上述章節(jié)分別完成了微博賬號發(fā)文行為、發(fā)文內容兩方面共計5 個特征指標(OPR、RPR、PF、PT、DR)的計算。為充分利用發(fā)文行為和發(fā)文內容特征,我們設計了融合分類模型,將上述5 個檢測特征指標送入機器學習模型(分類器分別選擇隨機森林、K 近鄰、MLP 多層感知機),完成融合二分類訓練。智能檢測模型整體邏輯如圖2 所示。
圖2 基于發(fā)文特征的微博賬號融合分類模型
本文通過公開渠道獲取新浪微博正常人類賬號8000 個,通過其他方式獲得引流機器人賬號600 個,并獲取上述賬號3 個月內的歷史發(fā)文時間、發(fā)文內容、是否轉發(fā)、原帖內容(轉發(fā)微博情況下原帖文本內容參與RPR、DR 特征指標計算)等詳細樣本數據,作為后續(xù)實驗的原始數據集。
為了完成“發(fā)文內容引流率”(DR)指標的計算,我們隨機選擇2000 個正常人類賬號和200 個引流機器人賬號作為樣本數據,對其發(fā)文內容數據進行人工標注,并結合BERT 算法完成二分類訓練。
對剩余的6000 個正常人類賬號和400 個引流機器人賬號及其發(fā)文數據進行預處理,并計算每一個賬號的發(fā)文行為特征指標值(OPR、RPR、PF、PT)和發(fā)文內容特征指標值(DR)。將這6400 個微博賬號劃分為訓練集(60%)、驗證集(20%)和測試集(20%)。
4.2.1 特征指標區(qū)分度分析
針對前述提出的新浪微博賬號的5 個發(fā)文特征指標值,分別繪制概率累積分布函數圖(Cumulative Distribution Function,CDF)。CDF 圖橫坐標分別為本文提出的5 個特征指標值,縱坐標為對應特征指標的概率累積分布函數值。
圖3為OPR 指標的CDF 圖。從圖中可以看出,原創(chuàng)發(fā)文率在0.5 左右時,正常人類賬號累積占比只有24%,而引流機器人賬號累積占比高達76%。引流機器人賬號OPR 指標的累積概率始終大于正常人類賬號,這也充分說明了引流機器人賬號存在原創(chuàng)發(fā)文率低、轉載比率較高的特征。
圖3 OPR 指標的累積分布函數
圖4為RPR 指標的CDF 圖。從圖中可以看出,正常人類賬號重復發(fā)文率在0.2 以下的累積占比高達90%以上,說明其重復發(fā)文比率較低。而引流機器人賬號重復發(fā)文率在0.5以上的累積占比近60%,說明引流機器人賬號存在大量重復發(fā)文的特性。
圖4 RPR 指標的累積分布函數
圖5為PF 指標的CDF 圖。從圖中可以看出,正常人類賬號發(fā)文頻率較低,PF 指標一般不超過0.5。而引流機器人賬號的PF 值大多集中在0.6 以上,說明其發(fā)文頻率很高。
圖5 PF 指標的累積分布函數
圖6為PT 指標的CDF 圖。從圖中可以看出,正常人類賬號發(fā)文時間指標PT 高于0.5 的比率不足10%。而引流機器人賬號發(fā)文時間指標PT 高于0.5 的比率超過40%,這說明引流機器人賬號PT 指標明顯高于正常人類賬號。
圖6 PT 指標的累積分布函數
圖7為DR 指標的CDF 圖。從圖中可以看出,正常人類賬號DR 指標值集中在0.2 以下,說明其在發(fā)文內容上總體呈現(xiàn)出非引流特性。而引流機器人賬號的DR 指標大多集中在0.4 以上,明顯高出正常人類賬號很多,這說明引流機器人賬號在發(fā)文內容上大多呈現(xiàn)出引流的特性。
圖7 DR 指標的累積分布函數
通過圖3 至圖7 的指標分析,新浪微博引流機器人賬號的RPR、PF、PT 和DR 指標普遍高于正常人類賬號,而OPR 指標明顯低于正常人類賬號,證明本文提出的5 個發(fā)文特征指標具備較好的區(qū)分度。
4.2.2 智能檢測模型性能分析
本文實驗構建5 個發(fā)文特征指標(OPR、RPR、PF、PT、DR),分別基于隨機森林、K 近鄰、MLP 多層感知機,完成模型訓練優(yōu)化。本文設計的智能檢測模型在測試集上的性能指標如表3 所示。
表3 智能檢測模型性能指標
從表3 可以看出,模型在三個分類算法下均具有良好的性能指標,這表明本文提出的基于發(fā)文特征的智能檢測方法,能夠準確地識別出微博引流機器人賬號,具備較強的可行性和通用性。
本文根據社交網絡引流機器人賬號發(fā)文特征,以新浪微博賬號為樣本,引入了5 類特征值,設計并實現(xiàn)了一套基于發(fā)文特征的引流機器人賬號智能檢測系統(tǒng)。實驗結果表明,本套系統(tǒng)具備較高的檢測準確率,為有效識別網絡引流機器人賬號提供了一種新的思路和方法。由于精力有限,本次研究未引入更多維度的特征,后續(xù)可考慮結合社交賬號的資料完整性、信息真實度、互動程度等方面的特征指標,開展更多維度特征的融合分析研究工作。