国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊檢測(cè)方法

2023-09-19 07:40:44陳真乞文超鮑泰宇申利民
通信學(xué)報(bào) 2023年8期
關(guān)鍵詞:投毒復(fù)雜度特征提取

陳真,乞文超,鮑泰宇,申利民

(1.燕山大學(xué)信息科學(xué)與工程學(xué)院,河北 秦皇島 066004;2.燕山大學(xué)河北省計(jì)算機(jī)虛擬技術(shù)與系統(tǒng)集成重點(diǎn)實(shí)驗(yàn)室,河北 秦皇島 066004)

0 引言

云時(shí)代,云應(yīng)用程序接口(API,application programming interface)作為服務(wù)交付、能力復(fù)制和數(shù)據(jù)輸出的最佳載體,已成為當(dāng)今數(shù)字世界的基礎(chǔ)設(shè)施[1]。云API 正在成為人工智能技術(shù)“飛入尋常百姓家”的重要管道[2],和實(shí)現(xiàn)面向服務(wù)軟件開發(fā)與運(yùn)行的核心要素。

然而,網(wǎng)絡(luò)中云API 的激增使用戶越來(lái)越難從眾多功能同質(zhì)化的云API 中選擇高質(zhì)量、個(gè)性化的云API 進(jìn)行面向服務(wù)的軟件開發(fā)。為了應(yīng)對(duì)上述問(wèn)題,研究者引入服務(wù)質(zhì)量(QoS,quality of service)來(lái)刻畫云API 的非功能側(cè)特性[3],以表征云API 在某一方面的質(zhì)量信息,如響應(yīng)時(shí)間、吞吐量和可靠性等。但是由于高昂的時(shí)間成本、巨大的資源開銷和服務(wù)質(zhì)量情境依賴的特點(diǎn),用戶無(wú)法調(diào)用并測(cè)試全部候選云API 的性能來(lái)獲取相應(yīng)的服務(wù)質(zhì)量數(shù)據(jù),云API 提供商也很難提供符合用戶情境特征的服務(wù)質(zhì)量數(shù)據(jù),故服務(wù)質(zhì)量感知云API 推薦系統(tǒng)成為解決這一矛盾的自然選擇[4]。將具備良好性能的云API 推薦給適用的人群,一方面可幫助用戶從海量的云API 中發(fā)現(xiàn)高質(zhì)量、高價(jià)值的云API;另一方面可輔助云API 提供商了解所提供云API 的服務(wù)質(zhì)量,使其不斷優(yōu)化云API 并將高質(zhì)量云API 提供給用戶。

為了確保服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的客觀性和準(zhǔn)確性,廣泛采用的策略是使用調(diào)用過(guò)云API的其他用戶的服務(wù)質(zhì)量歷史記錄,將此歷史交互記錄作為云API 推薦系統(tǒng)的數(shù)據(jù)基礎(chǔ)[5]。值得注意的是,準(zhǔn)確可信云API 推薦系統(tǒng)的一個(gè)重要前提是確保用戶提交的每個(gè)服務(wù)質(zhì)量的評(píng)估信息真實(shí)可靠。然而,由于云API 推薦系統(tǒng)自身的開放性,數(shù)據(jù)的真實(shí)性無(wú)法得到有效保證。例如,一些用戶可能在服務(wù)質(zhì)量評(píng)估時(shí),為提高某些云API 的利用率而故意降低其他云API 的服務(wù)質(zhì)量評(píng)分。服務(wù)提供商可能利用一些虛假用戶故意提高自己的云API 的服務(wù)質(zhì)量,從而影響用戶反饋信息的可信度,使推薦模型產(chǎn)生錯(cuò)誤,使推薦方向遵循攻擊者的意愿[6]。因此,如何有效利用服務(wù)質(zhì)量的差異來(lái)檢測(cè)虛假用戶,以抵御數(shù)據(jù)投毒攻擊成為服務(wù)質(zhì)量感知云API推薦系統(tǒng)應(yīng)用亟待解決的現(xiàn)實(shí)問(wèn)題。

目前,鮮有服務(wù)質(zhì)量感知云API 推薦系統(tǒng)考慮虛假用戶數(shù)據(jù)投毒攻擊的影響。Zheng 等[7]提出服務(wù)質(zhì)量感知云API 推薦系統(tǒng)將受到用戶貢獻(xiàn)的服務(wù)質(zhì)量數(shù)據(jù)可信度的高度影響。Ye 等[8]在進(jìn)行云API推薦時(shí),僅將離群點(diǎn)作為虛假用戶的惡意行為,并引入改進(jìn)的正則項(xiàng)來(lái)避免虛假用戶對(duì)推薦性能的影響。Manikrao 等[9]和Ran 等[10]提出通過(guò)第三方代理驗(yàn)證所有可用云API 服務(wù)質(zhì)量的注冊(cè)表,以提高云API 推薦系統(tǒng)的可信度。

可見,已有方法主要基于離群異常點(diǎn)檢測(cè)[8,11]和代理驗(yàn)證[9-10,12]等策略進(jìn)行服務(wù)質(zhì)量數(shù)據(jù)安全防護(hù),但沒有考慮到在利用服務(wù)質(zhì)量進(jìn)行云API 推薦之前,服務(wù)質(zhì)量數(shù)據(jù)在收集、存儲(chǔ)和預(yù)處理過(guò)程中可能受到的來(lái)自惡意用戶的數(shù)據(jù)投毒攻擊?;诖耍疚奶岢鰪姆?wù)質(zhì)量感知云API 推薦系統(tǒng)數(shù)據(jù)端防御的視角出發(fā),建立基于多特征融合的數(shù)據(jù)投毒攻擊檢測(cè)模型進(jìn)行虛假用戶檢測(cè),繼而去除虛假用戶以提高云API 推薦系統(tǒng)的可靠性和可信性。

本文主要的貢獻(xiàn)如下。

