







摘 要: "現(xiàn)有差分隱私推薦算法在計(jì)算相似度時(shí),直接根據(jù)用戶—方案數(shù)據(jù)進(jìn)行計(jì)算,而忽略了方案屬性對(duì)用戶偏好的影響,沒有反映用戶的真實(shí)偏好,不能進(jìn)行準(zhǔn)確推薦。針對(duì)此問題,提出考慮用戶興趣分析的差分隱私推薦方法。該方法首先收集用戶對(duì)方案屬性的興趣評(píng)分,其次使用K-means+ +對(duì)用戶—方案屬性評(píng)分?jǐn)?shù)據(jù)進(jìn)行聚類,然后采用差分隱私算法選擇近鄰用戶,并為目標(biāo)用戶推薦適合的方案。最后,以養(yǎng)老院方案推薦為例予以驗(yàn)證。實(shí)驗(yàn)結(jié)果顯示:與KDPC、DPCF、PNCF相比,所提算法在相同隱私預(yù)算下,平均絕對(duì)誤差下降約19.0%、34.0%、37.7%;在相同近鄰集合尺寸下,平均絕對(duì)誤差下降約10.4%、20.3%、21.4%。因此,該算法在保護(hù)了用戶隱私的基礎(chǔ)上,進(jìn)一步提高了推薦精度。
關(guān)鍵詞: "差分隱私; 用戶興趣; 方案屬性; K-means+ +
中圖分類號(hào): "TP391 """文獻(xiàn)標(biāo)志碼: A
文章編號(hào): "1001-3695(2022)02-025-0474-05
doi:10.19734/j.issn.1001-3695.2021.06.0265
Recommendation of differential privacy scheme considering user interest analysis
Geng Xiuli, Wang Zhuxin
(Business School, University of Shanghai for Science amp; Technology, Shanghai 200093, China)
Abstract: "When calculating similarity,the existing differential privacy recommendation algorithms directly calculate based on user-scheme data,but ignore the influence of scheme attributes on user preferences,fail to reflect the real preferences of users,and cannot make accurate recommendations.To solve this problem,this paper proposed differential privacy recommendation method considering user interest analysis.In this method,
it collected firstly users’ interest ratings for scheme attributes,and secondly clustered the user-scheme attributes rating data by K-means+ +.Then,it used the differential privacy algorithm to select the nearest users,and recommended suitable schemes for the target user.Finally,taking the recommendation of nursing home schemes as an example,the experimental results show that compared with KDPC,DPCF and PNCF,the proposed algorithm can reduce the mean absolute error by about 19.0%,34.0% and 37.7% under the same privacy budget.The mean absolute error decreases by 10.4%,20.3% and 21.4% for the same size of the nearest neighbor set.Therefore,based on protecting the privacy of users,the algorithm further improves the recommendation accuracy.
Key words: "differential privacy; user interest; attributes of the scheme; K-means+ +
0 引言
隨著大數(shù)據(jù)時(shí)代的到來,產(chǎn)品或服務(wù)種類和數(shù)量越來越繁雜,雖然在一定程度上滿了用戶的基本需求,但也嚴(yán)重影響了用戶的體驗(yàn)。同時(shí),經(jīng)常有攻擊者通過不法手段在網(wǎng)絡(luò)上竊取用戶個(gè)人隱私信息,然后進(jìn)行販賣、電信詐騙、散發(fā)廣告等,以此獲取利益[1]。因此,研究如何在保護(hù)用戶隱私的前提下,為用戶準(zhǔn)確地推薦產(chǎn)品或服務(wù)具有重要意義。
協(xié)同過濾算法是一種有效的個(gè)性化推薦算法,能為用戶推薦適合的產(chǎn)品或服務(wù),但是容易受到攻擊從而導(dǎo)致信息泄露,如KNN(K-nearest neighboring)攻擊[2]。傳統(tǒng)的隱私保護(hù)手段(如K-匿名等[3,4])只能應(yīng)對(duì)特定的攻擊假設(shè),且不能量化隱私保護(hù)程度。而在2006年由Dwork等人提出的差分隱私不需要考慮攻擊者有多少可能的背景信息,而是直接假設(shè)攻擊者已經(jīng)擁有除了目標(biāo)信息以外所有的信息[5]。同時(shí)差分隱私還可以對(duì)數(shù)據(jù)保護(hù)程度給予量化[6]。經(jīng)過多年的研究,差分隱私已經(jīng)被廣泛應(yīng)用于推薦系統(tǒng)中。如Hu等人[7]提出的基于差分隱私的LSH推薦方法,在隱私算子較小的情況下保證了算法較高的推薦精度和效率。
現(xiàn)有的差分隱私推薦算法雖然也在致力于保護(hù)用戶隱私的同時(shí)完成推薦功能,但是推薦精度方面仍有待提高。如孫道柱等人[8]通過將隱式反饋和顯示反饋融合到差分隱私推薦算法中,來實(shí)現(xiàn)推薦精度和隱私保護(hù)之間的有效平衡。鄭劍等人[9]將標(biāo)簽信息融入到差分隱私推薦算法中,在保證用戶隱私的同時(shí),仍具有一定的推薦精度。上述研究直接將算法作用于用戶—方案數(shù)據(jù),而忽略了方案屬性對(duì)用戶偏好的影響,所以精確度較低。用戶—方案數(shù)據(jù)只是用戶對(duì)方案的整體評(píng)價(jià),并不涉及方案屬性信息,不能代表用戶真實(shí)的興趣。而用戶—方案屬性數(shù)據(jù)是用戶對(duì)方案具體屬性的評(píng)價(jià),展示了用戶為什么給方案打高分或低分的原因,體現(xiàn)了用戶的興趣偏好。若直接使用用戶—方案數(shù)據(jù)來挖掘用戶偏好,則不能準(zhǔn)確地反映用戶興趣,不能為目標(biāo)用戶選取合適的近鄰集,更不能準(zhǔn)確地推薦方案[10]。例如,用戶A和B對(duì)某一批汽車的評(píng)分均是5分,而A對(duì)汽車品牌和價(jià)格比較感興趣,B更在乎汽車的引擎性能和制動(dòng)性能,雖然A和B對(duì)某一批汽車的整體評(píng)分是一樣的,但是他們的興趣點(diǎn)相差甚遠(yuǎn),如果把將A認(rèn)可的汽車推薦給B則推薦精度較低。
本文考慮將用戶興趣融入差分隱私推薦算法中,在用戶和方案屬性之間建立聯(lián)系,挖掘用戶深層次的興趣需求,從而為目標(biāo)用戶找到更精確的近鄰用戶,并推薦適合的方案。該方法首先使用K-means+ +對(duì)用戶—方案屬性數(shù)據(jù)進(jìn)行聚類,找到目標(biāo)用戶所在類簇;其次調(diào)整目標(biāo)類簇的大小,因?yàn)槟繕?biāo)類簇的尺寸過大會(huì)導(dǎo)致推薦精度較低,目標(biāo)類簇的尺寸過小會(huì)導(dǎo)致隱私泄露;然后使用差分隱私的指數(shù)機(jī)制隨機(jī)選擇近鄰集合;最后根據(jù)近鄰集合預(yù)測(cè)目標(biāo)用戶未評(píng)分方案的分值,并采用top- m 算法為目標(biāo)用戶推薦方案。
1 基于K-means+ +的用戶興趣聚類
從用戶—方案數(shù)據(jù)中挖掘用戶的真實(shí)興趣愛好是很難的[11]。比如,上汽大眾新能源汽車ID.6 X的屬性是耗掉經(jīng)濟(jì)性、動(dòng)力性、制動(dòng)性能等,某用戶選擇該汽車并給予高分是因?yàn)樗巧掀蟊娖放频姆劢z,通過用戶—方案評(píng)分無法反映用戶的真實(shí)興趣。因此本文考慮用戶興趣,并構(gòu)建用戶—方案屬性興趣評(píng)分矩陣,使算法為目標(biāo)用戶找到準(zhǔn)確的近鄰用戶,進(jìn)而提高推薦精度。用戶興趣評(píng)分?jǐn)?shù)據(jù)的獲取是以用戶需求、興趣或偏好為基礎(chǔ),得到評(píng)分矩陣。對(duì)于新用戶,通過用戶的咨詢或訪問情況獲得分值;對(duì)于舊用戶,將平臺(tái)實(shí)際反饋轉(zhuǎn)換成興趣分值。
聚類算法可以有效地為目標(biāo)用戶選擇相似度更高的近鄰用戶,并劃分到同一類簇中,因此有助于提高推薦精度和推薦效率。以往基于聚類的差分隱私推薦算法均是對(duì)用戶方案數(shù)據(jù)直接進(jìn)行聚類[12,13]。但是這種直接作用于方案數(shù)據(jù)的聚類效果并不理想。而將聚類算法應(yīng)用于用戶興趣評(píng)分?jǐn)?shù)據(jù)上,可以得到更為實(shí)際合理的聚類結(jié)果。本文選用的聚類算法是K-means+ +,原因是:a)該聚類可以通過調(diào)整 K 值來靈活控制目標(biāo)類簇的大小,使目標(biāo)類簇包含適當(dāng)數(shù)量的用戶,從而在隱私保護(hù)和推薦精度之間取得平衡;b)K-means+ +是在K-means的基礎(chǔ)上改進(jìn)而來,以初始聚類中心之間距離盡可能遠(yuǎn)為原則選取初始聚類中心,使得聚類的結(jié)果更穩(wěn)定。K-means+ +聚類算法如算法1所示。
算法1 K-means+ +聚類算法
輸入:用戶興趣數(shù)據(jù)集 X ;類簇?cái)?shù)量 K。
輸出: K 個(gè)類簇質(zhì)心,用戶所屬類簇。
a)從用戶興趣數(shù)據(jù)集 X 中隨機(jī)選取一個(gè)用戶作為初始類簇質(zhì)心 C 1 ;
b)計(jì)算每個(gè)用戶與現(xiàn)有類簇質(zhì)心之間最短距離 D(x) ;
c)計(jì)算每個(gè)用戶被選為下一個(gè)類簇質(zhì)心的概率 D(x)2/∑ x∈X D(x)2 ;
d)采用輪盤法選擇下一個(gè)類簇質(zhì)心 C i ;
e)重復(fù)步驟b)~d)直到選出 K 個(gè)初始類簇質(zhì)心;
f)計(jì)算用戶興趣數(shù)據(jù)集 X 中每個(gè)用戶數(shù)據(jù) x 到 K 個(gè)類簇質(zhì)心的距離,并將它劃分到距離最小的類簇中;
g)再次計(jì)算所有類簇的質(zhì)心 C i= 1 |C i| ∑ x∈C i x ;
h)重復(fù)步驟f)~g)直到類簇質(zhì)心位置不再發(fā)生改變或者達(dá)到最大迭代次數(shù)。
2 基于差分隱私的近鄰集合選擇
K-means+ +根據(jù)用戶興趣數(shù)據(jù)聚類后可以得到目標(biāo)類簇,目標(biāo)類簇包含目標(biāo)用戶及其近鄰集合。現(xiàn)有基于用戶的協(xié)同過濾算法均是直接從目標(biāo)類簇中選取與目標(biāo)用戶相似度最高的幾個(gè)用戶作為近鄰集合。雖然這種方法有較高推薦精度,但是攻擊者可以很輕松地根據(jù)所擁有的背景知識(shí)推測(cè)出用戶隱私信息。為了提高推薦精度的同時(shí)也有效地保護(hù)用戶隱私,選用差分隱私處理目標(biāo)類簇用戶數(shù)據(jù)。差分隱私是一種新的隱私模型,通過添加可控噪聲的方式防止個(gè)人信息泄露,同時(shí)也確保添加了噪聲的數(shù)據(jù)和原始數(shù)據(jù)之間具有相似的統(tǒng)計(jì)特性。對(duì)于差分隱私算法而言,添加或刪除數(shù)據(jù)集中某條記錄后,輸出結(jié)果不會(huì)有較大改變。因此,即使攻擊者已經(jīng)擁有數(shù)據(jù)集中除目標(biāo)信息外所有的信息,也無法通過算法的輸出結(jié)果推斷目標(biāo)信息。其相關(guān)定義如下。
定義1[14] "相鄰數(shù)據(jù)集。設(shè)數(shù)據(jù)集 t和t′ ,它們具有相同的屬性結(jié)構(gòu)且兩者對(duì)稱差的數(shù)量為0。若 t 可以通過 t′ 中的一個(gè)元素替換成另一個(gè)元素而得到,則稱 t和t′ 為相鄰數(shù)據(jù)集。
定義2[15] "差分隱私。若算法 M 作用在任意兩個(gè)相鄰數(shù)據(jù)集 t和t′ 上的輸出子集 R ∈range( M )滿足
P[M(t)∈R]≤eε×P[M(t′)∈R] ""(1)
則稱算法 M滿足ε -差分隱私。
式(1)中 P[M(t)∈R ]是算法 M 在數(shù)據(jù)集 t 上輸出屬于 R 的概率。 ε 為隱私預(yù)算,代表算法保護(hù)隱私的程度, ε 越大噪聲越少,保護(hù)程度越低。
指數(shù)機(jī)制是實(shí)現(xiàn)差分隱私的常用技術(shù),它既可以處理數(shù)值數(shù)據(jù),也可以處理非數(shù)值數(shù)據(jù)。
定義3 [16] 指數(shù)機(jī)制。給定一個(gè)數(shù)據(jù)集 t ,令 q(t,r) 為輸出值是 r∈R 的效用函數(shù),Δ q 為效用函數(shù)的全局敏感度。若算法 M 從range (M) 中選擇并輸出 r 的概率與exp ( εq(t,r) 2 Δ q ) 成正比,則算法 M 提供 ε -差分隱私保護(hù)。其中,range (M) 為 M 的輸出范圍。
定義4 [12] 指數(shù)機(jī)制的全局敏感度。對(duì)于任何效用函數(shù) q(t,r) 和任何相鄰數(shù)據(jù)集 t和t′ ,指數(shù)機(jī)制的全局敏感度定義為
Δ q= max max "r∈R,‖t-t′‖ 1≤1 |q(t,r)-q(t′,r)| ""(2)
為保護(hù)用戶的隱私,需要先構(gòu)造合理的效用函數(shù),然后通過指數(shù)機(jī)制隨機(jī)選擇近鄰集合。令 C* 為目標(biāo)類簇, u "t為目標(biāo)用戶, U select 為從目標(biāo)類簇 C* 中任意取出的一個(gè)大小為 N 的近鄰集合,定義效用函數(shù)為目標(biāo)用戶與近鄰集合中所有用戶修正余弦相似度的累計(jì),效用函數(shù)用 q(C*,u t,U select) 表示,則有
q(C*,u t,U select)=∑ u∈U select "sim (u t,u) ""(3)
根據(jù)指數(shù)機(jī)制,選擇使用式(4)篩選近鄰集合
P(U select)= "exp (εq(C*,u t,U select)/(2 Δ q)) ∑ U select∈U* "exp (εq(C*,u t,U select)/(2 Δ q)) """(4)
其中: U* 是從目標(biāo)類簇中隨機(jī)篩選出來大小為 N 的近鄰集合的總和;Δ q 是全局敏感度且Δ q= max max "U select,‖C* 1-C* 2‖ 1≤1 |q(C* 1,u t,U select)-q(C* 2,u t,U select)|=1,C* 1和C* 2 是相鄰數(shù)據(jù)集,它們之間只有一個(gè)用戶對(duì)某一方案的評(píng)分不同。
在目標(biāo)類簇中使用指數(shù)機(jī)制隨機(jī)選擇近鄰集合,既在一定程度上保護(hù)了用戶隱私,又確保了選擇的 N 個(gè)近鄰用戶與目標(biāo)用戶有較高的相似度,可以有效地為目標(biāo)用戶推薦方案。
3 基于用戶興趣的差分隱私方案推薦
目前的差分隱私推薦算法均是直接對(duì)方案數(shù)據(jù)直接處理,而沒有考慮用戶興趣,這會(huì)使得與目標(biāo)用戶相似度較低的用戶被選為近鄰用戶,從而導(dǎo)致推薦結(jié)果精確度較低。因此設(shè)計(jì)基于用戶興趣的差分隱私方案推薦,該算法的詳細(xì)過程如下所示。
算法2 基于用戶興趣的差分隱私方案推薦
輸入:用戶興趣數(shù)據(jù)集 X ;用戶方案評(píng)分?jǐn)?shù)據(jù)集 Y ;聚類數(shù)量 K ;推薦列表長(zhǎng)度 m ;近鄰集合尺寸 N ;目標(biāo)用戶 u t;隱私預(yù)算ε 。
輸出:長(zhǎng)度為 m 的推薦列表 R u 。
a)K-means+ +聚類。采用K-means+ +處理用戶興趣數(shù)據(jù)集 X ,得到目標(biāo)類簇 C* 。
b)調(diào)整目標(biāo)類簇尺寸。確定近鄰集合尺寸 N ,通過調(diào)整聚類數(shù)量 K ,來調(diào)整目標(biāo)類簇 C* 的大小,使之處于5 N ~10 N 。
c)用指數(shù)機(jī)制隨機(jī)選擇近鄰集合。
(a)從目標(biāo)類簇 C* 中任意選取大小為 N 的近鄰集合 U select ,一共有 CN |C*| 種,采用式(5)計(jì)算每一種情況下的目標(biāo)用戶 u t 和近鄰集合 U select 中用戶的相似度;
(b)采用式(3)(4)可以計(jì)算出每一種近鄰集合 U select 被選取的概率;
(c)采用輪盤法為目標(biāo)用戶 u "t選取 N 個(gè)近鄰用戶。
d)預(yù)測(cè)并推薦top- m 方案。
(a)采用式(6)預(yù)測(cè)目標(biāo)用戶未評(píng)分方案的分值;
(b)根據(jù)分值大小由高到低將目標(biāo)用戶的方案排序,選取前 m 個(gè)組成推薦列表 R u 并予以推薦。
首先,收集到用戶對(duì)方案各屬性的興趣評(píng)分,使用K-means+ +處理該數(shù)據(jù),對(duì)用戶進(jìn)行聚類。興趣評(píng)分?jǐn)?shù)據(jù)中的用戶數(shù)量通常很多,但只有部分用戶對(duì)目標(biāo)用戶具有推薦意義。通過K-means+ +對(duì)用戶興趣評(píng)分?jǐn)?shù)據(jù)處理,可以得到目標(biāo)類簇,該類簇中的用戶與目標(biāo)用戶之間有較高的相似度。
其次,調(diào)整目標(biāo)類簇的大小。設(shè)置的聚類中心數(shù)目 K 不同,會(huì)導(dǎo)致目標(biāo)類簇大小不同。如果目標(biāo)類簇的尺寸遠(yuǎn)大于近鄰集合的尺寸,那么目標(biāo)類簇中仍有大量用戶沒有被選為近鄰用戶,會(huì)影響推薦的精度;如果目標(biāo)類簇的尺寸接近于近鄰集合的尺寸,那么近鄰集合的選擇將趨近于穩(wěn)定,將會(huì)難以保護(hù)用戶隱私。令 C min為目標(biāo)類簇最小尺寸,C max為目標(biāo)類簇最大尺寸,C min和C max是根據(jù)經(jīng)驗(yàn)設(shè)定的。本文的實(shí)驗(yàn)中設(shè)定C min=5N,C max=10N,其中N 為近鄰集合的尺寸[12]。
然后使用指數(shù)機(jī)制在目標(biāo)類簇中根據(jù)式(4)隨機(jī)選擇近鄰集合。使用式(4)之前需要先計(jì)算目標(biāo)用戶與從目標(biāo)類簇選取出來的所有 U select 用戶的相似度。因?yàn)椴煌挠脩粼u(píng)分標(biāo)準(zhǔn)不同,所以采用修正的余弦相似度通過減去方案評(píng)分均值來改善用戶評(píng)分標(biāo)準(zhǔn)差異的問題。則目標(biāo)用戶 u t和近鄰用戶u 的相似性計(jì)算公式為
sim (u t,u) = "∑ i∈I u tu (r ui- "u)(r u ti- "u t) "∑ i∈I u tu (r ui- "u)2∑ i∈I u tu (r u ti- "u t)2 """"(5)
其中: I u和I u t分別是u和u t的評(píng)分記錄; "u和 "u t分別是u和u t 的評(píng)分均值。由式(3)~(5)知道每個(gè)近鄰集合被選取的概率,按照輪盤法為目標(biāo)用戶隨機(jī)選擇 N 個(gè)近鄰用戶。
最后,預(yù)測(cè)目標(biāo)用戶未評(píng)分方案的分值,并采用top- m 算法推薦評(píng)分較高的方案。使用指數(shù)機(jī)制為目標(biāo)用戶選取近鄰集合后,可以采用基于目標(biāo)用戶評(píng)分的加權(quán)平均值法為目標(biāo)用戶預(yù)測(cè)未評(píng)分方案的分值,公式為
r u t,i "Euclid ExtravBp
= "u t+ ∑ u∈U select "sim ((u t,u)×(r ui- "u)) ∑ u∈U select "sim( u t,u) """(6)
其中: r u t,i "Euclid ExtravBp
是目標(biāo)用戶 u "t對(duì)未評(píng)分方案 i 的預(yù)測(cè)評(píng)分; U select 是目標(biāo)用戶 u "t的近鄰集合。
利用式(6)預(yù)測(cè)目標(biāo)用戶的未評(píng)分方案分值后,根據(jù)分值大小由高到低將方案排序,并采用top- m 算法將前 m 個(gè)方案推薦給目標(biāo)用戶。
本文算法由四個(gè)部分組成,即K-means+ +聚類、調(diào)整目標(biāo)類簇尺寸、用指數(shù)機(jī)制隨機(jī)選擇近鄰集合、預(yù)測(cè)并推薦top- m 方案,但只有前三部分會(huì)對(duì)差分隱私的特性產(chǎn)生影響。設(shè) T 1和T "2是一對(duì)相鄰數(shù)據(jù)集,它們包含完全相同的用戶,且只有一個(gè)用戶對(duì)某一方案的評(píng)分不同; t 1和t 2分別是T 1和T "2的目標(biāo)類簇,通過調(diào)整目標(biāo)類簇的大小使 t "1和 t "2的區(qū)別僅僅在某一用戶上的評(píng)分不同。根據(jù)指數(shù)機(jī)制定義,可以推導(dǎo)出從 t 1和t "2中隨機(jī)選擇近鄰集合 U select 的概率比為
P[M(t 1)=U select] P[M(t 2)=U select] = ""exp ( εq(t 1,u t,U select) 2 Δ q ) ∑ U select∈U* "exp ( εq(t 1,u t,U select) 2 Δ q ) """exp ( εq(t 2,u t,U select) 2 Δ q ) ∑ U select∈U* "exp ( εq(t 2,u t,U select) 2 Δ q ) "=
( "exp ( εq(t 1,u t,U select) 2Δq ) "exp ( εq(t 2,u t,U select) 2Δq ) )·( ∑ U select∈U* "exp ( εq(t 2,u t,U select) 2 Δ q ) ∑ U select∈U* "exp ( εq(t 1,u t,U select) 2 Δ q ) )≤
exp ( ε 2 )·( ∑ U select∈U* "exp ( "ε 2 ). exp ( εq(t 1,u t,U select) 2 Δ q ) ∑ U select∈U* "exp ( εq(t 1,u t,U select) 2 Δ q ) )≤
exp ( "ε 2 )· exp ( "ε 2 )·( ∑ U select∈U* "exp ( εq(t 1,u t,U select) 2 Δ q ) ∑ U select∈U* "exp ( εq(t 1,u t,U select) 2 Δ q ) )= exp (ε)
其中: M 是基于指數(shù)機(jī)制的近鄰集合選擇算法; P[M(t 1)=U select] 和 P[M(t 2)=U select] 分別是從 t "1和 t "2中選取任意 U select 的概率。基于以上分析,本文算法整個(gè)過程滿足 ε -差分隱私。
4 案例分析
4.1 實(shí)驗(yàn)數(shù)據(jù)
本文使用的數(shù)據(jù)由上海某在線養(yǎng)老服務(wù)平臺(tái)中1 500多名用戶對(duì)2 100余家養(yǎng)老機(jī)構(gòu)的整體評(píng)分和屬性評(píng)分組成,約有10萬次評(píng)價(jià)。該平臺(tái)想要在保護(hù)老年人隱私的前提下,提高其服務(wù)效率和服務(wù)質(zhì)量,希望給老年人推薦適合的養(yǎng)老院。通過整理以往老年人對(duì)養(yǎng)老院的評(píng)價(jià)信息,本文隨機(jī)選取20個(gè)用戶 U={U 1,U 2,…,U "20}以及相應(yīng)的養(yǎng)老院,分別是 A 1、A 2、A 3、A 4、A 5、A 6、A 7、A 8、A 9、A "10。用戶對(duì)養(yǎng)老院的興趣特征有費(fèi)用(元/月)( C "1)、生活自理能力訓(xùn)練( C "2)、護(hù)理服務(wù)( C "3)、康復(fù)服務(wù)( C "4)、醫(yī)療接合情況( C "5)、膳食營(yíng)養(yǎng)( C "6)、文體娛樂( C "7)、生活設(shè)施( C "8)。表1是這20個(gè)用戶對(duì)養(yǎng)老院的滿意度評(píng)價(jià),其中分值1~5分別代表非常不滿意、不滿意、一般、滿意、非常滿意。表2是用戶興趣特征及量化分值。表3是20個(gè)用戶的興趣特征數(shù)據(jù)。其中 U "20是目標(biāo)用戶。
a)使用K-means+ +將表3中的用戶數(shù)據(jù)進(jìn)行聚類,不妨設(shè)聚類中心數(shù)量 K =3,聚類后得到目標(biāo)類簇中的用戶分別是 U 1、U 3、U 4、U 5、U 7、U 8、U 9、U 10、U 11、U 12、U 14、U 15、U 17、U 18、U 20 ,共15個(gè)。根據(jù)經(jīng)驗(yàn),目標(biāo)類簇大小為近鄰集合大小的5~10倍時(shí)是適合的。如果目標(biāo)類簇太大,會(huì)影響推薦的精度;如果目標(biāo)類簇太小,該算法會(huì)起不到保護(hù)隱私的作用。因此可以設(shè)近鄰集合大小 N =3。
b)使用差分隱私的指數(shù)機(jī)制隨機(jī)選擇三個(gè)近鄰用戶。不妨設(shè)被選中的三個(gè)用戶分別是 U 5、U 7、U 9,隱私預(yù)算ε=1。采用式(5)(6)分別計(jì)算這三個(gè)用戶與目標(biāo)用戶U "20的相似度,并預(yù)測(cè)表1中目標(biāo)用戶 U "20的評(píng)分空缺值,得到表4。
c)根據(jù)表4中的養(yǎng)老院評(píng)分?jǐn)?shù)據(jù),按由高到低排列,依次是 A 2、A 6、A 9、A 1、A 4、A 8、A 7、A 5、A 3、A 10。其中,A 2、A 6、A 9、A 1、A 4的評(píng)分最高,所以采用 top- m算法,為目標(biāo)用戶U 20推薦A 2、A 6、A 9、A 1、A "4。
4.2 結(jié)果對(duì)比分析
為了驗(yàn)證結(jié)果的準(zhǔn)確性,在實(shí)驗(yàn)中選用平均絕對(duì)誤差(mean absolute error,MAE)作為評(píng)價(jià)指標(biāo),將本文算法和基于K-means的差分隱私協(xié)同過濾推薦算法(differentially private user-based collaborative filtering recommendation based on K-means clustering,KDPCF)、差分隱私協(xié)同過濾推薦算法(differential privacy for collaborative filtering recommender algorithm,DPCF)、基于近鄰用戶的差分隱私協(xié)同過濾算法(differential privacy for neighborhood-based collaborative filtering,PNCF)對(duì)比分析。由于差分隱私算法具有一定的隨機(jī)性,考慮將運(yùn)行程序100次的結(jié)果取平均值,作為算法最終結(jié)果。
平均絕對(duì)誤差(MAE)的計(jì)算公式為
MAE= 1 T ∑ u t,i |r u t,i-r u t,i "Euclid ExtravBp
| ""(7)
其中: T為需要預(yù)測(cè)的評(píng)分方案數(shù);r u t,i "Euclid ExtravBp
為目標(biāo)用戶的預(yù)測(cè)評(píng)分;r u t,i 為目標(biāo)用戶的實(shí)際評(píng)分。
為了評(píng)估本文算法的性能,分別從隱私預(yù)算 ε 、近鄰集合大小 N 、推薦列表長(zhǎng)度 m 三個(gè)方面分析其對(duì)推薦精度的影響,并將本文算法和KDPCF、DPCF、PNCF作對(duì)比。首先,分析隱私預(yù)算 ε 對(duì)精確度的影響。令參數(shù) ε=[0,1],N=30,m =50,得到的結(jié)果如圖1所示。
由圖1可以看出,隨著隱私預(yù)算 ε 的增加,這四種算法的MAE值呈下降趨勢(shì),精確度越來越高。主要原因是 ε 值的增加使得這四種算法使用指數(shù)機(jī)制選擇的近鄰集合更加準(zhǔn)確,為預(yù)測(cè)目標(biāo)用戶未評(píng)分方案提供更有力的數(shù)據(jù)支撐,并推薦適合的方案。在同等條件下,本文算法的精確度最高,其次是KDPCF。這是因?yàn)楸疚乃惴ㄔ诰垲悤r(shí)使用的是用戶—方案屬性數(shù)據(jù),充分挖掘用戶深層次的興趣偏好,將擁有相同興趣的用戶劃分到同一個(gè)類簇,使得選取的近鄰集合更加可靠。而KDPCF在聚類時(shí),處理的是用戶—方案數(shù)據(jù),沒有考慮用戶興趣因素,選取的近鄰集合質(zhì)量相對(duì)較差。聚類算法可以將相似度較高的用戶劃分到同一類簇,而不同類簇的用戶相似度差別較大,所以本文算法和KDPCF的精確度高于另外兩個(gè)算法。PNCF和DPCF的推薦精度差不多,但PNCF的更低一點(diǎn)。這是因?yàn)槌酥笖?shù)機(jī)制產(chǎn)生的噪聲外,PNCF還加入了拉普拉斯噪聲,進(jìn)一步降低了推薦結(jié)果的準(zhǔn)確性。
然后,分析近鄰集合大小 N 和推薦列表長(zhǎng)度 m 分別對(duì)精確度的影響。令參數(shù) ε=1 , N =30, m =[10,20,30,40,50,60,70,80,90,100],得到的結(jié)果如圖2所示。令參數(shù) ε=1 , N =[5,10,15,20,25,30,35,40,45,50], m =50,得到的結(jié)果如圖3所示。
從圖2可以看出,隨著 m 值的增加,這四種算法的MAE值并沒有呈現(xiàn)一定的規(guī)律。這是因?yàn)镸AE值的計(jì)算和推薦列表長(zhǎng)度 m 沒有直接關(guān)系。
由圖3可知,隨著近鄰集合大小 N 的增加,這四種算法的MAE值均逐漸降低,推薦精度逐步升高。因?yàn)榻徲脩粼蕉啵糜陬A(yù)測(cè)目標(biāo)用戶未評(píng)分方案分值的支撐數(shù)據(jù)越多,預(yù)測(cè)越精準(zhǔn),從而算法能更精確地為目標(biāo)用戶推薦適合的方案。從整體上看,本文算法的推薦精度最高,這是因?yàn)楸疚乃惴ú粌H使用了聚類算法K-means+ +以提高推薦精度,而且考慮了用戶興趣,為目標(biāo)用戶找到更符合實(shí)際的近鄰集合,使得預(yù)測(cè)的空缺值更準(zhǔn)確,推薦的方案更適合。
5 結(jié)束語
本文提出考慮用戶興趣分析的差分隱私方案推薦,是將用戶興趣融合到差分隱私推薦算法中,解決了現(xiàn)有差分隱私推薦算法未考慮用戶興趣而導(dǎo)致推薦精度不高的問題。本文方法的特點(diǎn)如下:
a)考慮用戶興趣,提高推薦精度。構(gòu)建用戶—方案屬性矩陣,通過對(duì)蘊(yùn)涵用戶興趣的用戶—方案屬性評(píng)分?jǐn)?shù)據(jù)聚類,將擁有相同興趣偏好的用戶劃分到同一類簇中,從而使目標(biāo)用戶得到更為準(zhǔn)確的近鄰集合,以提高推薦結(jié)果的準(zhǔn)確性。
b)應(yīng)用差分隱私大幅降低用戶信息泄露的風(fēng)險(xiǎn)。對(duì)用戶—方案屬性數(shù)據(jù)聚類后可以得到目標(biāo)類簇,然后采用差分隱私中的指數(shù)機(jī)制在目標(biāo)類簇中隨機(jī)選擇近鄰集合,預(yù)測(cè)目標(biāo)用戶未評(píng)分方案分值,并采用top- m 算法為目標(biāo)用戶推薦方案。
通過養(yǎng)老院方案推薦案例,驗(yàn)證了本文算法不僅保護(hù)了用戶隱私,還進(jìn)一步提高了推薦精度。但是在實(shí)際應(yīng)用中,用戶興趣會(huì)隨著時(shí)間變化而變化,推薦精度也會(huì)受到影響,接下來將對(duì)用戶興趣變化問題作進(jìn)一步研究。
參考文獻(xiàn):
[1] "付鈺,俞藝涵,吳曉平.大數(shù)據(jù)環(huán)境下差分隱私保護(hù)技術(shù)及應(yīng)用[J].通信學(xué)報(bào),2019, 40 (10):157-168. (Fu Yu,Yu Yihan,Wu Xiaoping.Differential privacy protection technology and its application in big data environment[J]. Journal of Communications ,2019, 40 (10):157-168.)
[2] Boutet A,De Moor F,F(xiàn)rey D, et al. Collaborative filtering under a sy-bil attack:similarity metrics do matter[C]//Proc of the 48th Annual IEEE/IFIP International Conference on Dependable Systems and Networks.Piscataway,NJ:IEEE Press,2018:466-477.
[3] Errounda F Z,Liu Yan.Collective location statistics release with local differential privacy[J]. Future Generation Computer Systems ,2021, 124 :174-186.
[4] 田豐,吳振強(qiáng),魯來鳳,等.面向軌跡數(shù)據(jù)發(fā)布的個(gè)性化差分隱私保護(hù)機(jī)制[J].計(jì)算機(jī)學(xué)報(bào),2021, 44 (4):709-723. (Tian Feng,Wu Zhenqiang,Lu Laifeng, et al. "Personalized differential privacy protection mechanism for trajectory data publishing[J]. Chinese Journal of Computers ,2021, 44 (4):709-723.)
[5] 于雅娜,李紅嬌,李晉國(guó).差分隱私保護(hù)WGAN-GP算法研究[J].計(jì)算機(jī)應(yīng)用研究,2021, 38 (9):2837-2831. (Yu Yana,Li Hongjiao,Li Jinguo.Differential privacy WGAN-GP algorithm research[J]. Application Research of Computers ",2021, 38 (9):2837-2831.)
[6] 何明,常盟盟,吳小飛.一種基于差分隱私保護(hù)的協(xié)同過濾推薦方法[J].計(jì)算機(jī)研究與發(fā)展,2017, 54 (7):1439-1451. (He Ming,Chang Mengmeng,Wu Xiaofei.Collaborative filtering recommendation method based on differential privacy protection[J]. Journal of Computer Research and Development ,2017, 54 (7):1439-1451.)
[7] Hu Hongsheng,Dobbie G,Salcic Z, et al. "Differentially private locality sensitive hashing based federated recommender system[J/OL]. Concurrency and Computation-Practice amp; Experience .(2021-02-23).https://doi.org/10.1002/cpe.6233.
[8] 孫道柱,李男,杜啟明,等.融合顯隱式反饋協(xié)同過濾的差分隱私保護(hù)算法[J].計(jì)算機(jī)應(yīng)用研究,2021, 38 (8):2370-2375. (Sun Daozhu,Li Nan,Du Qiming, et al. "Show the difference of the implicit feedback collaborative filtering fusion privacy protection algorithm[J]. Application Research of Computers ,2021, 38 (8):2370-2375.)
[9] 鄭劍,王嘯乾.融合標(biāo)簽相似度的差分隱私矩陣分解推薦算法[J].計(jì)算機(jī)應(yīng)用研究,2020, 37 (3):851-855. (Zheng Jian,Wang Xiaoqian.Differential privacy matrix decomposition recommendation algorithm fusing label similarity[J]. Application Research of Computers ,2020, 37 (3):851-855.)
[10] 姚平平,鄒東升,牛寶君.基于用戶偏好和項(xiàng)目屬性的協(xié)同過濾推薦算法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2015, 24 (7):15-21. (Yao Pingping,Zou Dongsheng,Niu Baojun.Collaborative filtering recommendation algorithm based on user preferences and item attribute[J]. Computer System Applications ,2015, 24 (7):15-21.)
[11] 于波,楊紅立,冷淼.基于用戶興趣模型的推薦算法[J].計(jì)算機(jī)系統(tǒng)應(yīng)用,2018, 27 (9):182-187. (Yu Bo,Yang Hongli,Leng Miao.Recommendation algorithm based on user interest model[J]. Computer System Applications ,2018, 27 (9):182-187.)
[12] Chen Zhili,Wang Yu,Zhang Shun, et al. "Differentially private user-based collaborative filtering recommendation based on K-means clustering[J]. Expert Systems with Applications ,2021, 168 :114366.
[13] 張潤(rùn)蓮,張瑞,武小年,等.基于混合相似度和差分隱私的協(xié)同過濾推薦算法[J].計(jì)算機(jī)應(yīng)用研究,2021, 38 (8):2334-2339. (Zhang Runlian,Zhang Rui,Wu Xiaonian, et al. "Based on the hybrid similarity and difference of privacy collaborative filtering recommendation algorithm[J]. Application Research of Computers ,2021, 38 (8):2334-2339.)
[14] 葉清,李默泚,宋瑩瑩,等.基于噪聲加密機(jī)制的WSN差分位置隱私保護(hù)[J].傳感技術(shù)學(xué)報(bào),2019, 32 (12):1904-1910. (Ye Qing,Li Moci,Song Yingying, et al. Differential position privacy protection of WSN based on noise encryption mechanism[J]. Journal of Sensors and Accent Technology ,2019, 32 (12):1904-1910.)
[15] 馬方方,劉樹波,熊星星,等.可穿戴設(shè)備數(shù)值型敏感數(shù)據(jù)本地差分隱私保護(hù)[J].計(jì)算機(jī)應(yīng)用,2019, 39 (7):1985-1990. (Ma Fangfang,Liu Shubo,Xiong Xingxing, et al. "Local differential privacy protection for sensitive data of wearable devices[J]. Journal of Computer Applications ,2019, 39 (7):1985-1990.)
[16] 尚濤,趙錚,舒王偉,等.基于等差隱私預(yù)算分配的大數(shù)據(jù)決策樹算法[J].工程科學(xué)與技術(shù),2019, 51 (2):130-136. (Shang Tao,Zhao Zheng,Shu Wangwei, et al. Big data decision tree algorithm based on isometric privacy budget allocation[J]. Engineering Science and Technology ,2019, 51 (2):130-136.)