衛(wèi)星君
摘要 本文提出基于特征值的推薦系統(tǒng)托攻擊檢測。使用信息增益為不同攻擊模型選擇合適的特征值。確定攻擊目標為K-means選擇初始聚類中心,從而劃分攻擊用戶和普通用戶,識別出攻擊用戶.實驗證明該算法有較好的檢測準確率。
關鍵詞 托攻擊;特征指標;聚類
中圖分類號 TP3 文獻標識碼 A 文章編號 1674-6708(2016)159-0079-02
1 概述
為了解決這種“信息過載”問題,個性化服務技術因此而誕生。它通過收集和分析用戶的信息,在用戶手動搜索之前將有用信息推薦給用戶,來為不同用戶提供不同的服務和內容。個性化推薦系統(tǒng)(personalizedrecommendersystems)(簡稱為推薦系統(tǒng))已經成為解決信息過載問題不可缺少的一部分。在實際情況中,推薦系統(tǒng)的建議可以影響用戶的選擇行為,從而帶來巨大經濟利益。為了誤導系統(tǒng),“攻擊者”會偽造用戶記錄,使得成為盡量多的正常用戶的近鄰,然后給要攻擊的目標物品特好或者特差的評分值。為了確保偽造的記錄能夠奏效,攻擊者需要找到更好的方法給系統(tǒng)做“托(shilling)”,最終實現(xiàn)影響系統(tǒng)的目的。
2 托攻擊模型
2.1 相關定義
定義1(攻擊概貌)托攻擊是由注入推薦系統(tǒng)的攻擊概貌構成。攻擊者確定攻擊項(itemt),給予部分項適當?shù)脑u分構成一條攻擊記錄。
2.2 攻擊模型
主流的攻擊模型有隨機攻擊、均值攻擊、流行攻擊。
1)隨機攻擊
依據(jù)攻擊概貌,隨機攻擊的選擇項為空集(Is=φ),推攻擊目標相為最大值評分(It=smax),核攻擊目標項為最小值評分(It=min)。填充項(IF)隨機選取除目標項之外的項集,填充項的評分則服從推薦系統(tǒng)中評分的正態(tài)分布。
2)均值攻擊
依據(jù)攻擊概貌,均值攻擊的選擇項為空集(Is=φ),推攻擊目標相為最大值評分(It=max),核攻擊目標項為最小值評分(It=min)。填充項(IF)隨機選取除目標項之外的項集,填充項的評分則服從推薦系統(tǒng)中對項目(itemi)評分的正態(tài)分布。
3)流行攻擊
依據(jù)攻擊概貌,流行攻擊同前兩種攻擊的不同在于添加了選擇項。由于熱門物品(流行項)很容易獲得,比如暢銷的書籍,受歡迎的電影等。攻擊者會挑選幾款流行的物品,賦予系統(tǒng)中最大值評分作為填充項(IF=smax)。
3 特征屬性值的選擇
攻擊用戶和普通用戶本質上存在著差異性,可以計算每個用戶對應特征值,來區(qū)分普通和攻擊用戶。
3.1 特征屬性值
通過K-mean將標記用戶歸為不同簇集,得到穩(wěn)定的k個聚類中心mean(k)。無論攻擊用戶或普通用戶,將其分類到第K簇集,用戶評分向量之間的相似度較高,因此其屬性值也較近似。文獻提出了不同的特征屬性值,用來反映當前用戶概貌的差異。對于用戶概貌辨識度較高的通用特征屬性如何下。
1)RDMA用來區(qū)分用戶概貌每一個項的平均偏離程度。
2)WDMA用來區(qū)分用戶概貌稀疏項的評分偏離程度,各變量含義同RDMA。
3)LengthVar用戶概貌在系統(tǒng)中平均長度的變化。
4)FMV用來辨別用戶概貌中填充項的變化。
3.2 攻擊概貌屬性值的選擇
本文針對不同攻擊模型選擇合適的特征值。選擇可以遵循信息增益大小來確定,依據(jù)分類系統(tǒng)中分類個數(shù)和樣本情況評估。信息增益為分類系統(tǒng)的熵與條件熵差。表1所示,依據(jù)信息增益選擇的特征值。
4 基于特征值半監(jiān)督檢測算法
4.1 算法步驟
具體步驟如下:
Step1采用上文描述的改進k-Means算法對標記用戶進行聚類,劃分為不同的K個簇集。
Step2利用式(2)、(3)求出簇集合均值中心mean(k)。
Step3計算Max(sim(user,k)),即計算與k個均值中心的相似度,把用戶劃分到相似度最大值對應的簇