[發明專利]一種基于三維張量迭代填補的推薦方法有效
| 申請號: | 202010086564.7 | 申請日: | 2020-02-11 |
| 公開(公告)號: | CN111259255B | 公開(公告)日: | 2022-03-22 |
| 發明(設計)人: | 熊智;徐愷 | 申請(專利權)人: | 汕頭大學 |
| 主分類號: | G06F16/9535 | 分類號: | G06F16/9535;G06F17/16 |
| 代理公司: | 廣州三環專利商標代理有限公司 44202 | 代理人: | 周增元;曹江 |
| 地址: | 515000 廣*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 三維 張量 填補 推薦 方法 | ||
1.一種基于三維張量迭代填補的推薦方法,其特征在于,包括以下步驟:
S1:獲取所有用戶對各個項目的評分數據,以及各個項目所屬的項目類別信息,構建三維張量A;
如果用戶i對項目j有評分,且項目j屬于類別k,則Aijk為評分值;否則,Aijk為0,其中,i,j和k分別表示用戶、項目和類別的編號,A的三個維度的大小分別為用戶的數量,項目的數量和項目類別的數量;
S2:計算所述三維張量A中不為零元素的坐標集合Ω;
S3:初始化一個與所述三維張量A具有相同維度的填補張量X,初始化一個與所述三維張量A具有相同維度的方向張量Z=0;
S4:進行迭代計算,更新所述填補張量X和方向張量Z的值;
首先計算張量的近似值Y和迭代步長λ的值,然后用0.5*Z+0.5*Y更新所述方向張量Z的值,用X+λZ更新所述填補張量X的值,
其中,表示一個張量,如果坐標(i,j,k)屬于Ω,那么否則
S5:判斷本代計算得到的所述填補張量X與上三代的X是否足夠接近,若否,則跳轉到步驟S4;若是,將本代計算得到的所述填補張量X的值作為對所述三維張量A的填補結果,記為B;
S6:根據所述填補后的三維張量B計算推薦程度矩陣T,具體地,
判斷用戶i對項目j是否評過分;
若是,則向用戶i推薦項目j的推薦程度Tij等于零,
否則,用戶i和項目j在所述填補后的三維張量B中對應一個向量,將這個向量中元素的和作為向用戶i推薦項目j的推薦程度Tij;
S7:根據在所述推薦程度矩陣T中用戶對應的各個項目推薦程度值的排序,向所述用戶推薦若干個項目。
2.根據權利要求1所述的基于三維張量迭代填補的推薦方法,其特征在于,所述步驟S4中所述張量近似值Y的計算方法如下:
將所述張量分別沿著第1維,第2維和第3維展開得到三個矩陣M1,M2和M3;分別求得這三個矩陣的最大奇異值和以及第二大奇異值和比較和的值,其中I1,I2和I3分別表示用戶,項目和項目類別的數量,將當中最小的記為d等于1,2或者3;選擇第d維作為矩陣化的展開方向;
令和分別為所述矩陣Md最大奇異值對應的左右奇異列向量;
所述張量近似值Y沿第d維展開得到的矩陣為
3.根據權利要求1所述的基于三維張量迭代填補的推薦方法,其特征在于,所述步驟S4中所述迭代步長λ的計算方法如下:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于汕頭大學,未經汕頭大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010086564.7/1.html,轉載請聲明來源鉆瓜專利網。





