張瑤瑤 朱小棟
(上海理工大學(xué)管理學(xué)院 上海 200093)
在用戶主導(dǎo)而生成內(nèi)容的互聯(lián)網(wǎng)產(chǎn)品模式的Web 2.0時代,F(xiàn)acebook、Twitter、微博、知乎、豆瓣、天涯等國內(nèi)外知名社交網(wǎng)站的逐漸興起火熱,當(dāng)代社交網(wǎng)絡(luò)也已成為用戶日常生活不可缺少的部分。據(jù)STATISTA報告,截至2018年4月美國社交媒體平臺領(lǐng)先者Facebook月活躍賬戶22.34億,與此同時中國社會媒體平臺新浪微博擁有3.92億月活躍賬戶;視頻門戶網(wǎng)站Youtube月活躍賬戶15億;主題交流社區(qū)百度貼吧擁有月活躍賬戶3億。伴隨著成熟的技術(shù)和成功的推廣,社交網(wǎng)站吸引越來越多的網(wǎng)民注冊使用,在這樣龐大的網(wǎng)絡(luò)群體中,可能會因為垃圾用戶經(jīng)常發(fā)布無用信息造成社交用戶個人主頁信息冗雜干擾使用,也可能會發(fā)生盜取個人信息詐騙造成精神金錢損失,甚至還可能因為有組織有預(yù)謀的行為引起熱門話題的討論和輿論的錯誤導(dǎo)向[1~3]。
當(dāng)下對與社交網(wǎng)絡(luò)垃圾用戶特征的研究分為三個部分——基于內(nèi)容分析方法、基于用戶行為分析方法、基于用戶關(guān)系分析方法。第一種基于內(nèi)容特征分析的模式中,通常使用一系列的機器學(xué)習(xí)算法來識別內(nèi)容中的潛在垃圾關(guān)鍵字[4]。在第二種基于用戶特征分析包括貝葉斯算法[5]、決策樹分類[6]等經(jīng)典機器學(xué)習(xí)算法,早期研究使用垃圾用戶部分行為特征作為屬性[7],如關(guān)注人數(shù),粉絲數(shù),關(guān)注/粉絲比,推文數(shù)等[8],但由于社交軟件功能的更新以及逐漸善于偽裝的垃圾用戶,后來的研究逐漸考慮更多的屬性,如博文之間的相似性,發(fā)文時間分布,博文中URL比例等[9],但是過多的屬性也會造成數(shù)據(jù)預(yù)處理和標(biāo)準(zhǔn)化的困難,延長處理時間,降低處理效率。第三種基于用戶關(guān)系特征的分析方法應(yīng)用如神經(jīng)網(wǎng)絡(luò)分類法、貝葉斯網(wǎng)絡(luò)等[10]。這類方法為了建立社交網(wǎng)絡(luò)需要收集大量具有復(fù)雜關(guān)系的數(shù)據(jù),但是許多垃圾用戶通過學(xué)習(xí)正常用戶的社交圖譜規(guī)律,構(gòu)建穩(wěn)固的社交關(guān)系,故分類效果往往并不理想。綜合分類效率和分類精度,本文提出了運用基于嶺回歸極限學(xué)習(xí)機的微博垃圾用戶檢測方法。
在傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)訓(xùn)練中,通常要通過梯度下降算法來不斷的調(diào)整隱層與輸出層,輸出層與隱層之間的權(quán)值矩陣,以及偏置b。在ELM(Extreme Learning Machine)算法中,隱層的權(quán)值矩陣W和偏置b則沒有必要調(diào)整,在學(xué)習(xí)算法開始時任意隨機給定W和b的值,利用其計算出H(隱層節(jié)點的輸出),并令其保持不變,后續(xù)只需確定β[11]。設(shè)前向神經(jīng)網(wǎng)絡(luò)的輸入層節(jié)點數(shù)量為P,特征向量的維數(shù)與輸入節(jié)點數(shù)量相同;隱藏層的節(jié)點數(shù)量為L。則hidden layer的第i個節(jié)點的輸出為

即將P維向量映射到L維向量:

