從資料科學分析假帳號
假帳號的社群網絡分析
講者:曾仲毅 Kevin / 資策會資安所 / 工程師
活動主辦單位: Taiwan Data Science Meetup 台灣資料科學社群
曾仲毅 Kevin
Kevin 在資策會研究假新聞,藉由過去於行銷做數據分析的經歷,以資料科學視角,分析社群平台上不實訊息如何形成與傳播,也試著以過去在行銷部門的觀察,理解這個議題的商業模式如何運轉。
摘要
假帳號近年來大量充斥在社群媒體之上,但大部分都是案例,需要進一步以數據的方式來剖析,而社群平台本身的互動關係,很適合以社會網絡分析(Social Network Analysis)的方法,模擬出使用者間的互動關係,找出異常的群體。 演講中會展示分析流程,以及視覺化出網狀結構,對應到社會上的互動關係。
本次 Kevin 主要有幾個 key takeaway 想要帶給我們:
- 假帳號分析是屬於非監督式問題
- 需要透過歸因找特徵,使目標變穩定
- Network Analysis 的流程與難點
首先要聊聊 “資料科學” 在假帳號分析議題上的優劣勢:
優勢
- 相對於人工,程式或資料科學可以在大規模的資料中找到 insight
- 可透過量化的來看評估成果,並且有指標幫助判斷
- 能夠有效地進行抽樣
劣勢
- 資料量少,需要上標籤
- 這題目較需要領域知識,不只是模型或數學
- 假帳號攻防手段會一直改變,因此要不斷迭代做出穩定的特徵
關於穩定的特徵:
- 必須做產業領域的歸因,去尋找更底層(上游)的成因,因為假帳號是動態的攻防,會比一般成熟的商業環境困難
- 特徵定義了模型的上限
- 必須考量成本效益,要評估收集資料(特徵)的成本
Kevin 參考了一個開源專案,作者將源於資訊安全的步驟和手法(TTPs),換成不實資訊的操作框架(AMITT)。
Kevin 將這個框架運用在假帳號分析上,增加對這領域流程的熟悉度,比較容易找到根本原因,做出的特徵才會更穩定。
關於假帳號分析的兩三事
- 假帳號其實是很成熟的商業模式(灰色產業),需要去搞懂
- 假帳號賣家會宣傳自己品質多好、有多少好友,而且不會被封鎖
- 雖然中國不能用 Facebook,卻也有很多人會跟外國進行交易
- 如果是個人要做,就只要申請一個 email 辦帳號開始到處加人就好,只是擴散速度極慢;現在有程式可以自動化、大量做群控管理系統
- 必須找到穩定的特徵,不能讓分析/模型 overfitting,就得要知道這個領域的關鍵績效指標/商業模式/受眾等
Why SNA?
- SNA 適用於分析人與人之間的關係
- 跟一般結構化資料不一樣,並非一人一列,而是記錄一群人的關係網絡
- 假帳號跟一般帳號的好友結構會差很多(好友數、好友之間關聯等)
抽樣的考量
- 無法拿到整個群體的社群網絡資料(獲取成本非常高)
- 不能隨機抽樣,因為這群人之間可能不認識因此沒有關係資訊
- 採用滾雪球抽樣法,以某一個人出發,找他的朋友,至少可以得到局部的人際關係
透過 Gephi 軟體進行 EDA:
- 輸數資料格式:CSV
- 建立 Edge Table 表示關係特徵:source, target, weight
- 建立 Node Table 表示個人特徵:Id, age, gender, job, level of friend
正常人的網路 v.s. 假帳號的網路
左圖,正常人的網路:一般人會有不同群體的朋友,像是高中、大學,工作,社群等,同一群體的這些朋友之間是會有聯繫的
右圖,假帳號的網路:假帳號因為幾乎沒有共同好友,尤其是第二層這塊,結構較為鬆散,雖然朋友很多,但是都沒有關聯
為什麼會有這個現象?
- 假帳號想要大加薪好友很不容易
- 正常人都不會加那種名字很怪的英文、好友沒幾個、大頭貼也很怪的帳號
- 就算加到了,好友彼此間有關係或有互動機率也不高
- 也不能大量操作假帳號互加好友,因為需要分散風險,避免被整批刪除
Measurement
- 判斷 ego network 但其 PageRank 不是最大的
- 使用 Python igraph 套件,做比較大規模、複雜的處理
社群檢測
- 觀察交友圈做分群
- 觀測的指標是連結程度(connectivity),而非以距離(distance)為指標的演算法
- 交友連結也可以替換成其他關係,例如: 分享、按讚、留言等
Result & Finding
- 用人工的方式沒效率,還是必須透過工具或算法來大量處理
- 特徵都是關係的延伸,因此關係的定義很重要(好友/按讚/分享關係)
- 如果資源($$$)充足可以什麼都做,不然就要跟專家做討論
- 還是可以同時配合人工肉搜,質性,訪談
Future Works