1) 提出了面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊與檢測(cè)問(wèn)題,給出了服務(wù)質(zhì)量感知云API 推薦系統(tǒng)數(shù)據(jù)投毒攻擊與檢測(cè)的形式化定義。

2) 提出了融合用戶鄰域(neighborhood)特征、QoS 深度特征和解釋(interpretation)特征的數(shù)據(jù)投毒攻擊檢測(cè)(NQI-Detector)方法,從多個(gè)維度捕獲虛假用戶和真實(shí)用戶的特征差異,提升數(shù)據(jù)投毒攻擊的檢測(cè)效果。

3) 在真實(shí)云API 服務(wù)質(zhì)量數(shù)據(jù)集上進(jìn)行大量實(shí)驗(yàn),結(jié)果表明NQI-Detector 在面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的投毒攻擊檢測(cè)中展示出更優(yōu)的檢測(cè)效果。消融實(shí)驗(yàn)還解釋了所提取特征的有效性。

1 基本概念

1.1 云API 推薦系統(tǒng)數(shù)據(jù)投毒攻擊定義

數(shù)據(jù)投毒攻擊[13]是指攻擊者通過(guò)向原始數(shù)據(jù)集中注入臟數(shù)據(jù)來(lái)達(dá)到污染數(shù)據(jù)分布的目的,使數(shù)據(jù)分布出現(xiàn)偏差或錯(cuò)誤,造成云API 推薦系統(tǒng)向用戶推薦無(wú)質(zhì)量保障的云API,繼而導(dǎo)致構(gòu)建的服務(wù)化軟件質(zhì)量無(wú)法得到保障,給企業(yè)帶來(lái)商業(yè)風(fēng)險(xiǎn)。

一般來(lái)說(shuō),攻擊者為了避免投毒數(shù)據(jù)被檢測(cè)出來(lái),通常會(huì)在構(gòu)建的虛假用戶數(shù)據(jù)中加入真實(shí)數(shù)據(jù)或使虛假用戶數(shù)據(jù)分布與真實(shí)用戶相似。虛假用戶構(gòu)建完成后批量注入推薦模型中來(lái)影響模型的訓(xùn)練和推薦結(jié)果。

定義1云API 推薦系統(tǒng)數(shù)據(jù)投毒攻擊。服務(wù)質(zhì)量感知云API 推薦系統(tǒng)數(shù)據(jù)投毒攻擊表示為

1.2 云API 推薦系統(tǒng)數(shù)據(jù)投毒攻擊方式

為了避免被發(fā)現(xiàn),攻擊者通常會(huì)根據(jù)云API 推薦系統(tǒng)的知識(shí)使用特定的攻擊模型生成虛假用戶配置文件[14]。不同攻擊模型采用不同的方式來(lái)建立攻擊文件,以模擬真實(shí)用戶的服務(wù)質(zhì)量數(shù)據(jù)。通常,一個(gè)虛假用戶的攻擊數(shù)據(jù)由四部分構(gòu)成,即其中,AS是選擇填充項(xiàng)集合,通常與目標(biāo)云API 有一定的關(guān)聯(lián),以最大化攻擊的有效性;AF是隨機(jī)填充項(xiàng)集合,隨機(jī)選取一組云API 用來(lái)偽裝攻擊者的攻擊行為;AΦ是空白項(xiàng)集合,即用戶未調(diào)用過(guò)的云API 集合;AT是目標(biāo)項(xiàng)集合,一般包含一個(gè)或一組云API,根據(jù)投毒攻擊用戶的攻擊目的來(lái)給目標(biāo)云API 分配服務(wù)質(zhì)量數(shù)據(jù)。

根據(jù)選擇填充項(xiàng)的不同以及隨機(jī)填充項(xiàng)的差異,數(shù)據(jù)投毒攻擊可分為以下3 種類型:隨機(jī)(Rnd,random)攻擊、潮流(Bdg,bandwagon)攻擊和均值(Avg,average tack)攻擊。上述3 種數(shù)據(jù)投毒攻擊需要消耗的攻擊成本有所區(qū)別,所帶來(lái)的攻擊效果也將有所不同,具體對(duì)比如表1 所示。

表1 數(shù)據(jù)投毒攻擊方式對(duì)比

為了表示攻擊者想要同時(shí)提高或降低多少云API 被推薦的概率,將AT的數(shù)量定義為攻擊強(qiáng)度ε。因此通過(guò)數(shù)據(jù)投毒攻擊模型f(·) 生成虛假用戶的過(guò)程可以表示為u′=fx(AS,AF,AΦ,AT,ε),其 中,x={Avg,Rnd,Bdg}。

此外,考慮到攻擊成本的限制,攻擊者只能將有限的虛假用戶注入數(shù)據(jù)集中,引入攻擊規(guī)模b來(lái)表示一次性注入虛假用戶的數(shù)量。因此,虛假用戶投毒數(shù)據(jù)可進(jìn)一步表示為其中,ξ(·) 表示虛假用戶選取規(guī)則。

1.3 云API 推薦系統(tǒng)數(shù)據(jù)投毒攻擊檢測(cè)

2 云API 推薦系統(tǒng)的投毒攻擊檢測(cè)框架

面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊檢測(cè)框架如圖1 所示。該檢測(cè)框架針對(duì)已被數(shù)據(jù)投毒攻擊的云API 推薦系統(tǒng),從多個(gè)角度提取用戶特征,包括鄰域特征、服務(wù)質(zhì)量深度特征和解釋特征,并融合提取的多個(gè)用戶特征建立模型完成數(shù)據(jù)投毒攻擊檢測(cè)。具體包括以下4 個(gè)步驟。

圖1 面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊檢測(cè)框架

Step1鄰域特征提取。通過(guò)用戶相似性函數(shù)來(lái)計(jì)算邊緣權(quán)重,據(jù)此構(gòu)建基于用戶相似性的連通網(wǎng)絡(luò)圖,并使用Node2vec 算法捕獲用戶鄰域特征。