其中wi為第輸入層節(jié)點與隱層節(jié)點之間的第i個鏈接,bi為偏置,g為激活函數(shù),這里使用sigmoid函數(shù):

輸出層的節(jié)點數(shù)記作M;第i個隱層節(jié)點和第j個輸出層節(jié)點之間的權(quán)重為βi,j,則節(jié)點j的輸出為

因此輸入樣本X,對應(yīng)的輸出為

在識別階段,給定一個樣本X,則該樣本所屬類別為

ELM算法和神經(jīng)網(wǎng)絡(luò)算法最大的區(qū)別在于:ELM不需要進(jìn)行迭代,而是一次性通過標(biāo)簽計算出最后一層神經(jīng)元的權(quán)重。而神經(jīng)網(wǎng)絡(luò)是通過梯度下降的方法,不斷地根據(jù)loss值更新權(quán)重值。因此ELM算法并不適合構(gòu)造出更深的網(wǎng)絡(luò)結(jié)構(gòu),但是減少了計算量,減少了機器開銷。而RR-ELM(Ridge Regression Extreme Learning Machine)相對于ELM加入了正則項的限制,防止過擬合。ELM的泛化能力和穩(wěn)定性由如下代價函數(shù)得到:

適當(dāng)確定σ1,p,σ2,q,并當(dāng)加入正則項后,代價函數(shù)變成:

加入正則項的RR-ELM泛化能力更強,分類效果預(yù)計也更好。
圖1 展示了所提出的微博垃圾用戶檢測模型的基本概念。在該方案中,訓(xùn)練數(shù)據(jù)被轉(zhuǎn)換成一系列 的 特 征 向 量,{users:attribute1,attribute2,…,attributen}表示用戶的屬性特征,包括注冊時間、個人簡介、關(guān)注對象、粉絲、互粉數(shù)量、點贊數(shù)量等屬性特征:{microblog:attribute1,attribute2,…,attributem}表示用戶的一系列屬性特征,包括推文的原創(chuàng)比例,轉(zhuǎn)發(fā)比例,話題比例等屬性。這些向量構(gòu)成了一個ELM機器學(xué)習(xí)算法的輸入值。在訓(xùn)練之后,得到一個分類模型,并以此來區(qū)分特定用戶是否屬于普通用戶或垃圾用戶。

圖1 基于RR-ELM的垃圾用戶識別算法框架
目前雖然在UCI機器學(xué)習(xí)數(shù)據(jù)庫有一些數(shù)據(jù)集,但是這些數(shù)據(jù)集只有數(shù)據(jù)屬性,卻沒有標(biāo)簽。為驗證本文微博網(wǎng)絡(luò)垃圾用戶識別方法的有效性,需從微博中爬取相關(guān)數(shù)據(jù)。本文使用八爪魚抓取2018年8月1日到2018年9月27日多 個用 戶 的粉絲和關(guān)注用戶(分別為人工確認(rèn)的正常用戶的關(guān)注用戶和非正常用戶的粉絲用戶)作為原數(shù)據(jù)集。通過查閱文獻(xiàn)資料,默認(rèn)手工標(biāo)注的垃圾用戶的粉絲同樣為垃圾用戶,正常用戶的關(guān)注用戶為正常用戶[12],由此得到充足數(shù)據(jù)集,且可以省去耗費人力物力財力的人工標(biāo)注的繁復(fù)步驟(且時間跨度大的人工標(biāo)注往往無法保證準(zhǔn)確率),提取的信息包括用戶信息、用戶行為信息、文本內(nèi)容信息。
特征提取主要包括基于用戶信息、基于用戶行為信息、基于文本信息、基于用戶關(guān)系網(wǎng)絡(luò)等四方面[13]。但是由于基于用戶關(guān)系網(wǎng)絡(luò)需要數(shù)據(jù)量大,用戶關(guān)系錯綜復(fù)雜,分類效果不佳,故常常提取前三個方面的特征。
通過微博爬蟲手工標(biāo)注的垃圾用戶的粉絲和正常用戶的關(guān)注用戶得到數(shù)據(jù)集。首先通過運行SVM代碼得到如下準(zhǔn)確率。
在pycharm中 運 行ELM和RR-ELM的python程序,我們將隱藏層設(shè)置為5時,垃圾用戶和真實用戶的比例分別設(shè)置為5∶1,3∶1,1∶1,1∶3,1∶5五種比例,ELM的準(zhǔn)確率為和RR-ELM的準(zhǔn)確率如
從上表中可以直觀地看出,神經(jīng)元數(shù)目對于兩種神經(jīng)網(wǎng)絡(luò)的分類效果影響較大。
通過查閱資料得知,SVM往往在經(jīng)典機器學(xué)習(xí)分類中分類效果之最[14]。同樣,當(dāng)垃圾用戶和真實用戶比例設(shè)置為1∶1時,C值分別設(shè)置為0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、1,且核函數(shù)為線性時,訓(xùn)練得到的SVM分類器的分別對于訓(xùn)練集和測試機的分類準(zhǔn)確率如表2。

