本發明涉及一種隱私保護的推薦系統,尤其是一種差分隱私保護的多視圖聯邦矩陣分解的項目推薦方法。
背景技術:
1、在互聯網和大數據時代,推薦系統作為一種重要的技術手段,廣泛應用于電子商務、社交媒體、內容分發等領域。推薦系統通過分析用戶的歷史行為數據,挖掘用戶的興趣和偏好,從而向用戶推薦可能感興趣的商品、內容或服務。隨著數據隱私問題的日益凸顯,保護用戶隱私成為推薦系統設計中的重要考量。
2、差分隱私是一種數學框架,旨在提供強有力的隱私保護。通過在數據處理過程中加入噪聲,差分隱私確保任何單個數據點的存在或不存在不會顯著影響輸出結果,從而防止個人信息泄露。在推薦系統中,差分隱私可以用于保護用戶的行為數據,使得即使攻擊者獲得了數據,也無法推斷出具體用戶的詳細信息。聯邦學習是一種分布式機器學習方法,它允許模型在多個本地設備(如用戶的手機或電腦)上進行訓練,而不需要將數據上傳到中央服務器。每個本地設備只需將模型更新(如梯度)發送到中央服務器,服務器將這些更新聚合并更新全局模型,然后將更新后的模型發送回本地設備。這種方法不僅可以減少數據傳輸的帶寬需求,還能有效保護用戶的隱私。
3、發明目的
4、本發明是為了解決上述現有技術存在的不足之處,提出一種差分隱私保護的多視圖聯邦矩陣分解的項目推薦方法,以期能在滿足隱私保護要求的同時實現高效的個性化項目推薦,克服現有技術中存在的隱私泄露風險高、數據協作效率低以及項目推薦性能受限等問題。
5、本發明為解決技術問題所采用的技術方案是:
6、本發明一種差分隱私保護的多視圖聯邦矩陣分解的項目推薦方法的特點在于,是應用于由聯邦服務器、項目服務器、個用戶端所組成的網絡中,令每個用戶端擁有相同的個項目,第個用戶端擁有的評分數據集記為,其中,表示第個用戶端對第j個項目的評分,若對第j個項目無評分,則令;所述第個客戶端擁有的用戶特征數據集記為,其中,表示第個用戶端的第個用戶特征,為用戶特征的總數;所述項目服務器擁有的項目特征數據集記為,其中,表示第個項目的第個項目特征,為項目特征的總數;所述項目推薦方法是按如下步驟進行:
7、步驟1:所述聯邦服務器隨機初始化用戶特征隱因子矩陣,項目隱因子矩陣,其中,是隱因子的維度;令中的第行向量表示第個用戶特征的隱因子向量,令中第行向量表示第個項目的隱因子向量;
8、步驟2:所述聯邦服務器將用戶特征隱因子矩陣和項目隱因子矩陣分發給個用戶端,并將項目隱因子矩陣發送給所述項目服務器;
9、步驟3:定義當前輪數為,總輪數為,并初始化;
10、步驟4:所述第個用戶端隨機初始化第輪下的用戶隱因子向量和計算用戶平均評分向量;并根據用戶特征隱因子矩陣和項目隱因子矩陣對和進行更新,從而計算第輪的高斯噪聲擾動后的項目隱因子矩陣梯度和第輪的高斯噪聲擾動后的用戶特征隱因子矩陣梯度并發送給聯邦服務器;
11、步驟4.1:所述第個用戶端隨機初始化第輪下的用戶隱因子向量和計算用戶平均評分向量;所述第個用戶端第輪下的用戶特征隱因子矩陣=;所述第個用戶端第輪下的項目隱因子矩陣=;
12、步驟4.2:所述第個用戶端通過和計算的梯度,并將梯度裁剪后,與滿足差分隱私的高斯噪聲一起計算第輪下的裁剪閾值;
13、步驟4.3:所述第個用戶端利用計算項目隱因子矩陣的梯度,將梯度裁剪后注入滿足差分隱私的高斯噪聲,用于計算第輪的裁剪閾值;
14、步驟4.4:所述第個用戶端對和進行更新,得到第輪下的用戶隱因子向量和用戶平均評分向量;
15、步驟5:項目服務器隨機初始化第輪下的項目特征隱因子矩陣,并根據項目特征數據集,利用對進行更新,從而計算第輪項目因子矩陣的梯度?并發送給聯邦服務器;
16、步驟6:聯邦服務器接收并聚合來自用戶端發送的擾動后的梯度和項目服務器發送的梯度,并對和進行更新,得到第輪的用戶特征隱因子矩陣和項目隱因子矩陣,并將和分發給個用戶端,將發送給所述項目服務器;
17、步驟7:判斷是否成立,若成立,將賦值給后,返回步驟4.2順序執行;否則,則將、和作為最優用戶隱因子向量、最優用戶平均評分向量和最優項目隱因子矩陣;
18、步驟8:利用式(20)計算第個用戶端對第個項目的預測評分;從而得到第個用戶端對所有項目的預測評分集;
19、??(20)
20、步驟9:從中選出預測評分最高的前n個項目作為推薦結果并發送給所述第個用戶端。
21、本發明所述的一種差分隱私保護的多視圖聯邦矩陣分解的項目推薦方法的特點也在于,所述步驟4.2包括:
22、步驟4.2.1:所述第個用戶端利用式(1)計算第輪下的梯度:
23、??(1)
24、步驟4.2.2:所述第個用戶端利用式(2)得到第輪下裁剪后的梯度;
25、??(2)
26、式(2)中,表示第輪的用戶特征隱因子矩陣梯度的裁剪閾值;表示-范數;
27、步驟4.2.3:所述第個用戶端利用式(3)得到第輪的高斯噪聲擾動后的用戶特征隱因子矩陣梯度;
28、??(3)
29、式(3)中,表示第輪的用戶特征隱因子噪聲尺度,且,為失敗概率,為隱私預算;表示高斯分布;
30、步驟4.2.4:利用式(4)計算第輪的裁剪閾值:
31、??(4)
32、式(4)中,為預定義參數;表示的-范數。
33、進一步的,所述步驟4.3包括:
34、步驟4.3.1:所述第個用戶端利用式(5)計算第輪下的梯度;
35、??(5)
36、式(5)中,表示第輪的項目隱因子矩陣的第行向量;
37、步驟4.3.2:所述第個用戶端利用式(6)得到在第輪裁剪后的梯度;
38、??(6)
39、式(6)中,表示第輪的項目隱因子矩陣梯度的裁剪閾值;
40、步驟4.3.3:所述第個用戶端利用式(7)得到第輪的高斯噪聲擾動后的項目隱因子矩陣梯度;
41、??(7)
42、式(7)中,表示第輪的項目隱因子噪聲尺度,且;
43、步驟4.3.4:利用式(8)計算第輪次的裁剪閾值;
44、??(8)。
45、進一步的,所述步驟4.4中是利用式(9)-式(10)得到第輪下的用戶隱因子向量和用戶平均評分向量;
46、?(9)
47、?(10)
48、式(9)-式(10)中,為學習率,表示第輪下的用戶隱因子向量的梯度,表示第輪下的用戶評分向量的梯度,并有:
49、?(11)
50、??(12)
51、式(11)中,t表示轉置。
52、進一步的,所述步驟5包括:
53、步驟5.1:所述項目服務器利用式(13)-式(14)對中第行項目特征隱因子向量進行更新,得到第輪第行項目特征隱因子向量;
54、??(13)
55、??(14)
56、式(13)中,表示的梯度;
57、步驟5.2:所述項目服務器利用式(15)計算第輪項目隱因子矩陣的梯度:
58、?(15)。
59、進一步的,所述步驟6中是利用式(16)和式(17)分別對第輪的用戶特征隱因子矩陣中第行向量和項目隱因子矩陣的第行向量進行更新,得到第輪的用戶特征隱因子矩陣中第行向量和項目隱因子矩陣的第行向量,并將和分發給個用戶端,將發送給所述項目服務器;
60、??(16)
61、??(17)
62、式(16)和式(17)中,表示的梯度,表示的梯度,并有:
63、??(18)
64、??(19)
65、式(17)和式(18)中,為控制參數,為正則化參數。
66、本發明一種電子設備,包括存儲器以及處理器的特點在于,所述存儲器用于存儲支持處理器執行所述項目推薦方法的程序,所述處理器被配置為用于執行所述存儲器中存儲的程序。
67、本發明一種計算機可讀存儲介質,計算機可讀存儲介質上存儲有計算機程序的特點在于,所述計算機程序被處理器運行時執行所述項目推薦方法的步驟。
68、相對于現有技術中的方案,本發明的有益效果體現在:
69、1、本發明通過結合差分隱私和聯邦學習,在數據共享過程中有效地保護了用戶的隱私。用戶的原始數據保留在本地,只有經過噪聲擾動的梯度信息在用戶和服務器之間傳遞,從而減少了敏感信息泄露的風險。通過動態調整梯度裁剪閾值和優化模型參數,平衡模型收斂性與隱私保護強度,進一步提高項目推薦的效率。
70、2、本發明利用多視圖數據(如評分矩陣、用戶特征矩陣和項目特征矩陣)進行矩陣分解,融合多維特征信息,顯著提升了項目推薦的準確性。
71、3、本發明采用聯邦學習框架,大部分計算在用戶端進行,服務端僅負責聚合擾動后的梯度并更新模型參數。這種分布式計算方式有效減少了服務端的計算壓力和數據存儲需求,同時降低了通信開銷,提高了項目推薦的效率和可擴展性。
技術實現思路