專利名稱:基于灰色預(yù)測模型的推薦方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及推薦系統(tǒng)技術(shù)領(lǐng)域,特別涉及一種基于灰色預(yù)測模型的推薦方法及系統(tǒng)。
背景技術(shù):
Web 2. 0技術(shù)和交互式媒體的大力發(fā)展,使得人們從以往被動的網(wǎng)頁瀏覽者逐漸成為主動參與者,并且人們的參與度在不斷提高。然而在互聯(lián)網(wǎng)給我們帶來便利的同時,也將我們帶進了信息爆炸的時代。信息過載使得人們很難從豐富多彩的網(wǎng)絡(luò)世界中獲取對自身有價值的內(nèi)容,而且使得大量鮮為人知的信息成為網(wǎng)絡(luò)中的“暗信息”。傳統(tǒng)的基于信息過濾技術(shù)的搜索引擎缺乏個性化的考慮,仍然無法很好地解決信息過載的問題。近年來,推薦系統(tǒng)作為當前解決信息過載問題非常有潛力的方法被學術(shù)界和工業(yè)界高度關(guān)注。與傳統(tǒng)的基于信息過濾技術(shù)的搜索引擎不同,推薦系統(tǒng)不需要用戶提供用于搜索的關(guān)鍵詞,它通過分析用戶歷史行為挖掘出用戶潛在的興趣愛好,進而對其進行推薦。因此,推薦系統(tǒng)更能滿足用戶個性化的需求。根據(jù)推薦算法的不同,推薦系統(tǒng)可以分為如下幾類協(xié)同過濾系統(tǒng)、基于內(nèi)容的推薦系統(tǒng)、混合推薦系統(tǒng),以及基于用戶-項目二部圖網(wǎng)絡(luò)結(jié)構(gòu)的推薦系統(tǒng)。協(xié)同過濾系統(tǒng)是最早被提出并得到廣泛應(yīng)用的推薦系統(tǒng)。其進一步可分為基于最近鄰的協(xié)同過濾和基于項目的協(xié)同過濾。前者的基本思想是基于評分相似的最近鄰居的評分數(shù)據(jù)向目標用戶產(chǎn)生推薦;后者通過計算項目之間的相關(guān)性,然后利用用戶對相關(guān)項目的評分預(yù)測用戶對未評分項目的評分,從而推薦預(yù)測評分較高的項目給用戶?;谧罱彽膮f(xié)同過濾推薦系統(tǒng)最大的優(yōu)點是具有推薦新信息的能力,可以發(fā)現(xiàn)用戶潛在的但自己尚未察覺的興趣偏好;同時還能夠推薦音樂、電影等難以進行內(nèi)容分析的對象。基于項目的協(xié)同過濾推薦系統(tǒng)通過充分挖掘用戶的興趣愛好,推薦與其之前所選擇的項目相似度最高的項目給用戶。因此,協(xié)同過濾系統(tǒng)的核心思想可以分為兩部分首先,利用用戶的歷史信息計算 用戶或項目之間的相似性;然后利用與目標用戶相似性較高的鄰居對特定項目的評價或者利用用戶對與特定項目相似性較高的項目的評價來預(yù)測目標用戶對特定項目的喜好程度。最后,系統(tǒng)根據(jù)這一喜好程度來對目標用戶進行推薦。不難看出,協(xié)同過濾系統(tǒng)的推薦精度取決于用戶或項目間相似性計算的準確度,然而用戶評分數(shù)據(jù)的稀疏性及數(shù)據(jù)間的關(guān)聯(lián)性使得主流的相似性計算方法如余弦相似性和Pearson相關(guān)相似性難以準確度量用戶或項目間的相似性。因此,直接利用該相似性加權(quán)得到的預(yù)測評分不可信,即系統(tǒng)的推薦精度較低。此外,協(xié)同過濾系統(tǒng)也面臨著如何對新用戶進行推薦或如何推薦新產(chǎn)品給用戶的冷啟動問題以及用戶和項目數(shù)量增多,計算量線性增大的算法可擴展性問題等等。
發(fā)明內(nèi)容
(一 )要解決的技術(shù)問題本發(fā)明要解決的技術(shù)問題是如何提供一種基于灰色預(yù)測模型的推薦方法及系統(tǒng),以克服現(xiàn)有推薦方法及系統(tǒng)在用戶評分數(shù)據(jù)極端稀疏并且數(shù)據(jù)間存在嚴重關(guān)聯(lián)的情況下會導致推薦精度較低的缺點。( 二 )技術(shù)方案為解決上述技術(shù)問題,本發(fā)明提供一種基于灰色預(yù)測模型的推薦方法,其包括步驟A :建立項目間相似性矩陣; B :根據(jù)所述相似性矩陣,從目標用戶的已評項目中選擇與所述目標用戶的未評項目相似度高的預(yù)定數(shù)目的項目;C :按照與所述未評項目的相似度由低到高的順序,對所選項目的評分進行排序,得到預(yù)測序列;
D :根據(jù)所述預(yù)測序列構(gòu)建灰色預(yù)測模型;E :根據(jù)所述灰色預(yù)測模型預(yù)測所述目標用戶對所述未評項目的預(yù)測評分,根據(jù)所述預(yù)測評分向所述目標用戶推薦相應(yīng)的未評項目。優(yōu)選地,所述步驟A具體包括步驟Al :對于任意兩個項目i和j,遍歷所有用戶,得到同時對所述項目i和所述項目j給出評分的用戶集合U(i,j);A2 :根據(jù)所述用戶集合U(i,j)中的用戶,得到所述項目i對應(yīng)所述項目j的評分向量/^,以及所述項目j對應(yīng)所述項目i的評分向量$ ;A3 :根據(jù)所述評分向量&和所述評分向量/汁算得到所述項目i與所述項目j之間的相似度;A4 :重復所述步驟Al A3,直至得到各個項目之間的相似度,根據(jù)各個項目之間的相似度建立項目間相似性矩陣。優(yōu)選地,所述步驟Al中,同時對所述項目i和所述項目j給出評分的用戶集合U(i, j)的計算公式如下u(i, j) = u(i) n u(j) ;(I)其中,U⑴表示所有對所述項目i給出評分的用戶集合;U(j)表示所有對所述項目j給出評分的用戶集合。優(yōu)選地,所述步驟A3中,所述項目i與所述項目j之間的相似度計算公式如下
^ Ii. Ji( 2)sim G,■/■) = eos(fj 4、二 —-— 5
I iJ IIxII 11其中,sim(i, j)表示所述項目i與所述項目j之間的相似度。優(yōu)選地,所述步驟B具體包括步驟BI :根據(jù)所述相似性矩陣,將所述目標用戶的已評項目按照與所述目標用戶的每個未評項目的相似度由高到低排序,得到對應(yīng)每個所述未評項目的已評項目序列;B2 :判斷所述已評項目序列中的項目數(shù)量是否大于等于預(yù)定數(shù)目,如果是,從所述已評項目序列中選擇前預(yù)定數(shù)目個已評項目作為與所述目標用戶的未評項目的相似度高的項目,執(zhí)行步驟C ;否則,執(zhí)行步驟B3 ;B3 :在所述已評項目序列中補充相應(yīng)數(shù)量的偽項目以使所述已評項目序列中的項目數(shù)量達到所述預(yù)定數(shù)目,設(shè)置所述偽項目的評分為預(yù)定評分,并且設(shè)置所述偽項目與所述未評項目的相似度為極小值;B4 :選擇所述已評項目序列中的所有項目作為與所述目標用戶的未評項目的相似度高的項目,執(zhí)行步驟C。優(yōu)選地,所述步驟C中,所述預(yù)測序列的公式如下
權(quán)利要求
1.一種基于灰色預(yù)測模型的推薦方法,其特征在于,包括步驟 A :建立項目間相似性矩陣; B :根據(jù)所述相似性矩陣,從目標用戶的已評項目中選擇與所述目標用戶的未評項目相似度高的預(yù)定數(shù)目的項目; C :按照與所述未評項目的相似度由低到高的順序,對所選項目的評分進行排序,得到預(yù)測序列; D :根據(jù)所述預(yù)測序列構(gòu)建灰色預(yù)測模型; E :根據(jù)所述灰色預(yù)測模型預(yù)測所述目標用戶對所述未評項目的預(yù)測評分,根據(jù)所述預(yù)測評分向所述目標用戶推薦相應(yīng)的未評項目。
2.如權(quán)利要求I所述的方法,其特征在于,所述步驟A具體包括步驟 Al :對于任意兩個項目i和j,遍歷所有用戶,得到同時對所述項目i和所述項目j給出評分的用戶集合U(i,j); A2 :根據(jù)所述用戶集合U(i,j)中的用戶,得到所述項目i對應(yīng)所述項目j的評分向量I,以及所述項目j對應(yīng)所述項目i的評分向量Z ; A3 :根據(jù)所述評分向量g和所述評分向量j計算得到所述項目i與所述項目j之間的相似度; A4 :重復所述步驟Al A3,直至得到各個項目之間的相似度,根據(jù)各個項目之間的相似度建立項目間相似性矩陣。
3.如權(quán)利要求2所述的方法,其特征在于,所述步驟Al中,同時對所述項目i和所述項目j給出評分的用戶集合U(i,j)的計算公式如下
4.如權(quán)利要求2所述的方法,其特征在于,所述步驟A3中,所述項目i與所述項目j之間的相似度計算公式如下 sim(i,j) = cos(ij,h)=:.匕,(2 ) I iJ IxII Ji I 其中,sim(i, j)表示所述項目i與所述項目j之間的相似度。
5.如權(quán)利要求I所述的方法,其特征在于,所述步驟B具體包括步驟 BI :根據(jù)所述相似性矩陣,將所述目標用戶的已評項目按照與所述目標用戶的每個未評項目的相似度由高到低排序,得到對應(yīng)每個所述未評項目的已評項目序列; B2 :判斷所述已評項目序列中的項目數(shù)量是否大于等于預(yù)定數(shù)目,如果是,從所述已評項目序列中選擇前預(yù)定數(shù)目個已評項目作為與所述目標用戶的未評項目的相似度高的項目,執(zhí)行步驟C ;否則,執(zhí)行步驟B3 ; B3 :在所述已評項目序列中補充相應(yīng)數(shù)量的偽項目以使所述已評項目序列中的項目數(shù)量達到所述預(yù)定數(shù)目,設(shè)置所述偽項目的評分為預(yù)定評分,并且設(shè)置所述偽項目與所述未評項目的相似度為極小值;B4 :選擇所述已評項目序列中的所有項目作為與所述目標用戶的未評項目的相似度高的項目,執(zhí)行步驟C。
6.如權(quán)利要求I所述的方法,其特征在于,所述步驟C中,所述預(yù)測序列的公式如下
7.如權(quán)利要求6所述的方法,其特征在于,所述步驟D中,所述灰色預(yù)測模型公式如下
8.如權(quán)利要求I所述的方法,其特征在于,所述步驟E具體包括步驟 El :根據(jù)所述灰色預(yù)測模型預(yù)測所述目標用戶對每個所述未評項目的預(yù)測評分,所述預(yù)測評分的計算公式如下 其中,Pu, i表示用戶u對未評項目i的預(yù)測評分; E2 :依次判斷每個所述未評項目的預(yù)測評分Pu, i是否大于推薦閾值,如果是,將相應(yīng)的未評項目i推薦給所述目標用戶;否則,不推薦相應(yīng)的未評項目i。
9.一種基于灰色預(yù)測模型的推薦系統(tǒng),其特征在于,所述系統(tǒng)包括矩陣建立單元、已評項目選取單元、預(yù)測序列建立單元、灰色預(yù)測模型單元和預(yù)測推薦單元; 所述矩陣建立單元,用于建立項目間相似性矩陣; 所述已評項目選取單元,用于根據(jù)所述相似性矩陣,從目標用戶的已評項目中選擇與所述目標用戶的未評項目相似度高的預(yù)定數(shù)目的項目; 所述預(yù)測序列建立單元,用于按照與所述未評項目的相似度由低到高的順序,對所選項目的評分進行排序,得到預(yù)測序列; 所述灰色預(yù)測模型單元,用于根據(jù)所述預(yù)測序列構(gòu)建灰色預(yù)測模型; 所述預(yù)測推薦單元,用于根據(jù)所述灰色預(yù)測模型預(yù)測所述目標用戶對所述未評項目的預(yù)測評分,根據(jù)所述預(yù)測評分向所述目標用戶推薦相應(yīng)的未評項目。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述矩陣建立單元包括用戶集合模塊、評分向量模塊、相似度計算模塊和矩陣建立模塊; 所述用戶集合模塊,用于對于任意兩個項目i和j,遍歷所有用戶,得到同時對所述項目i和所述項目j給出評分的用戶集合U(i,j); 所述評分向量模塊,用于根據(jù)所述用戶集合U(i,j)中的用戶,得到所述項目i對應(yīng)所述項目j的評分向量,以及所述項目j對應(yīng)所述項目i的評分向量; 所述相似度計算模塊,用于根據(jù)所述評分向量g和所述評分向量J;計算得到所述項目i與所述項目j之間的相似度; 所述矩陣建立模塊,用于根據(jù)各個項目之間的相似度建立項目間相似性矩陣。
全文摘要
本發(fā)明公開了一種基于灰色預(yù)測模型的推薦方法及系統(tǒng),涉及推薦系統(tǒng)領(lǐng)域。所述方法包括步驟建立項目間相似性矩陣;根據(jù)所述相似性矩陣,從目標用戶的已評項目中選擇與所述目標用戶的未評項目相似度高的預(yù)定數(shù)目的項目;按照與所述未評項目的相似度由低到高的順序,對所選項目的評分進行排序,得到預(yù)測序列;根據(jù)所述預(yù)測序列構(gòu)建灰色預(yù)測模型;根據(jù)所述灰色預(yù)測模型預(yù)測所述目標用戶對所述未評項目的預(yù)測評分,根據(jù)所述預(yù)測評分向所述目標用戶推薦相應(yīng)的未評項目。所述推薦方法及系統(tǒng)在用戶評分數(shù)據(jù)極端稀疏并且數(shù)據(jù)間存在嚴重關(guān)聯(lián)的情況下依然可以保證很高的推薦精度,具有廣泛的應(yīng)用前景。
文檔編號G06F17/30GK102722550SQ20121016785
公開日2012年10月10日 申請日期2012年5月25日 優(yōu)先權(quán)日2012年5月25日
發(fā)明者曹軍威, 謝峰, 陳震 申請人:清華大學