表2 懲罰系數(shù)C
將核函數(shù)的線性函數(shù)換成RFB徑向基函數(shù),懲罰函數(shù)設(shè)置為0.8時,在γ值不同的情況下的分類效果。
從表1中可以看出,當(dāng)垃圾用戶和正常用戶的比例為1∶1時,分類效果是最好的,且RR-ELM的分類效果總是好于ELM。究其原因,只有當(dāng)垃圾用戶和正常用戶的比例達(dá)到一定的均衡接近實際比例時,訓(xùn)練得到的分類器才具有普適性,而比值越遠(yuǎn)1∶1效果越不好。同時可以猜測新浪微博用戶是否幾乎有一般的用戶都是機器人操控的,分別通過不同的利益團體執(zhí)行不同的任務(wù),左右輿論和商業(yè)市場的走向,這對于社交平臺的自我認(rèn)識,對于未來的品牌提升思考也有一定的借鑒意義[15]。

表1 不同影響因子下的準(zhǔn)確率
另外從表1中可以看出,隨著隱藏神經(jīng)元數(shù)目增加,RR-ELM和ELM的分類效果也越來越好,其中RR-ELM和ELM的分類效果相差很小。故而隱藏層神經(jīng)元數(shù)目對于分類器的影響相較于數(shù)據(jù)集用戶比例的影響相對較小。當(dāng)構(gòu)建分類器時,需要注意兩個因素孰輕孰重。
從表2中可以看出,剛開始時SVM對于訓(xùn)練集和測試集兩者分類效果差別較大,但當(dāng)逐漸增大C值時兩者的分類效果逐漸趨于一致。且對于測試集的分類效果隨著C直接增加,先下降后上升,效果不是很穩(wěn)定。由于分類器是由訓(xùn)練集訓(xùn)練得到的,故對于訓(xùn)練集的擬合效果較好。
從表3中可以看出,徑向基核函數(shù)相較于線性核函數(shù)的分類效果好很多,同樣訓(xùn)練集的分類效果也比測試集的分類效果更佳,同樣由于分類器是由訓(xùn)練集訓(xùn)練得到的,故對于訓(xùn)練集的擬合效果較好,分類準(zhǔn)確率也比較穩(wěn)定。

表3 γ值
本文的主要貢獻(xiàn)在于優(yōu)化了ELM的處理能力,并給出了分類效果最好時的正常用戶和垃圾用戶用戶比例,最佳比例為1∶1;RR-ELM分類效果也會隨著神經(jīng)網(wǎng)絡(luò)的隱藏層神經(jīng)元數(shù)目增加而增加。本文還得出SVM達(dá)到較好分類效果的時候懲罰系數(shù)C值和徑向核函數(shù)γ值的值范圍。
但是在多樣化特征的社交網(wǎng)絡(luò)用戶中,任何數(shù)量的標(biāo)記數(shù)據(jù)都是不足夠的,只有盡可能多數(shù)量的采樣,才能更好地接近實際情況[16]。為了彌補這一缺憾,未來的工作可以著手對于其他代價函數(shù)的改進(jìn)對比和基于少量標(biāo)記數(shù)據(jù)的半監(jiān)督學(xué)習(xí)模型等,以期達(dá)到更好的分類效果。