Step2服務(wù)質(zhì)量深度特征提取。從服務(wù)質(zhì)量數(shù)據(jù)出發(fā),利用稀疏自編碼器(SAE,sparse autoencoder)模型挖掘用戶潛在服務(wù)質(zhì)量深度特征。

Step3解釋特征提取。引入用戶數(shù)據(jù)加權(quán)平均偏差設(shè)計(jì)用戶解釋特征。

Step4虛假用戶檢測(cè)。結(jié)合網(wǎng)格搜索算法優(yōu)化虛假用戶檢測(cè)器得到最后的分類結(jié)果。

3 投毒攻擊檢測(cè)模型的建立

3.1 鄰域特征提取

以往的研究中,皮爾遜相關(guān)系數(shù)通常用于衡量用戶之間的相關(guān)性。然而,用戶-云API 的服務(wù)質(zhì)量的交互歷史數(shù)據(jù)十分稀疏,皮爾遜相關(guān)系數(shù)很容易受到數(shù)據(jù)稀疏性的影響,當(dāng)共同交互項(xiàng)數(shù)量很少時(shí),很難通過(guò)少量的共同交互數(shù)據(jù)來(lái)準(zhǔn)確評(píng)估2 個(gè)用戶的相似性[15-16]。由表1 可知,相同的攻擊模型具有相似的選擇填充方式,基于此,本節(jié)從用戶與云API 交互行為的相似性中提出邊緣權(quán)重度量,該度量根據(jù)服務(wù)質(zhì)量的相關(guān)信息(如選擇項(xiàng)、填充比率差異和評(píng)級(jí)偏差)進(jìn)行計(jì)算,綜合分析共同交互項(xiàng)的數(shù)量和交互數(shù)據(jù)偏差來(lái)衡量用戶相似性。進(jìn)一步,搭建用戶連通網(wǎng)絡(luò)進(jìn)行鄰域特征提取。

定義3用戶相似性。2 個(gè)用戶之間的相似性是指用戶的服務(wù)質(zhì)量數(shù)據(jù)的相似程度。具體地,用戶u和v之間的相似性為

其中,Ua表示與云APIa產(chǎn)生過(guò)交互的用戶u集合,λ表示用戶u和v所調(diào)用云API 的影響參數(shù)。用戶u和v的服務(wù)質(zhì)量偏差判定函數(shù)δ(ru,a,rv,a)為

其中,τ表示2 個(gè)用戶與同一個(gè)云API 交互產(chǎn)生的服務(wù)質(zhì)量偏差閾值,當(dāng)偏差超過(guò)τ時(shí),有理由認(rèn)為2 個(gè)用戶的服務(wù)質(zhì)量體驗(yàn)不同,用戶之間的相似性不強(qiáng)。當(dāng)2 個(gè)用戶之間的相似性夠強(qiáng)時(shí),即S(u,v)的值足夠大時(shí),會(huì)在用戶連通網(wǎng)絡(luò)圖中的2 個(gè)頂點(diǎn)(或用戶)之間創(chuàng)建一條邊。由于虛假用戶和真實(shí)用戶之間具有不同的相似性模式,因此可以利用距離閾值拉近相似性更強(qiáng)的用戶。但是這一階段計(jì)算的用戶距離不足以充分表示虛假用戶和真實(shí)用戶之間的差異。為了發(fā)現(xiàn)更深層和更穩(wěn)定的關(guān)系,利用Node2vec 算法基于用戶連通網(wǎng)絡(luò)圖對(duì)用戶的鄰域特征進(jìn)行進(jìn)一步提取。

Node2vec 算法同時(shí)考慮了網(wǎng)絡(luò)結(jié)構(gòu)的同質(zhì)性和結(jié)構(gòu)相似性[17],在隨機(jī)游走模型的基礎(chǔ)上,通過(guò)參數(shù)p和參數(shù)q控制隨機(jī)游走過(guò)程中的鄰域采樣策略。當(dāng)p> 1時(shí),偏向廣度優(yōu)先搜索(BFS,breadth first search)策略;當(dāng)q< 1時(shí),偏向深度優(yōu)先搜索(DFS,depth first search)策略。Node2vec 隨機(jī)游走采樣策略如圖2 所示,在廣度優(yōu)先采樣策略下,節(jié)點(diǎn)u1的向量與其鄰居節(jié)點(diǎn)u2~u5相近,表現(xiàn)出較大的同質(zhì)性;在深度優(yōu)先采樣策略下,首先通過(guò)深度延伸,節(jié)點(diǎn)u1的向量和u7的向量相近,表現(xiàn)出結(jié)構(gòu)的相似性。

圖2 Node2vec 隨機(jī)游走采樣策略

用戶鄰居信息嵌入是將用戶實(shí)體和鄰居關(guān)系參數(shù)化為向量表示。在搭建好的用戶連通網(wǎng)絡(luò)圖中,優(yōu)化的目標(biāo)是在給定目標(biāo)節(jié)點(diǎn)的條件下,使目標(biāo)節(jié)點(diǎn)和其鄰居節(jié)點(diǎn)同時(shí)出現(xiàn)的概率最大,確保當(dāng)前節(jié)點(diǎn)下一步能轉(zhuǎn)移到鄰居節(jié)點(diǎn)。因此,目標(biāo)函數(shù)為

其中,u表示任意節(jié)點(diǎn)(用戶),NS(u)表示采樣序列中節(jié)點(diǎn)u的鄰居節(jié)點(diǎn)。在一個(gè)節(jié)點(diǎn)游走序列中,任意節(jié)點(diǎn)出現(xiàn)的概率等于該節(jié)點(diǎn)之前的所有節(jié)點(diǎn)出現(xiàn)概率的乘積,具體形式為

假設(shè)一個(gè)節(jié)點(diǎn)作為源節(jié)點(diǎn)和作為近鄰節(jié)點(diǎn)時(shí)共享相同的特征向量空間。那么,式(6)中的條件概率式可進(jìn)一步表示為

