[發明專利]一種基于聯邦學習的社交協同過濾推薦方法有效
| 申請號: | 202210412917.7 | 申請日: | 2022-04-20 |
| 公開(公告)號: | CN114510652B | 公開(公告)日: | 2023-04-07 |
| 發明(設計)人: | 劉柏嵩;羅林澤;張雪垣;欽蔣承;張云沖 | 申請(專利權)人: | 寧波大學 |
| 主分類號: | G06F16/9536 | 分類號: | G06F16/9536;G06F18/214;G06N20/20 |
| 代理公司: | 寧波中致力專利代理事務所(普通合伙) 33322 | 代理人: | 張圓;黃挺 |
| 地址: | 315000 浙*** | 國省代碼: | 浙江;33 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 聯邦 學習 社交 協同 過濾 推薦 方法 | ||
1.一種基于聯邦學習的社交協同過濾推薦方法,其特征在于:包括以下步驟:
步驟1、由中央服務器選擇參與本地訓練的用戶客戶端,并將物品嵌入向量和對應的用戶嵌入向量分發到所述用戶客戶端;
步驟2、在用戶客戶端上進行E輪本地訓練,每輪本地訓練過程中,分別通過矩陣分解模塊、用戶對比模塊和物品對比模塊來計算模型損失函數;
步驟3、完成E輪本地訓練后,通過梯度保護模塊,得到最終需要上傳的梯度,并將其上傳至中央服務器進行梯度聚合,隨后對物品嵌入向量進行更新,完成一個完整的通訊輪次;
步驟4、重復步驟1至步驟3,直至完成預定個數的通訊輪次,得到充分訓練后的用戶嵌入向量和物品嵌入向量;
步驟5、將步驟4得到的用戶嵌入向量和物品嵌入向量作為評分預測模塊的輸入,得到對用戶推薦的物品序列;
所述矩陣分解模塊中,將第t個通訊輪次中,用戶客戶端接收到的用戶嵌入向量和物品嵌入向量作為輸入,計算得到矩陣分解損失為:
,
其中,表示用戶i對物品j的歷史評分,表示第t個通訊輪次時用戶i的嵌入向量,表示第t個通訊輪次時物品j的嵌入向量,為用戶i的歷史評分物品序列;
所述用戶對比模塊中,當用戶i的社交信任用戶嵌入向量為,隨機選擇的陌生用戶嵌入向量為,對用戶i,其嵌入向量與其每個信任用戶的嵌入向量構成n個正對,取數量為的隨機用戶嵌入向量,將用戶i的嵌入向量與所述隨機用戶嵌入向量構成個負對,則計算得到用戶對比損失為:
,
其中,sim()為點積相似度函數,用向量間的點積結果表示向量間的相似度,同時考慮了向量在模和方向上的相似性,為對用戶相似度縮放的溫度超參數,表示集合中的元素數量;
所述物品對比模塊中,將當前通訊輪次的物品嵌入向量與中央服務器分發的物品嵌入向量作為一組正對,將當前通訊輪次的物品嵌入向量與上一個通訊輪次的物品嵌入向量作為一個負對,計算得到物品對比損失為:
,
其中,對于用戶客戶端i,,,分別表示第t個通訊輪次的本地物品嵌入向量,第t個通訊輪次的全局物品嵌入向量和第t-1個通訊輪次的本地物品嵌入向量,sim()為點積相似度函數,為對物品相似度縮放的溫度超參數;
模型最終的損失函數為:
,
其中,和分別為控制用戶和物品對比損失的超參數。
2.根據權利要求1所述的一種基于聯邦學習的社交協同過濾推薦方法,其特征在于:步驟3中在上傳梯度之前,對梯度加上一個符合拉普拉斯噪聲的擾動:
,
其中,對于第i個用戶客戶端,為擾動后的梯度,為擾動前的原始梯度,為滿足-差分隱私的一個噪聲,為差分隱私的敏感度,為差分隱私的隱私預算。
3.根據權利要求2所述的一種基于聯邦學習的社交協同過濾推薦方法,其特征在于:得到擾動后的梯度后,利用FedAvg方法對梯度進行聚合,利用訓練樣本數量對梯度進行加權處理:
,
,
其中,為參與第t輪訓練的用戶客戶端集合,為第i個用戶客戶端中所包含的訓練樣本個數,N為第t輪訓練中所有參與訓練的用戶客戶端中訓練樣本總數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于寧波大學,未經寧波大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210412917.7/1.html,轉載請聲明來源鉆瓜專利網。





