基于以列表為單位的用戶推薦列表生成方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及服務(wù)信息推送技術(shù)領(lǐng)域,特別涉及基于以列表為單位的用戶推薦列表 生成方法及系統(tǒng)。
【背景技術(shù)】
[0002] 當(dāng)前,網(wǎng)絡(luò)服務(wù)商為用戶提供了諸如新聞、商品、圖片、視頻、音頻、文檔等(以下 統(tǒng)一簡(jiǎn)稱為物品)的在線服務(wù)。為了更好的為用戶提供服務(wù),服務(wù)商會(huì)記錄用戶的歷史行 為,例如記錄用戶購(gòu)買(mǎi)(使用)過(guò)哪些物品、對(duì)物品的評(píng)價(jià)等。用戶對(duì)物品的評(píng)分是分析用 戶偏好的重要信息。用戶對(duì)物品的評(píng)分一般為1~k的整數(shù),1表示最不喜歡,k表示最喜 歡。1~k之間的評(píng)分表示的喜歡程度依次遞增。由于每一個(gè)用戶消費(fèi)的物品數(shù)量有限,如 何根據(jù)有限的評(píng)分?jǐn)?shù)據(jù)挖掘用戶偏好,進(jìn)而據(jù)此為用戶提供推薦是推薦領(lǐng)域面臨的重要問(wèn) 題。所謂推薦即是預(yù)測(cè)用戶可能喜歡的物品、按照可能的喜歡程度排序,并把這個(gè)物品列表 推薦給用戶。在基于評(píng)分的推薦系統(tǒng)中,推薦結(jié)果通常采用兩種方式評(píng)價(jià),其一是度量對(duì)單 個(gè)物品的評(píng)分估計(jì)的準(zhǔn)確程度,稱為以單個(gè)物品為單位的方法;其二是計(jì)算物品兩兩比較 的偏好順序差異,稱為以比較對(duì)為單位的方法。
[0003] 但是以上兩種方法都不能保證最終的推薦列表與用戶的真實(shí)偏好順序一致。
【發(fā)明內(nèi)容】
[0004] 為了解決現(xiàn)有的商品或者服務(wù)推薦及評(píng)估方法生成商品或服務(wù)推薦列表與用戶 的真實(shí)偏好順序存在較大差異的缺陷,本發(fā)明提供一種基于以列表為單位的用戶推薦列表 生成方法及系統(tǒng)。
[0005] -種基于以列表為單位的用戶推薦列表生成方法,其包括如下步驟:
[0006] S1、從在線服務(wù)商處獲取用戶對(duì)物品的評(píng)分記錄,其中評(píng)分記錄為評(píng)分矩陣R,在 評(píng)分矩陣R中的每一個(gè)元素 r匕表示用戶i對(duì)物品j的評(píng)分;在用戶i沒(méi)有對(duì)物品j評(píng)分 時(shí),指示矩陣I中的元素 Ii,j= 〇,在用戶i對(duì)物品j作出評(píng)分時(shí),I i,j= 1 ;對(duì)用戶評(píng)價(jià)過(guò)的 物品,按照評(píng)分的大小順序排序,得到用戶的偏好順序Jii,其中第j個(gè)元素 π u表示排在 第j位的物品編號(hào);
[0007] S2、根據(jù)用戶的偏好順序π i,通過(guò)梯度下降法學(xué)習(xí)用戶偏好U及物品特征V ;
[0008] S3、根據(jù)所學(xué)習(xí)的用戶偏好U及物品特征V,對(duì)每一個(gè)用戶i,獲取該用戶對(duì)所有沒(méi) 有評(píng)分的物品j的評(píng)分預(yù)測(cè)值7Ij計(jì)算公式為:^ ,其中Ui, '均為行向量,u i表示 用戶i的偏好和物品j特征,\表示物品j特征,并對(duì)I按照從大到小進(jìn)行排序,得到對(duì)用 戶i推薦列表。
[0009] -種基于以列表為單位的用戶推薦列表生成系統(tǒng),其包括如下模塊:
[0010] 歷史偏好順序獲取模塊,用于從在線服務(wù)商處獲取用戶對(duì)物品的評(píng)分記錄,其中 評(píng)分記錄為評(píng)分矩陣R,在評(píng)分矩陣R中的每一個(gè)元素 ru表示用戶i對(duì)物品j的評(píng)分;在 用戶i沒(méi)有對(duì)物品j評(píng)分時(shí),指示矩陣I中的元素 Iu= 0,在用戶i對(duì)物品j作出評(píng)分時(shí), Iiij= 1;對(duì)用戶評(píng)價(jià)過(guò)的物品,按照評(píng)分的大小順序排序,得到用戶的偏好順序π i,其中第 j個(gè)元素 π U表示排在第j位的物品編號(hào);
[0011] 學(xué)習(xí)模塊,用于根據(jù)用戶的偏好順序JTi,通過(guò)梯度下降法學(xué)習(xí)用戶偏好U及物品 特征V;
[0012] 推薦列表生成模塊,用于根據(jù)所學(xué)習(xí)的用戶偏好U及物品特征V,對(duì)每一個(gè)用戶 i,獲取該用戶對(duì)所有沒(méi)有評(píng)分的物品j的評(píng)分預(yù)測(cè)值I,計(jì)算公式為:幻,其中 Ui, Vj均為行向量,u廣示用戶i的偏好和物品j特征,V j表示物品j特征,并對(duì),按照從 大到小進(jìn)行排序,得到對(duì)用戶i推薦列表。
[0013] 本發(fā)明提供的基于以列表為單位的用戶推薦列表生成方法及系統(tǒng),通過(guò)先從用戶 的選擇歷史記錄中獲取用戶的歷史偏好順序,然后基于用于的偏好順序?qū)τ脩羝煤臀锲?特征進(jìn)行學(xué)習(xí),學(xué)習(xí)的方法采用梯度下降法,然后基于學(xué)習(xí)得到的用戶偏好以及物品特征 對(duì)用戶未選中的物品的評(píng)分值進(jìn)行預(yù)測(cè),最后對(duì)該評(píng)分預(yù)測(cè)值排序,獲得了對(duì)用戶推薦列 表。通過(guò)實(shí)施本發(fā)明方法能夠使推薦結(jié)果盡可能接近用戶的真實(shí)偏好順序。
【附圖說(shuō)明】
[0014] 圖1是本發(fā)明實(shí)施的基于以列表為單位的用戶推薦列表生成方法流程圖;
[0015] 圖2是本發(fā)明實(shí)施的基于以列表為單位的用戶推薦列表生成系統(tǒng)的結(jié)構(gòu)框圖;
[0016] 圖3是圖2中學(xué)習(xí)模塊的結(jié)構(gòu)框圖。
【具體實(shí)施方式】
[0017] 如圖1所示,一種基于以列表為單位的用戶推薦列表生成方法,其包括如下步驟:
[0018] S1、從在線服務(wù)商處獲取用戶對(duì)物品的評(píng)分記錄,其中評(píng)分記錄為評(píng)分矩陣R,在 評(píng)分矩陣R中的每一個(gè)元素 ru表示用戶i對(duì)物品j的評(píng)分;在用戶i沒(méi)有對(duì)物品j評(píng)分 時(shí),指示矩陣I中的元素 Ii,j= 〇,在用戶i對(duì)物品j作出評(píng)分時(shí),I i,j= 1 ;對(duì)用戶評(píng)價(jià)過(guò)的 物品,按照評(píng)分的大小順序排序,得到用戶的偏好順序Jii,其中第j個(gè)元素 π u表示排在 第j位的物品編號(hào)。
[0019] 其中,可選地,評(píng)分為1~k的正整數(shù),1表示最不喜歡,k表示最喜歡。1~k之 間的評(píng)分表示的喜歡程度依次遞增。
[0020] S2、根據(jù)用戶的偏好順序31 i,通過(guò)梯度下降法學(xué)習(xí)用戶偏好U及物品特征V。
[0021] 可選地,所述步驟S2包括如下子步驟:
[0022] S21、初始化所預(yù)測(cè)的用戶偏好以及所預(yù)測(cè)的物品特征,包括隨機(jī)生成用戶偏好矩 陣U以及物品特征矩陣V中的每一個(gè)元素;
[0023] S22、檢查收斂條件,在迭代次數(shù)達(dá)到預(yù)設(shè)值或者目標(biāo)函數(shù)的值不再減少時(shí),跳轉(zhuǎn) 到步驟S3 ;在迭代次數(shù)小于預(yù)設(shè)值并且目標(biāo)函數(shù)的值減少時(shí),跳轉(zhuǎn)到步驟S23??蛇x地,迭 代的次數(shù)可以為100次,或者其他次數(shù)。
[0024] 可選地,度量標(biāo)準(zhǔn)的目標(biāo)函數(shù)為:
【主權(quán)項(xiàng)】
1. 一種基于以列表為