其中,E(·) 是節(jié)點(diǎn)特征向量映射函數(shù),V是連通網(wǎng)絡(luò)圖中節(jié)點(diǎn)集合。綜上,式(5)中的目標(biāo)函數(shù)可更新為

3.2 服務(wù)質(zhì)量深度特征提取

自編碼器(AE,autoencoder)能夠從原始輸入中提取特征,其結(jié)構(gòu)通常包含輸入層、編碼層和解碼層。將服務(wù)質(zhì)量數(shù)據(jù)x作為AE 的輸入,并通過(guò)式(9)得到編碼作為隱式特征。

其中,fp表示編碼層的激活函數(shù),W(1)表示編碼層的權(quán)重矩陣,s表示編碼層偏置向量。

類似地,解碼層的向量可以通過(guò)式(10)來(lái)重構(gòu)輸入向量。

其中,fq表示解碼層的激活函數(shù),W(2)表示解碼層的權(quán)重矩陣,t表示解碼層的偏置向量。

AE 中的特征提取可以被描述為最小化輸入和輸出之間的誤差的過(guò)程,將AE 中的參數(shù)表示為Θ={W(1),W(2),s,t},AE 的目標(biāo)函數(shù)為

其中,L(·) 是輸入空間的損失函數(shù)。在目標(biāo)函數(shù)的推進(jìn)下更新所有參數(shù),獲得最優(yōu)解。

在進(jìn)行分類任務(wù)提取特征時(shí),原始的自編碼器只是簡(jiǎn)單地充當(dāng)恒等函數(shù),不能準(zhǔn)確反映訓(xùn)練服務(wù)質(zhì)量數(shù)據(jù)集的獨(dú)特統(tǒng)計(jì)特征。一般在重建訓(xùn)練數(shù)據(jù)的過(guò)程中,需要使隱藏層節(jié)點(diǎn)數(shù)小于輸入節(jié)點(diǎn)數(shù),但是也可以在增加隱藏層節(jié)點(diǎn)數(shù)的同時(shí),對(duì)其加入一定的稀疏限制來(lái)達(dá)到同樣的效果,確保每次得到的特征編碼盡量稀疏。

為了限制隱藏層節(jié)點(diǎn)數(shù)和活躍度,使大部分隱藏層的節(jié)點(diǎn)被抑制,小部分被激活,達(dá)到稀疏化數(shù)據(jù)特征的目的。本文采用稀疏自編碼器提取用戶服務(wù)質(zhì)量深度特征,故原始基于AE 的編碼和解碼過(guò)程式(9)和式(10)更新為

本文引入KL(Kullback-Leibler)散度為模型添加稀疏性限制,使隱藏層大部分節(jié)點(diǎn)的活躍度很小。因此,式(11)的重構(gòu)誤差可以進(jìn)一步表示為式(14),當(dāng)目標(biāo)函數(shù)J(SAE)(Θ)取最優(yōu)值時(shí),挖掘得到隱式特征。

其中,β表示懲罰因子,選取Sigmoid 函數(shù)作為激活函數(shù),神經(jīng)元的輸出接近激活函數(shù)上限1 時(shí),該神經(jīng)元狀態(tài)為激活;當(dāng)神經(jīng)元的輸出接近激活函數(shù)的下限0 時(shí),該神經(jīng)元狀態(tài)為抑制。那么當(dāng)某個(gè)約束或規(guī)則使神經(jīng)網(wǎng)絡(luò)中大部分神經(jīng)元的狀態(tài)為抑制時(shí),該約束為稀疏性限制,KL 散度作為交叉熵與信息熵的差值,其計(jì)算式為

3.3 解釋特征提取

服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊的特點(diǎn)在于,攻擊者在預(yù)測(cè)平臺(tái)上注入大量虛假用戶的服務(wù)質(zhì)量數(shù)據(jù),以獲取符合自身意圖的推薦結(jié)果。服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的脆弱性與其過(guò)于依賴底層交互數(shù)據(jù)(如用戶提交的服務(wù)質(zhì)量)來(lái)訓(xùn)練模型以及無(wú)法有效區(qū)分真實(shí)用戶和虛假用戶有關(guān)。由于解釋特征能很好地標(biāo)記帶給推薦系統(tǒng)性能變化的攻擊者,本文引入用戶數(shù)據(jù)加權(quán)平均偏差(WDMA,weighted deviation from mean agreement)uwdma作為用戶解釋特征,其具體形式為

其中,Nu表示所有與用戶u交互的云API 的數(shù)量,Na表示云APIa被調(diào)用的數(shù)量。用戶解釋特征uwdma能很好地衡量用戶對(duì)一組云API 的服務(wù)質(zhì)量相對(duì)于其他用戶的偏差,同時(shí)針對(duì)稀疏云API 的服務(wù)質(zhì)量偏差給予較高權(quán)重,平衡服務(wù)質(zhì)量稀疏性所帶來(lái)的問(wèn)題,帶來(lái)很高的信息增益。

3.4 虛假用戶檢測(cè)

鄰域特征提取模塊、服務(wù)質(zhì)量深度特征提取模塊和解釋特征提取模塊從多角度得到了用戶的多元嵌入表示,將多特征進(jìn)行融合作為最終虛假用戶檢測(cè)模塊的輸入,即

在虛假用戶檢測(cè)模塊中使用改進(jìn)的網(wǎng)格搜索算法[18]對(duì)SVM 模型中的超參數(shù)進(jìn)行優(yōu)化,通過(guò)窮舉搜索找到分類模型中的最優(yōu)參數(shù)。改進(jìn)的網(wǎng)格搜索算法流程如圖3 所示。

圖3 改進(jìn)的網(wǎng)格搜索算法流程

