亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        推薦系統(tǒng)中的隱私保護(hù)矩陣分解算法研究

        2021-05-14 03:58:10崔煒榮徐龍華杜承烈
        關(guān)鍵詞:用戶信息模型

        崔煒榮 徐龍華 杜承烈 李 寶

        1(安康學(xué)院電子與信息工程學(xué)院 陜西 安康 725000) 2(西北工業(yè)大學(xué)計(jì)算機(jī)學(xué)院 陜西 西安 710072)

        0 引 言

        當(dāng)今社會(huì),互聯(lián)網(wǎng)中的各類信息都在以難以預(yù)知的速率爆炸式地增長,人類社會(huì)也隨之從“信息匱乏”狀態(tài)步入到“信息過載”狀態(tài)。越來越多的用戶在超過其處理能力的大量信息面前顯得無所適從,很容易迷失在信息的海洋中。為了解決“信息過載”這一問題,使得用戶可以在海量的數(shù)據(jù)中快速、準(zhǔn)確地得到有用的信息,推薦系統(tǒng)應(yīng)運(yùn)而生。推薦系統(tǒng)能夠根據(jù)用戶的歷史行為構(gòu)建模型,預(yù)測用戶對(duì)特定物品的態(tài)度并根據(jù)其預(yù)測向用戶進(jìn)行推薦。在推薦算法不斷成熟和推薦系統(tǒng)被廣泛應(yīng)用的同時(shí),其面臨的隱私安全問題也日益凸顯[1]。本質(zhì)上,為了獲得滿意的推薦服務(wù),用戶需要向推薦系統(tǒng)提供個(gè)人信息。因此,相比其他網(wǎng)絡(luò)信息服務(wù),推薦系統(tǒng)更加具有天然的隱私不友好性。推薦系統(tǒng)面臨的隱私安全風(fēng)險(xiǎn)主要在于:(1) 服務(wù)提供商可以直接利用用戶所提交的數(shù)據(jù)獲得用戶的個(gè)人信息,從而確認(rèn)用戶的身份、興趣愛好等敏感信息;(2) 由于推薦系統(tǒng)所收集的數(shù)據(jù)的稀疏特性,利用推薦系統(tǒng)發(fā)布的聚合數(shù)據(jù),攻擊者可以有效推測出用戶的敏感信息[1-2]。在如今人們越來越關(guān)心個(gè)人隱私安全的大背景下,如何在保證可用性的前提下引入合理的隱私保護(hù)機(jī)制也成為了有關(guān)推薦系統(tǒng)研究的熱點(diǎn)問題。

        當(dāng)前,基于矩陣分解的協(xié)同過濾(Matrix Factorization Collaborative Filtering,MFCF)[3]是最為主流的推薦算法,該類算法從用戶-物品評(píng)分矩陣中挖掘出潛在的用戶特征向量及物品特征向量,并通過向量相似度預(yù)測用戶對(duì)物品的評(píng)價(jià)。相比其他方法,MFCF方法能夠提供更高的預(yù)測準(zhǔn)確度、更快的計(jì)算效率,以及更高的可擴(kuò)展性。

        本文針對(duì)MFCF推薦系統(tǒng)中的隱私保護(hù)問題展開研究, 提出一種基于分布式計(jì)算架構(gòu)和梯度混淆的隱私矩陣分解算法,稱之為DGCMF(Distributed Gradient Confusion Matrix Factorzation)。與現(xiàn)有的隱私保護(hù)MFCF方法相比,DGCMF不僅可以防止用戶評(píng)分和模型泄露,還可以防止用戶“評(píng)價(jià)行為”是否存在這一信息的泄露,從而為用戶隱私提供更強(qiáng)有力的保障。

        1 相關(guān)工作

        在先前的研究中,在推薦系統(tǒng)中增強(qiáng)隱私保護(hù)的方式主要分為以下三類:

        1) 混淆和擾動(dòng)。該方式通過在用戶數(shù)據(jù)中增加偽造值以達(dá)到隱藏真實(shí)用戶數(shù)據(jù)的目的。文獻(xiàn)[4-5]中所提出的隱私保護(hù)推薦算法均基于該方式構(gòu)建,使得用戶可以對(duì)數(shù)據(jù)在本地進(jìn)行加擾,從而對(duì)服務(wù)器隱藏真實(shí)的數(shù)據(jù)。但上述方法主要的問題在于:從安全性角度,上述加擾效果并未得到嚴(yán)格證明;從可用性角度上,上述方法在增強(qiáng)隱私保護(hù)的同時(shí)較大地犧牲了系統(tǒng)的推薦準(zhǔn)確度。

        2) 差分隱私。差分隱私保護(hù)的本質(zhì)也是通過在計(jì)算過程中引入特定分布的噪聲以達(dá)到保護(hù)原始數(shù)據(jù)的效果。但與簡單的混淆和擾動(dòng)不同,差分隱私保護(hù)可以提供能被度量和證明的隱私保障。文獻(xiàn)[6]首次將差分隱私保護(hù)的概念引入了推薦系統(tǒng),隨后多項(xiàng)研究在其基礎(chǔ)上展開[7-11]。

        3) 同態(tài)加密。同態(tài)加密技術(shù)可以使得用戶在不必解密的情況下對(duì)密文內(nèi)容進(jìn)行計(jì)算,被廣泛應(yīng)用于各類隱私保護(hù)場景中。文獻(xiàn)[11-13]所設(shè)計(jì)的推薦系統(tǒng)均基于同態(tài)加密技術(shù)方案實(shí)現(xiàn)了隱私保護(hù)。使用同態(tài)加密最大的障礙在于其相對(duì)較高的計(jì)算開銷。特別是當(dāng)數(shù)據(jù)量較大時(shí),效率和能耗成為限制其可用性的關(guān)鍵因素。

        上述文獻(xiàn)中的方法主要針對(duì)用戶評(píng)分和推薦模型的保護(hù)。然而,它們共同缺乏的是對(duì)“存在性”的保護(hù)。也就是說,即便是無法得知用戶的具體評(píng)分,服務(wù)器也依然可以在與用戶的交互計(jì)算過程中知道用戶對(duì)哪些物品進(jìn)行了評(píng)價(jià)。利用這些信息,服務(wù)器仍然可以推測出用戶的偏好、個(gè)人特征等隱私信息。與上述方法相比,本文方法除了能夠?qū)崿F(xiàn)對(duì)用戶數(shù)據(jù)以及模型的保護(hù)外,也能夠?qū)崿F(xiàn)對(duì)用戶評(píng)分“存在性”的保護(hù)。

        與本文最為相似的工作來自文獻(xiàn)[14],作者提出了名為SDMF的隱私保護(hù)矩陣分解方法。SDMF通過在梯度更新過程中引入隨機(jī)響應(yīng)機(jī)制實(shí)現(xiàn)對(duì)用戶評(píng)分、模型、存在性的保護(hù)。然而,這種方法在梯度下降優(yōu)化過程中造成梯度更新?lián)p失,降低了所生成模型的預(yù)測準(zhǔn)確性。與之相比,DGCMF中的梯度混淆是無損的,因此既能夠有效保護(hù)用戶隱私,也能夠保證系統(tǒng)的推薦準(zhǔn)確性。

        2 系統(tǒng)模型與問題描述

        2.1 系統(tǒng)模型與假設(shè)

        圖1 系統(tǒng)模型

        2.2 隱私保護(hù)需求

        本文算法應(yīng)滿足如下隱私保護(hù)需求:

        2) 評(píng)分保護(hù):在模型的計(jì)算過程中,服務(wù)器無法獲知每個(gè)用戶的歷史評(píng)分。

        3) 存在性保護(hù):在模型的計(jì)算過程中,服務(wù)器無法獲知用戶是否對(duì)某個(gè)物品作出評(píng)分。

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

        3.1 總體設(shè)計(jì)

        本文算法實(shí)現(xiàn)了分布式架構(gòu)下的貝葉斯概率矩陣分解。算法架構(gòu)如圖2所示,主要符號(hào)及其含義見表1。

        圖2 算法框圖

        表1 主要符號(hào)及含義

        計(jì)算過程由初始化和迭代優(yōu)化兩部分組成??蛻舳撕头?wù)器端分別對(duì)W和H完成初始化后便進(jìn)入迭代優(yōu)化環(huán)節(jié)。本文算法采用了SGLD(Stochastic Gradient Langevin Dynamics)優(yōu)化算法。SGLD所增加的高斯噪聲為系統(tǒng)引入了差分隱私保障,能夠有效防止模型泄露。

        在迭代優(yōu)化環(huán)節(jié)的每一輪迭代過程中,每一個(gè)用戶ui首先從服務(wù)器端下載更新后的H,之后根據(jù)自己的評(píng)分?jǐn)?shù)據(jù)ri計(jì)算和wi每一個(gè)hj(rij≠?)的更新梯度grad(wi)和grad(hj)。接著,ui利用grad(wi)對(duì)wi進(jìn)行更新。對(duì)grad(hj)進(jìn)行梯度混淆后將其發(fā)送至服務(wù)器端。服務(wù)器收到每一個(gè)用戶發(fā)來的梯度更新信息后,將其聚合并最終更新H。

        由于每輪迭代中,服務(wù)器只收到用戶發(fā)來的物品隱藏因子向量梯度信息,從而防止了用戶評(píng)分泄露。梯度混淆的加入進(jìn)一步隱藏了梯度信息中用戶和被評(píng)分物品的聯(lián)系,實(shí)現(xiàn)了“存在性”保護(hù)。

        3.2 梯度更新算法

        p(W,H|R,λr,Λw,Λh)∝

        p(R|W,H,λr)p(W|Λw)p(H|Λh)

        (1)

        式中:λr為全局正則化參數(shù),Λw和Λh是基于Gamma分布生成的對(duì)角矩陣,用于隱藏因子向量wi和hj的正則化處理。采用正態(tài)分布假設(shè),則式(1)的對(duì)數(shù)形式為:

        F(W,H)=lnp(R,λr,Λw,Λh)=

        lnp(R|W,H,λr)+lnp(W|Λw)+

        lnp(H|Λh)+C=

        (2)

        式中:C為常數(shù);N表示正態(tài)分布。為了求得W和H的最大后驗(yàn)估計(jì),本文采用SGLD優(yōu)化算法進(jìn)行迭代求解。具體而言,在第t次迭代中:

        (3)

        (4)

        (5)

        (6)

        (7)

        (8)

        用戶ui發(fā)送gradui(hj)至服務(wù)器。由于服務(wù)器僅得知梯度信息,因此防止了用戶隱藏因子向量的泄露。

        3.3 梯度混淆算法

        采用上述架構(gòu),雖然在迭代優(yōu)化過程中服務(wù)器僅能從客戶端得到H的加擾梯度更新信息且無法從中推斷出用戶的隱藏因子向量,然而服務(wù)器依然可以根據(jù)這些信息獲知用戶對(duì)哪些物品進(jìn)行了評(píng)價(jià)。例如當(dāng)服務(wù)器收到來自用戶ui的梯度更新信息gradui(hj)時(shí),根據(jù)hj和物品vj的對(duì)應(yīng)關(guān)系,可知用戶ui一定對(duì)vj進(jìn)行了評(píng)價(jià)。為了避免這種“存在性”用戶信息泄露,本文基于安全求和思想設(shè)計(jì)了梯度混淆過程。

        在梯度混淆的過程中,對(duì)于每一個(gè)計(jì)算出的梯度更新信息gradu(hj),用戶u以一定概率選擇將其值發(fā)送給隨機(jī)選取的另一用戶,并隨后將其置零。收到gradu(hj)的用戶u′將其與自身的gradu′(hj)相加。舉例而言,假設(shè)用戶u計(jì)算出的梯度值分別為gradu(hj1),gradu(hj2),…,gradu(hjq),SG為空集,則u依據(jù)算法1實(shí)施混淆。

        算法1梯度混淆

        fort=j1tojq

        據(jù)概率f選取gradu(ht)

        ifgradu(ht)被選中then

        SG←SG∪{gradu(ht)}

        gradu(ht)←0

        end if

        end for

        經(jīng)過上述的梯度混淆處理后,u將篩選出來的梯度更新值集合SG發(fā)送給隨機(jī)選取的用戶u′。收到SG后,對(duì)于每一個(gè)gradu(hj)∈SG,u′將其與自身的對(duì)應(yīng)梯度更新值進(jìn)行合并,即計(jì)算混淆梯度:

        (9)

        圖3描述了這一個(gè)過程。其中行向量表示用戶在第t次迭代過程中所計(jì)算并分解的梯度更新信息。值為0表示用戶并未對(duì)hj進(jìn)行過單類評(píng)價(jià)。曲線箭頭表示以一定的概率選取并發(fā)送。以u(píng)2為例,在該輪迭代中,其根據(jù)概率fu2選取了梯度更新值gradu2(h1),并將其發(fā)送至隨機(jī)選取的用戶u1。同時(shí),u1根據(jù)概率fu1選取了梯度更新值gradu1(h3),將其發(fā)送給u2。u3根據(jù)概率fu3選取了梯度更新值gradu3(h2),也將其發(fā)送給了u2。最終,u2生成混淆梯度(0,gradu3(h2),gradu2(h2)+gradu1(h3),0)。每輪迭代完成后,u2將混淆后的梯度更新值發(fā)送至服務(wù)器。

        圖3 梯度混淆過程

        (10)

        h3=h3+grad(h3)

        (11)

        3.4 算法流程

        基于分布式架構(gòu),本文算法由客戶端算法client(u,t)和服務(wù)器端算法server兩部分組成,流程分別如算法2和算法3所示。

        算法2client(u,t)

        輸入:Ri,η0,r,Λw,Λh。

        1. ift=0 then初始化wi

        2. ift>0 then

        3. 從服務(wù)器下載H

        5.count▽u←0

        //count▽u用來對(duì)值不為0的Rij進(jìn)行計(jì)數(shù)

        9. ifR≠0 then

        11.count←count+1

        13. end if

        14. end for

        16. 生成概率參數(shù)f∈[0,1]

        22. end if

        23. end if

        24. end for

        26. for每一個(gè)收到的來自其他用戶的SG:

        29. end for

        30. end for

        32. end if

        算法2中,用戶首先更新了學(xué)習(xí)速率(第7行);接著根據(jù)評(píng)分向量Rij、wi和H計(jì)算出wi的更新梯度和被評(píng)分物品對(duì)應(yīng)的hj的更新梯度(第8至14行);之后更新wi(第15行)并進(jìn)行梯度混淆(第16至29行);最后將經(jīng)過混淆的梯度值發(fā)送給服務(wù)器(第31行)。

        算法3server

        輸出:物品隱藏因子矩陣H。

        1. 初始化H

        2.t←0

        4. 遠(yuǎn)程調(diào)用client(ui,t)

        5. end for

        6.t←1

        7. while 沒有收斂 do:

        11. 遠(yuǎn)程調(diào)用client(ui,t)

        12. end for

        13. while Ture do:

        18. end for

        20. break

        21. end if

        21. end while

        24. end for

        26.t←t+1

        27. end while

        算法3中,服務(wù)器在初始化H之后,遠(yuǎn)程啟動(dòng)每個(gè)客戶端的初始化過程(第1至5行)。之后進(jìn)入迭代優(yōu)化環(huán)節(jié)。在每輪迭代中,首先下發(fā)H并調(diào)用客戶端的梯度更新方法(第10至12行)。待全部用戶完成更新計(jì)算并回傳物品隱藏因子向量梯度更新值后,對(duì)其進(jìn)行聚合并完成H的更新(第13至25行)。

        4 安全性分析

        根據(jù)2.2節(jié)所述,本文算法應(yīng)當(dāng)滿足模型、評(píng)分和存在性三方面的隱私保護(hù)需求。

        4.1 模型保護(hù)

        4.2 評(píng)分保護(hù)

        與采用集中式架構(gòu)的MF算法不同,在本文中,作為最為重要的隱私數(shù)據(jù)的用戶歷史評(píng)分并沒有被服務(wù)器所收集,而是分別被保存在各個(gè)客戶端。在迭代計(jì)算過程中,用戶ui的歷史評(píng)分ri只參與了預(yù)測誤差eij的計(jì)算,且服務(wù)器無法從接收到的混淆梯度更新信息中推導(dǎo)出ri。根據(jù)以上分析,在模型的計(jì)算過程中,服務(wù)器無法獲知每個(gè)用戶的歷史評(píng)分。

        4.3 存在性保護(hù)

        此外,由于每一個(gè)用戶在每一輪迭代末都依據(jù)實(shí)時(shí)隨機(jī)生成的選擇概率f進(jìn)行了混淆(算法2第16行)。因此服務(wù)器無法從所收集的用戶梯度更新值序列中推測出用戶是否對(duì)某一物品進(jìn)行過評(píng)價(jià),從而實(shí)現(xiàn)了存在性保護(hù)。

        5 實(shí) 驗(yàn)

        在算法2和算法3的基礎(chǔ)上,使用Python開發(fā)了系統(tǒng)原型。為了評(píng)估系統(tǒng)的可用性,將其與文獻(xiàn)[15]中提出的SDMF方法進(jìn)行了對(duì)比。

        5.1 原型構(gòu)造方法

        協(xié)議原型基于Python3.6+TensorFlow2.0開發(fā),主要由Server類和User類組成,Sever類是對(duì)服務(wù)器的模擬,其中主要包含的屬性有物品隱藏因子矩陣H,主要包含的方法有聚合梯度更新(針對(duì)H)。User類是對(duì)用戶的模擬,其中主要包含的屬性有用戶ID、評(píng)分向量r和隱藏因子向量w,主要包含的方法有梯度更新和梯度混淆方法。梯度更新方法中調(diào)用了TensorFlow框架Stochastic Gradient Langevin Dynamics模塊實(shí)現(xiàn)SGLD優(yōu)化過程。

        模擬運(yùn)行的每一輪迭代中,服務(wù)器實(shí)例依照算法3依次調(diào)用每一個(gè)用戶實(shí)例的梯度更新方法。每一個(gè)用戶實(shí)例依照算法2進(jìn)行w梯度更新,并將經(jīng)過混淆后的h梯度傳回給服務(wù)器實(shí)例,由服務(wù)器實(shí)例進(jìn)行聚合并調(diào)用梯度更新方法更新H。

        5.2 數(shù)據(jù)集及實(shí)驗(yàn)方法

        使用了3個(gè)公共評(píng)分?jǐn)?shù)據(jù)集進(jìn)行實(shí)驗(yàn),具體包括:兩個(gè)MovieLens數(shù)據(jù)集(ML-100K和ML-1M),一個(gè)Netflix數(shù)據(jù)子集(包含10 000個(gè)用戶和5 000個(gè)物品)[16]針對(duì)上述每一個(gè)數(shù)據(jù)集,將其隨機(jī)劃分為占比80%的訓(xùn)練集和占比20%的測試集,訓(xùn)練集中的20%作為驗(yàn)證集。具體的超參數(shù)設(shè)置為:k=50,r=0.6,(Λw,Λh)~Gamma(1,100)。初始學(xué)習(xí)速率η0分別為5×10-6(ML-100K)、5×10-7(ML-1M)、5×10-7(Netflix)。對(duì)于SDMF,選取了(εI=0.25,εg=4)和(εI=0.25,εg=1)作為兩組差分隱私配置參數(shù)。

        5.3 結(jié)果及分析

        在ML-100K、ML-1M和Netfilx數(shù)據(jù)集上的學(xué)習(xí)曲線如圖4所示。

        圖4 實(shí)驗(yàn)結(jié)果

        可以清楚地看到,對(duì)于SDMF而言,參數(shù)ε值越小,則系統(tǒng)可以提供越強(qiáng)的差分隱私保障,但其預(yù)測準(zhǔn)確度就越低。此外,盡管SDMF和DGCMF都可以實(shí)現(xiàn)模型保護(hù)、用戶評(píng)分保護(hù)和存在性保護(hù),但可以看出,DGCMF所生成的模型預(yù)測準(zhǔn)確性明顯高于SDMF所生成的模型。這是由于本文所設(shè)計(jì)的DGCMF和SDMF在存在性保護(hù)方面采取了不同的混淆機(jī)制。SDMF采用基于隨機(jī)響應(yīng)的方式模糊用戶的評(píng)價(jià)行為。在每輪迭代中,用戶根據(jù)一定的概率設(shè)定,選擇是否計(jì)算某一已打分物品的隱藏因子向量梯度。此外,用戶還有可能偽造未打分物品的隱藏因子向量梯度。這種混淆方式本質(zhì)上是有損的,因此會(huì)對(duì)系統(tǒng)的準(zhǔn)確性造成負(fù)影響。而DGCMF所采用的方式能夠在隱藏“存在性”的同時(shí)確保其混淆行為是無損的,從而在實(shí)現(xiàn)隱私保護(hù)的同時(shí)最大限度地保障推薦準(zhǔn)確度。

        6 結(jié) 語

        針對(duì)協(xié)同過濾推薦系統(tǒng)中的隱私保護(hù)問題,本文設(shè)計(jì)DGCMF算法。在DGCMF中,矩陣分解過程由各個(gè)客戶端和服務(wù)器共同配合完成。由于服務(wù)器只能收到來自客戶端的物品隱藏因子向量梯度,從而避免了用戶評(píng)分和模型的泄露。此外,客戶端對(duì)所要上傳給服務(wù)器的梯度更新信息進(jìn)行了混淆,實(shí)現(xiàn)了對(duì)用戶評(píng)分“存在性”的保護(hù)。與現(xiàn)有方法相比,DGCMF的梯度混淆過程不會(huì)造成梯度更新?lián)p失,在實(shí)現(xiàn)隱私保護(hù)的同時(shí)能夠提供更好的推薦準(zhǔn)確度。今后,將針對(duì)如何進(jìn)一步提高模型的準(zhǔn)確度和生成效率展開研究,以期在安全性和效率兩方面達(dá)到更優(yōu)的權(quán)衡。

        猜你喜歡
        用戶信息模型
        一半模型
        重要模型『一線三等角』
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        訂閱信息
        中華手工(2017年2期)2017-06-06 23:00:31
        關(guān)注用戶
        商用汽車(2016年11期)2016-12-19 01:20:16
        3D打印中的模型分割與打包
        關(guān)注用戶
        商用汽車(2016年6期)2016-06-29 09:18:54
        關(guān)注用戶
        商用汽車(2016年4期)2016-05-09 01:23:12
        如何獲取一億海外用戶
        展會(huì)信息
        久久久久中文字幕无码少妇| 国内精品久久久久国产盗摄| 国产av综合影院| 自拍欧美日韩| 久久精品国产亚洲av蜜桃av| av黄色在线免费观看| 亚洲av无码乱码在线观看裸奔| 日本少妇人妻xxxxx18| 成人精品免费av不卡在线观看| 亚洲高清一区二区精品| 国产精品无码人妻在线| 亚洲色大成网站www永久一区 | 曰本女人与公拘交酡免费视频| 亚洲欧洲日产国码无码| 91亚洲免费在线观看视频| 18国产精品白浆在线观看免费| 免费人成视频在线观看网站| 欧美黑人xxxx性高清版| 国产自拍视频免费在线观看| 国产精品日本一区二区在线播放| 国产成人精品一区二区视频| 亚洲一区不卡在线导航| 日韩精品视频在线观看无| wwww亚洲熟妇久久久久| 中文文精品字幕一区二区| 日本骚色老妇视频网站| 成人日韩精品人妻久久一区| 国产精品18久久久久久麻辣| 日韩在线精品在线观看| 麻豆成人久久精品一区| 男人边做边吃奶头视频| 六月丁香婷婷色狠狠久久| 三级全黄的视频在线观看| 少妇人妻无奈的跪趴翘起| 麻豆一区二区三区蜜桃免费| 美女啪啪国产| 日本熟妇视频在线中出| 日韩av无码一区二区三区| 日日躁夜夜躁狠狠躁超碰97| 日本视频精品一区二区| 日本午夜理论片在线观看|