專(zhuān)利名稱(chēng):一種基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法
技術(shù)領(lǐng)域:
本發(fā)明涉及互聯(lián)網(wǎng)信息產(chǎn)品的推薦問(wèn)題,特別針對(duì)網(wǎng)站系統(tǒng)中同時(shí)存在用戶(hù)間社交信息以及用戶(hù)對(duì)產(chǎn)品的評(píng)分信息,如何有效利用不同用戶(hù)間社交關(guān)系,并根據(jù)用戶(hù)對(duì)產(chǎn)品的歷史評(píng)分?jǐn)?shù)據(jù),快速準(zhǔn)確預(yù)測(cè)用戶(hù)對(duì)其未評(píng)價(jià)產(chǎn)品的可能評(píng)分,為目標(biāo)用戶(hù)進(jìn)行個(gè)性化信息產(chǎn)品推薦。
背景技術(shù):
互聯(lián)網(wǎng)信息產(chǎn)品指互聯(lián)網(wǎng)站上羅列的各類(lèi)商品和各種電子產(chǎn)品,包括電影、音樂(lè)、 書(shū)籍、家電以及服飾等。隨著互聯(lián)網(wǎng)的迅速發(fā)展,用戶(hù)通過(guò)網(wǎng)絡(luò)可以接觸到海量的信息產(chǎn)品。例如在淘寶網(wǎng)上有數(shù)以?xún)|計(jì)的各類(lèi)商品,在豆瓣網(wǎng)上有數(shù)以百萬(wàn)計(jì)的各類(lèi)電影。面對(duì)海量的產(chǎn)品,互聯(lián)網(wǎng)用戶(hù)往往無(wú)所適從,無(wú)法找到自己感興趣的產(chǎn)品。很多網(wǎng)站系統(tǒng)和搜索引擎開(kāi)始采用推薦的方式幫助用戶(hù)選擇合適的產(chǎn)品,有效提高用戶(hù)體驗(yàn)并實(shí)現(xiàn)商業(yè)營(yíng)銷(xiāo)。一個(gè)高效、準(zhǔn)確、個(gè)性化的推薦系統(tǒng)已經(jīng)成為互聯(lián)網(wǎng)應(yīng)用領(lǐng)域的研發(fā)熱點(diǎn)之一。目前的推薦系統(tǒng)主要采用兩類(lèi)方法。其一是協(xié)同過(guò)濾方法。該方法利用互聯(lián)網(wǎng)用戶(hù)的歷史評(píng)分信息計(jì)算用戶(hù)之間的評(píng)分相似度。當(dāng)系統(tǒng)為某個(gè)用戶(hù)推薦產(chǎn)品時(shí),首先選出與之相似度最高的若干其他用戶(hù);然后利用其他用戶(hù)對(duì)產(chǎn)品的評(píng)價(jià)信息來(lái)預(yù)測(cè)目標(biāo)用戶(hù)對(duì)未評(píng)價(jià)產(chǎn)品的評(píng)分;最后推薦評(píng)分最高的信息產(chǎn)品。協(xié)同過(guò)濾方法的優(yōu)點(diǎn)是可以借鑒相似用戶(hù)的評(píng)價(jià)信息為目標(biāo)用戶(hù)提供推薦。其二是矩陣分解方法。該方法將用戶(hù)對(duì)產(chǎn)品的評(píng)價(jià)信息組織為一個(gè)評(píng)分矩陣,采用奇異值分解(Singular Value Decomposition)技術(shù),為每個(gè)用戶(hù)、產(chǎn)品分解出一個(gè)特征向量;使得用戶(hù)對(duì)產(chǎn)品的評(píng)分可以通過(guò)計(jì)算用戶(hù)和產(chǎn)品特征向量的內(nèi)積來(lái)獲得。矩陣分解方法的優(yōu)點(diǎn)是可以減少需要估計(jì)和學(xué)習(xí)的參數(shù)數(shù)量,提高推薦系統(tǒng)的性能。互聯(lián)網(wǎng)用戶(hù)對(duì)信息產(chǎn)品的評(píng)價(jià)會(huì)受到其朋友或關(guān)注對(duì)象的影響,朋友關(guān)系或關(guān)注關(guān)系通過(guò)用戶(hù)之間的社交關(guān)系反映。目前大多數(shù)網(wǎng)站系統(tǒng)都整合了在線(xiàn)社交關(guān)系網(wǎng)絡(luò),例如豆瓣網(wǎng)、淘寶網(wǎng)和大眾點(diǎn)評(píng)網(wǎng)等都集成了社交系統(tǒng)。傳統(tǒng)推薦方法沒(méi)有很好考慮用戶(hù)間的社交關(guān)系,不能準(zhǔn)確的為用戶(hù)提供推薦;同時(shí)還存在“冷啟動(dòng)”問(wèn)題,不能為新加入用戶(hù)和新產(chǎn)品提供有效推薦。
發(fā)明內(nèi)容
本發(fā)明的主要目的是針對(duì)互聯(lián)網(wǎng)海量信息產(chǎn)品的推薦問(wèn)題,為目標(biāo)用戶(hù)提供準(zhǔn)確的個(gè)性化產(chǎn)品推薦。該方法運(yùn)用協(xié)同過(guò)濾和矩陣分解技術(shù),引入對(duì)用戶(hù)社交關(guān)系的分析,結(jié)合產(chǎn)品類(lèi)別信息為目標(biāo)用戶(hù)提供個(gè)性化產(chǎn)品推薦;能夠解決新加入用戶(hù)的“冷啟動(dòng)”問(wèn)題。 計(jì)算簡(jiǎn)單,可快速為目標(biāo)用戶(hù)完成產(chǎn)品推薦,有良好的可擴(kuò)展性和適應(yīng)性。為實(shí)現(xiàn)上述目的,本發(fā)明采用如下的步驟
1)獲取用戶(hù)對(duì)信息產(chǎn)品的評(píng)分記錄;
2)獲取用戶(hù)間社交關(guān)系記錄;3)按照目標(biāo)用戶(hù)和目標(biāo)產(chǎn)品類(lèi)別構(gòu)建評(píng)分矩陣和社交矩陣;
4)采用矩陣分解技術(shù)學(xué)習(xí)用戶(hù)特征向量和產(chǎn)品特征向量;
5)根據(jù)特征向量計(jì)算目標(biāo)用戶(hù)對(duì)不同產(chǎn)品的評(píng)分,據(jù)以推薦用戶(hù)喜好的產(chǎn)品。
上述步驟1)中獲取用戶(hù)對(duì)信息產(chǎn)品評(píng)分記錄的過(guò)程為首先確定一個(gè)或多個(gè)信息收集網(wǎng)站,收集用戶(hù)對(duì)不同信息產(chǎn)品的評(píng)價(jià)信息。令 f_表示用戶(hù),9表示信息產(chǎn)品,『表示用戶(hù)對(duì)產(chǎn)品的評(píng)分,則一個(gè)評(píng)分記錄可以表示成 < P-^r >。然后為每個(gè)用戶(hù)和產(chǎn)品設(shè)定唯一標(biāo)識(shí),如用戶(hù)標(biāo)識(shí)為產(chǎn)品標(biāo)識(shí)為%·,上述記錄轉(zhuǎn)換為< /W,·. >。最后對(duì)評(píng)分r做歸一化處理,如下式所示
其中.η,η,—,.表示網(wǎng)站系統(tǒng)中評(píng)分的最大值,而表示網(wǎng)站系統(tǒng)中評(píng)分的最小值。
上述步驟2)中獲取用戶(hù)間社交關(guān)系記錄的過(guò)程為首先識(shí)別用戶(hù)在網(wǎng)站系統(tǒng)中的社交關(guān)系朋友關(guān)系和關(guān)注關(guān)系;朋友關(guān)系為雙向關(guān)系,關(guān)注關(guān)系為單向關(guān)系。然后獲取各個(gè)用戶(hù)的唯一標(biāo)識(shí),如用戶(hù)Λ和用戶(hù)辦。接下來(lái)將用戶(hù)間社交關(guān)系轉(zhuǎn)換為社交記錄如果用戶(hù)仇和用戶(hù)是朋友關(guān)系,則添加社交記錄</.m· >和< 巧·.巧 > ;如果用戶(hù)外關(guān)注用戶(hù)A·,則只添加社交記錄< AW^ >。最后根據(jù)社交記錄設(shè)定社交關(guān)系值 〃·,如下式所示
上述步驟3)中按照目標(biāo)用戶(hù)和目標(biāo)產(chǎn)品類(lèi)別構(gòu)建評(píng)分矩陣和社交矩陣的過(guò)程為首先篩選出與目標(biāo)用戶(hù)相似的個(gè)用戶(hù)P 二 {州./^.….^},其中參數(shù),是可選參數(shù),例如選擇網(wǎng)站系統(tǒng)中全部用戶(hù)數(shù)量的50%。然后根據(jù)目標(biāo)產(chǎn)品類(lèi)別選擇同類(lèi)別或相似類(lèi)別的■個(gè)產(chǎn)品Q(chēng) = {(/1. .…·如},參數(shù)…也是可選參數(shù),例如選擇網(wǎng)站系統(tǒng)中所有的同類(lèi)別產(chǎn)品。 接下來(lái)獲取用戶(hù)群P對(duì)產(chǎn)品集Q的所有評(píng)分記錄,構(gòu)建評(píng)分矩陣禮χ ,,矩陣中元素值 a < u < ."‘ L < ’ < O為用戶(hù)凡對(duì)產(chǎn)品Φ的評(píng)分值。如果用戶(hù)P 未對(duì)產(chǎn)品識(shí)評(píng)分,則 丨設(shè)為空值。 下一步根據(jù)用戶(hù)的評(píng)分信息計(jì)算社交用戶(hù)之間的評(píng)分相似度。根據(jù)用戶(hù)群P中兩兩用戶(hù)之間的社交關(guān)系值,構(gòu)建社交矩陣· 》>: 。調(diào)整矩陣元素^r為用戶(hù)A與用戶(hù)ft.的評(píng)分相似度iC計(jì)算公式如下
其中Qw C Q表示用戶(hù)仏和終.共同評(píng)價(jià)過(guò)的產(chǎn)品;乙和4分別表示用戶(hù)&和辦對(duì) Gw中產(chǎn)品評(píng)分的均值。再對(duì)矩陣Sm 的元素按行進(jìn)行歸一化處理,公式如下(其中若 Σ—二'C — U,則心,=())
權(quán)利要求
1.一種基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其特征在于包含以下步驟1)獲取用戶(hù)對(duì)信息產(chǎn)品的評(píng)分記錄;2)獲取用戶(hù)間社交關(guān)系記錄;
2.根據(jù)權(quán)利要求1所述的基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其特征在于步驟 1)中獲取用戶(hù)對(duì)信息產(chǎn)品評(píng)分記錄的流程是首先確定一個(gè)或多個(gè)信息收集網(wǎng)站,收集用戶(hù)對(duì)不同信息產(chǎn)品的評(píng)價(jià)信息令P 表示用戶(hù),9表示信息產(chǎn)品,『表示用戶(hù)對(duì)產(chǎn)品的評(píng)分,則一個(gè)評(píng)分記錄可以表示成 < P-fl-r > ;然后為每個(gè)用戶(hù)和產(chǎn)品設(shè)定唯一標(biāo)識(shí),如用戶(hù)標(biāo)識(shí)為P..,,產(chǎn)品標(biāo)識(shí)為ft,上述記錄轉(zhuǎn)換為< P,,·屮· > ;最后對(duì)評(píng)分r做歸一化處理,如下式所示其中表示網(wǎng)站系統(tǒng)中評(píng)分的最大值,而》表示網(wǎng)站系統(tǒng)中評(píng)分的最小值。
3.根據(jù)權(quán)利要求1或2所述的基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其特征在于步驟2)中獲取用戶(hù)間社交關(guān)系記錄的流程是首先識(shí)別用戶(hù)在網(wǎng)站系統(tǒng)中的社交關(guān)系 朋友關(guān)系和關(guān)注關(guān)系;朋友關(guān)系為雙向關(guān)系,關(guān)注關(guān)系為單向關(guān)系;然后獲取各個(gè)用戶(hù)的唯一標(biāo)識(shí),如用戶(hù)A和用戶(hù)A ;接下來(lái)將用戶(hù)間社交關(guān)系轉(zhuǎn)換為社交記錄如果用戶(hù)Λ和用戶(hù)A是朋友關(guān)系,則添加社交記錄</U·· >和< > ;如果用戶(hù)1 關(guān)注用戶(hù)Λ,則只添加社交記錄< /V/V > ;最后根據(jù)社交記錄設(shè)定社交關(guān)系值,如下式所示
4.根據(jù)權(quán)利要求1或2所述的基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其特征在于步驟3)中按照目標(biāo)用戶(hù)和目標(biāo)產(chǎn)品類(lèi)別構(gòu)建評(píng)分矩陣和社交矩陣的流程是首先篩選出與目標(biāo)用戶(hù)相似的η個(gè)用戶(hù)Zi = Om ·…/> },其中參數(shù)π是可選參數(shù);然后根據(jù)目標(biāo)產(chǎn)品類(lèi)別選擇同類(lèi)別或相似類(lèi)別的個(gè)產(chǎn)品◎二 {y+卜他··…如},參數(shù)m也是可選參數(shù); 接下來(lái)獲取用戶(hù)群P對(duì)產(chǎn)品集Q的所有評(píng)分記錄,構(gòu)建評(píng)分矩陣禮χ ,,矩陣中元素值 a < u < ."‘ L < ’ < O為用戶(hù)&對(duì)產(chǎn)品ft的評(píng)分值;如果用戶(hù)A未對(duì)產(chǎn)品劣評(píng)分,則》’《設(shè)為空值;下一步根據(jù)用戶(hù)的評(píng)分信息計(jì)算社交用戶(hù)之間的評(píng)分相似度;根據(jù)用戶(hù)群P中兩兩用戶(hù)之間的社交關(guān)系值,構(gòu)建社交矩陣;調(diào)整矩陣元素^£ 為用戶(hù)A與用戶(hù)辦的評(píng)分相似度《;;,計(jì)算公式如下其中認(rèn)廠C Q表示用戶(hù)外和辦共同評(píng)價(jià)過(guò)的產(chǎn)品;+P._,和。分別表示用戶(hù)&和辦對(duì)Uw 中產(chǎn)品評(píng)分的均值;再對(duì)矩陣的元素按行進(jìn)行歸一化處理,公式如下
5.根據(jù)權(quán)利要求1或2所述的基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其特征在于步驟4)中采用矩陣分解技術(shù)學(xué)習(xí)用戶(hù)特征向量和產(chǎn)品特征向量的流程是首先設(shè)定用戶(hù)與產(chǎn)品特征向量的維度β,維度β屬于可選參數(shù);用戶(hù) 的特征向量表示為
6.根據(jù)權(quán)利要求1或2所述的基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其特征在于步驟幻中為目標(biāo)用戶(hù)推薦產(chǎn)品的流程是首先獲得用戶(hù)隊(duì)的特征向量/ ;然后獲取指定產(chǎn)品類(lèi)別中用戶(hù)A未評(píng)分的所有產(chǎn)品,針對(duì)其中每一個(gè)產(chǎn)品Φ,計(jì)算用戶(hù)俗對(duì)產(chǎn)品$的評(píng)分預(yù)測(cè)值‘,其中追加用戶(hù)評(píng)分傾向和產(chǎn)品綜合印象,公式如下對(duì)所有待評(píng)分產(chǎn)品預(yù)測(cè)完畢之后,將產(chǎn)品評(píng)分預(yù)測(cè)值排序,挑選其中評(píng)分值最高的& 個(gè)產(chǎn)品推薦給目標(biāo)用戶(hù)。
全文摘要
本發(fā)明公開(kāi)了一種基于矩陣分解的互聯(lián)網(wǎng)信息產(chǎn)品推薦方法,其步驟是1)獲取用戶(hù)對(duì)信息產(chǎn)品的評(píng)分記錄;2)獲取互聯(lián)網(wǎng)用戶(hù)間的社交關(guān)系記錄;3)按照目標(biāo)用戶(hù)和目標(biāo)產(chǎn)品類(lèi)別構(gòu)建評(píng)分矩陣和社交矩陣;4)采用矩陣分解技術(shù)學(xué)習(xí)用戶(hù)特征向量和產(chǎn)品特征向量;5)根據(jù)特征向量計(jì)算目標(biāo)用戶(hù)對(duì)不同產(chǎn)品的評(píng)分,據(jù)以推薦用戶(hù)喜好的產(chǎn)品。本發(fā)明引入對(duì)用戶(hù)社交關(guān)系的分析,結(jié)合產(chǎn)品類(lèi)別信息為目標(biāo)用戶(hù)提供個(gè)性化產(chǎn)品推薦。計(jì)算簡(jiǎn)單快速,有良好的可擴(kuò)展性和適應(yīng)性,適于互聯(lián)網(wǎng)用戶(hù)的高動(dòng)態(tài)性以及面向海量產(chǎn)品的推薦。
文檔編號(hào)G06F17/16GK102426686SQ20111029899
公開(kāi)日2012年4月25日 申請(qǐng)日期2011年9月29日 優(yōu)先權(quán)日2011年9月29日
發(fā)明者李敏, 湯九斌, 陳道蓄, 顧慶, 駱斌 申請(qǐng)人:南京大學(xué)