本文中使用的改進(jìn)的網(wǎng)格搜索算法將懲罰參數(shù)c和不同核函數(shù)中的核參數(shù)a分別取M和N個(gè)預(yù)設(shè)超參數(shù)值域,以笛卡兒積的形式生成M×N個(gè)(c,a)的參數(shù)組合,利用不同的參數(shù)組合訓(xùn)練不同的SVM 分類器,從而在M×N個(gè)參數(shù)組合中得到準(zhǔn)確率最高的分類器對(duì)應(yīng)的參數(shù)作為最優(yōu)參數(shù)。

4 算法設(shè)計(jì)

檢測(cè)方法NQI-Detector 將數(shù)據(jù)投毒攻擊檢測(cè)分為用戶特征提取和虛假用戶檢測(cè)2 個(gè)步驟。

4.1 用戶特征提取

用戶特征提取步驟如算法1 所示。

算法1用戶特征提取

算法1中第1)~7)行是計(jì)算用戶相似度,并構(gòu)建基于相似性的用戶連通網(wǎng)絡(luò)圖G。第8)~14)行是用戶鄰域特征的表示學(xué)習(xí),通過(guò)優(yōu)化學(xué)習(xí)參數(shù)計(jì)算節(jié)點(diǎn)采樣序列,得到節(jié)點(diǎn)采樣序列的向量化表示。第15)~18)行得到了用戶-云API 服務(wù)質(zhì)量深度特征表示,通過(guò)反向傳播訓(xùn)練稀疏自編碼器更新參數(shù)。第19)~20)行按照式(16)得到用戶解釋特征。

在時(shí)間復(fù)雜度方面,算法1 在生成用戶連通網(wǎng)絡(luò)圖G時(shí),第2)行遍歷|U|次,在第3)行計(jì)算目標(biāo)用戶u遍歷所有鄰居節(jié)點(diǎn)v∈U計(jì)算相似性,故第1)~7)行的時(shí)間復(fù)雜度為O(|U|2)。在用戶鄰域特征提取中,問(wèn)題規(guī)模為|U|,故第8)~14)行的時(shí)間復(fù)雜度為O(|U|)。第15)~20)行計(jì)算時(shí)間復(fù)雜度為O(1)。綜上,算法1 的時(shí)間復(fù)雜度為O(|U|2+|U|)。在空間復(fù)雜度方面,第1)~7)行需借助一個(gè)大小為|U|×|U|的輔助矩陣來(lái)存儲(chǔ)用戶連通網(wǎng)絡(luò)圖G,故其空間復(fù)雜度為O(|U|2)。在第8)~14)行提取用戶鄰域特征時(shí),需要借助2 個(gè)變量walk、walks 以及用戶鄰域特征向量與問(wèn)題規(guī)模即用戶集合U的大小無(wú)關(guān),故其空間復(fù)雜度為在第15)~20)行服務(wù)質(zhì)量深度特征和解釋特征提取中,僅需要借助3 個(gè)變量DN、SAE、uwdma以及用戶鄰域特征向量故其空間復(fù)雜度為綜上,算法1 的空間復(fù)雜度為

4.2 虛假用戶檢測(cè)

虛假用戶檢測(cè)步驟如算法2 所示。

算法2虛假用戶檢測(cè)

算法2 的第1)行將算法1 中提取的特征通過(guò)拼接操作進(jìn)行特征融合,第2)~12)行從網(wǎng)格優(yōu)化搜索中找到最合適的參數(shù),第13)~14)行利用訓(xùn)練得到的參數(shù)完成虛假用戶檢測(cè)。

在時(shí)間復(fù)雜度方面,算法2 采用改進(jìn)的網(wǎng)格優(yōu)化算法訓(xùn)練SVM,在第2)~5)行以嵌套方式通過(guò)2 個(gè)for 循環(huán)獲得SVM 最優(yōu)的懲罰參數(shù)c和核參數(shù)a。在第6)行訓(xùn)練SVM 執(zhí)行時(shí),需要遍歷第1)行獲取的用戶特征向量eu,故算法2 的時(shí)間復(fù)雜度為O(M×N×|eu|),其中,M為懲罰參數(shù)c的預(yù)設(shè)值集合的大小,N為核參數(shù)a的預(yù)設(shè)值集合的大小。在空間復(fù)雜度方面,算法2 第1)行需借助一個(gè)大小為|eu|的輔助數(shù)組存儲(chǔ)用戶特征向量,故其空間復(fù)雜度為O(|eu|)。第2)~12)行進(jìn)行SVM 模型訓(xùn)練時(shí),僅需借助 svmscore、bestscore和best_parameters 等變量,與問(wèn)題規(guī)模M×N無(wú)關(guān),故其空間復(fù)雜度為O(1)。綜上,算法2 的空間復(fù)雜度為O(|eu|)。

由于算法1 和算法2 以線性方式順序運(yùn)行,故NQI-Detector 整體的時(shí)間復(fù)雜度為O(|U|2+|U|+M×N×|eu|),空間復(fù)雜度為其中由于M、N和|eu|在算法實(shí)際執(zhí)行時(shí)均為有限值,故NQI-Detector 的時(shí)空復(fù)雜度主要依賴于問(wèn)題規(guī)模|U|,NQI-Detector 可應(yīng)用于大規(guī)模云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊檢測(cè)。另外在數(shù)據(jù)給定后,以預(yù)處理方式執(zhí)行算法1 進(jìn)行用戶特征提取,可進(jìn)一步提升NQI-Detector 對(duì)投毒攻擊檢測(cè)的整體時(shí)空效率。

5 實(shí)驗(yàn)與分析

5.1 實(shí)驗(yàn)準(zhǔn)備

1) 實(shí)驗(yàn)數(shù)據(jù)。本文實(shí)驗(yàn)數(shù)據(jù)來(lái)自真實(shí)世界的云API 服務(wù)質(zhì)量數(shù)據(jù)集WS-DREAM[19]。WS-DREAM記錄了真實(shí)世界的多個(gè)云API 被分布在不同地理位置的339 個(gè)用戶調(diào)用所產(chǎn)生的服務(wù)質(zhì)量數(shù)據(jù)。實(shí)驗(yàn)數(shù)據(jù)統(tǒng)計(jì)信息如表2 所示。

表2 實(shí)驗(yàn)數(shù)據(jù)統(tǒng)計(jì)信息

在開放網(wǎng)絡(luò)環(huán)境下,網(wǎng)絡(luò)中可用云API 數(shù)量很多,但是單個(gè)用戶通常只調(diào)用過(guò)少量云API,因此用戶-云API 服務(wù)質(zhì)量矩陣是十分稀疏的。為了使實(shí)驗(yàn)與真實(shí)的云API 應(yīng)用場(chǎng)景保持一致,在用戶-云API 服務(wù)質(zhì)量矩陣上采用A/B模式來(lái)稀疏化服務(wù)質(zhì)量數(shù)據(jù)集。

2) 參數(shù)設(shè)置。由于不同類別的服務(wù)質(zhì)量數(shù)據(jù)變化范圍不同,服務(wù)質(zhì)量偏差閾值τ的取值依賴于具體服務(wù)質(zhì)量類型。因此,在響應(yīng)時(shí)間數(shù)據(jù)集中設(shè)置偏差閾值τ=5,吞吐量數(shù)據(jù)集中設(shè)置偏差閾值τ固定為250。此外,SVM 模型懲罰參數(shù)c和核參數(shù)a在響應(yīng)時(shí)間數(shù)據(jù)集中設(shè)置為(5,0.5),在吞吐量數(shù)據(jù)集中設(shè)置為(20,0.5)。

3) 評(píng)價(jià)指標(biāo)。為了評(píng)估虛假用戶檢測(cè)效果,采用廣泛使用的準(zhǔn)確率(Precision)、召回率(Recall)和F1 值作為評(píng)價(jià)指標(biāo),分別定義如下

其中,TP 表示正確判斷出的正例數(shù)量,F(xiàn)P 表示被誤認(rèn)為正例的數(shù)量,F(xiàn)N 表示被誤認(rèn)為負(fù)例的數(shù)量。

4) 實(shí)驗(yàn)環(huán)境。硬件環(huán)境:英特爾處理器(四核),內(nèi)存32 GB。軟件環(huán)境:編程語(yǔ)言Python3.0,編程環(huán)境VS Code。

5.2 對(duì)比實(shí)驗(yàn)

考慮到目前還沒有專門的針對(duì)服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊檢測(cè)算法,為了證明所提方法檢測(cè)性能的準(zhǔn)確性和優(yōu)越性,選擇4 種先進(jìn)的數(shù)據(jù)投毒攻擊檢測(cè)算法,將其遷移到云API服務(wù)質(zhì)量感知推薦領(lǐng)域,進(jìn)行對(duì)比分析。4 種對(duì)比數(shù)據(jù)投毒攻擊檢測(cè)算法如下。

1) PCA-VarSelect[20]。典型的無(wú)監(jiān)督投毒攻擊檢測(cè)算法,可自動(dòng)構(gòu)建用戶特征,通過(guò)概率潛在語(yǔ)義分析(PLSA)找到具有相似偏好的用戶群體,結(jié)合PCA-VarSelect 從多元統(tǒng)計(jì)學(xué)角度重新描述評(píng)級(jí)矩陣。

2) Bayes-Detector[21]。一種有監(jiān)督虛假用戶檢測(cè)方法,利用矩陣分解為每個(gè)用戶構(gòu)建隱式特征,隨后使用貝葉斯模型生成潛在標(biāo)簽信息來(lái)更新隱式特征以完成虛假用戶檢測(cè)。

3) DL-DRA[22]。一種有監(jiān)督方法,使用雙三次插值算法減少評(píng)級(jí)矩陣的稀疏性,并使用結(jié)構(gòu)化深度學(xué)習(xí)網(wǎng)絡(luò)進(jìn)行檢測(cè)。

4) DSAE-EDM[23]。一種深度學(xué)習(xí)投毒攻擊集成檢測(cè)方法,直接采用深度自動(dòng)編碼器自動(dòng)提取用戶的潛在特征以達(dá)到攻擊檢測(cè)的效果。

為了驗(yàn)證所提方法能否很好地解決面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的數(shù)據(jù)投毒攻擊檢測(cè)問(wèn)題,實(shí)驗(yàn)分別在響應(yīng)時(shí)間數(shù)據(jù)集和吞吐量數(shù)據(jù)集上進(jìn)行數(shù)據(jù)投毒攻擊檢測(cè)方法的比較分析。此外,考慮到當(dāng)數(shù)據(jù)投毒攻擊規(guī)模較小時(shí),通常很難區(qū)分虛假用戶和真實(shí)用戶。在實(shí)驗(yàn)過(guò)程中,將攻擊強(qiáng)度設(shè)置為4%,攻擊規(guī)模分別設(shè)置為3%、5%、10%和25%,以F1 值為評(píng)價(jià)指標(biāo),實(shí)驗(yàn)結(jié)果如圖4 所示,具體分析如下。

圖4 不同數(shù)據(jù)投毒攻擊檢測(cè)方法的對(duì)比結(jié)果

1) 在攻擊強(qiáng)度確定的前提下,當(dāng)隨機(jī)攻擊的攻擊規(guī)模設(shè)置為3%時(shí),PCA-VarSelect 的F1 值低于0.8,無(wú)法有效區(qū)分真實(shí)用戶和虛假用戶。這是由于傳統(tǒng)攻擊檢測(cè)算法PCA-VarSelect 的數(shù)據(jù)降維過(guò)程是線性的,在恢復(fù)數(shù)據(jù)時(shí)會(huì)有一定程度的失真。NQI-Detector 能夠非線性提取用戶特征,在低攻擊強(qiáng)度下達(dá)到很好的效果。當(dāng)攻擊強(qiáng)度增大到25%時(shí),DSAE-EDM 和DL-DRA 都可以有效檢測(cè)。

2) 潮流攻擊中,在低攻擊規(guī)模下的響應(yīng)時(shí)間數(shù)據(jù)集中,DSAE-EDM和DL-DRA的F1值都不到0.85,沒有很好地完成虛假用戶的潮流攻擊檢測(cè)??紤]到具有相似情境的用戶所具備的服務(wù)質(zhì)量也相似,只挖掘服務(wù)質(zhì)量數(shù)據(jù)特征是不夠的,NQI-Detector 與DSAE-EDM 相比,構(gòu)建了基于相似性的連通網(wǎng)絡(luò),增加了對(duì)用戶鄰域特征的挖掘,達(dá)到了強(qiáng)化用戶特征的目的,不但克服了傳統(tǒng)的人工檢測(cè)特征在面對(duì)不同類別的攻擊時(shí)所展現(xiàn)出來(lái)的普適性不強(qiáng)的問(wèn)題,而且增加了虛假用戶識(shí)別的準(zhǔn)確性。

3) 均值攻擊下吞吐量數(shù)據(jù)集的檢測(cè)任務(wù)的完成情況要明顯好于響應(yīng)時(shí)間數(shù)據(jù)集,其原因可能在于均值攻擊自身的攻擊特點(diǎn),由于現(xiàn)實(shí)因素,吞吐量數(shù)據(jù)集的數(shù)據(jù)范圍遠(yuǎn)大于響應(yīng)時(shí)間數(shù)據(jù)集,導(dǎo)致依靠求取均值完成虛假用戶填充項(xiàng)的均值攻擊會(huì)更大地偏離真實(shí)用戶的服務(wù)質(zhì)量,這有利于幾種虛假用戶檢測(cè)算法捕獲到更明顯的用戶特征,從而取得更優(yōu)的效果。

5.3 不同攻擊強(qiáng)度下的檢測(cè)效果分析

本節(jié)實(shí)驗(yàn)通過(guò)對(duì)云API 服務(wù)質(zhì)量數(shù)據(jù)集注入不同攻擊強(qiáng)度的數(shù)據(jù)投毒攻擊來(lái)評(píng)價(jià)NQI-Detector 的性能,設(shè)置攻擊規(guī)模為5%。所提方法固定攻擊規(guī)模為5%的虛假用戶時(shí),分別注入不同攻擊強(qiáng)度(4%、8%、12%和16%)的隨機(jī)攻擊、潮流攻擊以及均值攻擊的數(shù)據(jù)投毒攻擊檢測(cè)結(jié)果如圖5 所示。從圖 5 可以看出,隨著攻擊強(qiáng)度的增大,NQI-Detector 的召回率和準(zhǔn)確率會(huì)逐漸提高,檢測(cè)效果逐步增強(qiáng)。這也與具有較高攻擊強(qiáng)度的數(shù)據(jù)投毒攻擊更容易檢測(cè)出攻擊行為的預(yù)期一致。

圖5 不同攻擊強(qiáng)度下的檢測(cè)結(jié)果

5.4 不同攻擊規(guī)模下的檢測(cè)效果分析

本節(jié)實(shí)驗(yàn)通過(guò)對(duì)云API 服務(wù)質(zhì)量數(shù)據(jù)集注入不同攻擊規(guī)模的數(shù)據(jù)投毒攻擊來(lái)評(píng)價(jià)NQI-Detector 的性能,設(shè)置數(shù)據(jù)投毒攻擊強(qiáng)度為4%,NQI-Detector對(duì)不同攻擊規(guī)模的3 種攻擊在不同評(píng)價(jià)指標(biāo)下檢測(cè)效果對(duì)比如圖6 所示。

圖6 不同攻擊規(guī)模下的檢測(cè)結(jié)果

一般情況下,注入5%規(guī)模的數(shù)據(jù)投毒攻擊已經(jīng)消耗了惡意用戶很高的知識(shí)成本,選擇攻擊規(guī)模分別為3%、5%、7%、10%。從圖6 可以看出,在較小和較大的攻擊規(guī)模下,NQI-Detector 依然保持良好的檢測(cè)能力,這也驗(yàn)證了其在云API 服務(wù)質(zhì)量數(shù)據(jù)集上的檢測(cè)有效性。在圖6(c)和圖6(f)的F1 值檢測(cè)結(jié)果中,NQI-Detector 對(duì)潮流攻擊的檢測(cè)性能低于均值攻擊的性能指標(biāo)。這是因?yàn)椴捎贸绷鞴羯商摷儆脩魰r(shí),攻擊者利用賦予流行云API 更優(yōu)的服務(wù)質(zhì)量來(lái)包裝自己,將自己偽裝成經(jīng)常使用流行云API 的真實(shí)用戶,使檢測(cè)方法不易檢測(cè)出來(lái)。此外,由于隨機(jī)攻擊在生成虛假用戶時(shí),虛假用戶與云API交互產(chǎn)生的服務(wù)質(zhì)量值具有不確定性,繼而導(dǎo)致了隨機(jī)攻擊和潮流攻擊、均值攻擊之間的檢測(cè)結(jié)果關(guān)系是不固定的。

5.5 敏感特征消融實(shí)驗(yàn)分析

為了進(jìn)一步研究所提取的3 個(gè)檢測(cè)特征的有效性,本節(jié)將設(shè)計(jì)6 個(gè)消融變體實(shí)驗(yàn),以分析這些特征對(duì)提高數(shù)據(jù)投毒攻擊檢測(cè)的準(zhǔn)確率是否有正向影響。給出組件x∈{N,S,W,NS,NW,SW},其中,N、S和W分別表示NS、NW和SW 分別表示相應(yīng)特征組合,使用NQI-x表示實(shí)驗(yàn)對(duì)照組沒有嵌入對(duì)應(yīng)組件。表3 和表4 展示了在響應(yīng)時(shí)間數(shù)據(jù)集和吞吐量數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果,攻擊強(qiáng)度設(shè)置為4%,攻擊規(guī)模設(shè)置為10%。

表3 在響應(yīng)時(shí)間數(shù)據(jù)集上消融變體實(shí)驗(yàn)對(duì)比結(jié)果

表4 在吞吐量數(shù)據(jù)集上消融變體實(shí)驗(yàn)對(duì)比結(jié)果

如表3 和表4 所示,NQI-N相對(duì)于NQI-S和NQI-W表現(xiàn)較差,這表明用戶鄰域特征在檢測(cè)任務(wù)中起到了主要作用。此外NQI-NS 在面對(duì)各類投毒攻擊時(shí)性能最差,這表明解釋特征在單獨(dú)應(yīng)用于檢測(cè)時(shí)表現(xiàn)出了較差的性能。然而,將解釋特征和服務(wù)質(zhì)量深度特征相結(jié)合可以有效地檢測(cè)攻擊者,這種改進(jìn)在響應(yīng)時(shí)間數(shù)據(jù)集上表現(xiàn)并不明顯,但是在吞吐量數(shù)據(jù)集上,這2 種特征的結(jié)合更加有效。

5.6 提取特征可視化分析

Bayes-Detector 作為先進(jìn)的使用隱式特征進(jìn)行數(shù)據(jù)投毒攻擊檢測(cè)的方法。5.2 節(jié)實(shí)驗(yàn)結(jié)果表明所提NQI-Detector 比Bayes-Detector 方法更加有效。為了探究這一原因,采用可視化方法來(lái)分析所提取的用戶特征表示。本節(jié)實(shí)驗(yàn)使用Maaten 等[24]提出的T-SNE(T-distributed stochastic neighbor embedding)對(duì)提取的特征可視化處理,T-SNE 將高維數(shù)據(jù)內(nèi)部的特征放大,使相似的數(shù)據(jù)在低維中距離更近,不相似的數(shù)據(jù)在低維中距離更遠(yuǎn)。使用T-SNE 分析2 種方法所提取的服務(wù)質(zhì)量數(shù)據(jù)集上的用戶特征,響應(yīng)時(shí)間數(shù)據(jù)集和吞吐量服務(wù)質(zhì)量數(shù)據(jù)集上2 種數(shù)據(jù)投毒攻擊檢測(cè)方法所提取的用戶特征的視化結(jié)果如圖7 所示。

圖7 不同服務(wù)質(zhì)量數(shù)據(jù)集下的用戶特征可視化分析

從圖 7 可知,與 Bayes-Detector 相比,NQI-Detector 所提取的用戶特征中重疊的用戶數(shù)量更少,相似用戶的特征分布更緊密,虛假用戶與真實(shí)用戶之間的邊界更清晰。因此,NQI-Detector 在檢測(cè)云API 服務(wù)質(zhì)量數(shù)據(jù)集中的虛假用戶時(shí)更有效。

6 結(jié)束語(yǔ)

為了解決服務(wù)質(zhì)量感知云API 推薦系統(tǒng)中的數(shù)據(jù)投毒攻擊問(wèn)題,本文提出了一種面向服務(wù)質(zhì)量感知云API 推薦系統(tǒng)的基于多特征融合的數(shù)據(jù)投毒攻擊檢測(cè)方法。首先,根據(jù)設(shè)計(jì)的相似性函數(shù)構(gòu)建了用戶連通網(wǎng)絡(luò)圖,利用Node2vec 算法通過(guò)圖上的隨機(jī)游走捕獲用戶鄰域特征;其次,從服務(wù)質(zhì)量數(shù)據(jù)視角,利用稀疏自編碼器挖掘用戶服務(wù)質(zhì)量深度特征表示,并構(gòu)建了用戶解釋特征。然后,采用特征嵌入技術(shù)連接用戶的鄰域特征、服務(wù)質(zhì)量深度特征與解釋特征,實(shí)現(xiàn)了用戶的多元嵌入表示。在此基礎(chǔ)上,結(jié)合網(wǎng)格搜索優(yōu)化虛假用戶檢測(cè)器,提升高維稀疏環(huán)境下虛假用戶的檢測(cè)效果。最后,從多個(gè)方面進(jìn)行實(shí)驗(yàn),系統(tǒng)地分析了所提出的數(shù)據(jù)投毒攻擊檢測(cè)方法在服務(wù)質(zhì)量感知云API 推薦系統(tǒng)中的有效性。

猜你喜歡
投毒復(fù)雜度特征提取
基于樣本原生特征的投毒防御方法
一種低復(fù)雜度的慣性/GNSS矢量深組合方法
基于Daubechies(dbN)的飛行器音頻特征提取
電子制作(2018年19期)2018-11-14 02:37:08
求圖上廣探樹的時(shí)間復(fù)雜度
Bagging RCSP腦電特征提取算法
某雷達(dá)導(dǎo)51 頭中心控制軟件圈復(fù)雜度分析與改進(jìn)
出口技術(shù)復(fù)雜度研究回顧與評(píng)述
基于MED和循環(huán)域解調(diào)的多故障特征提取
投毒兇手
把投毒看作“開玩笑”是情感荒漠化表現(xiàn)
平度市| 赤峰市| 元阳县| 大石桥市| 蒙阴县| 尤溪县| 遵化市| 玉溪市| 平阴县| 泾阳县| 交城县| 宜宾县| 贡山| 休宁县| 苍溪县| 大方县| 来安县| 连云港市| 凤凰县| 安岳县| 屏山县| 四会市| 安阳市| 蕲春县| 全州县| 郸城县| 虎林市| 铜川市| 冷水江市| 枞阳县| 金寨县| 达日县| 定陶县| 西和县| 金溪县| 万山特区| 化州市| 徐水县| 宜丰县| 当阳市| 阳山县|