基于MapReduce模型的興趣感知服務(wù)推薦方法
【專利摘要】本發(fā)明公開了基于MapReduce模型的興趣感知服務(wù)推薦方法,包括以下步驟:步驟1:歷史用戶評(píng)論獲取數(shù)據(jù)集;步驟2:根據(jù)本發(fā)明提供相應(yīng)的關(guān)鍵詞列表和領(lǐng)域詞庫提取目標(biāo)用戶和歷史用戶的興趣,目標(biāo)用戶表示當(dāng)前需要被推薦的用戶;步驟3:對(duì)每個(gè)候選Web服務(wù),計(jì)算目標(biāo)用戶與該候選Web服務(wù)的歷史用戶的相似度,為目標(biāo)用戶尋找相似的用戶;步驟4:計(jì)算出目標(biāo)用戶和歷史用戶的相似度后,根據(jù)一種加權(quán)平均方法為目標(biāo)用戶預(yù)測(cè)出對(duì)于候選Web服務(wù)的個(gè)性化的評(píng)分,為目標(biāo)用戶提供一個(gè)個(gè)性化的服務(wù)排名列表,根據(jù)個(gè)性化的排名列表為用戶推薦;步驟5:將步驟2至步驟4以Map-Reduce編程框架實(shí)現(xiàn),分為四個(gè)階段并行處理。
【專利說明】基于MapReduce模型的興趣感知服務(wù)推薦方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)數(shù)據(jù)處理領(lǐng)域,特別是一種適用于服務(wù)推薦的一種基于Map-Reduce模型的興趣感知服務(wù)推薦方法。
【背景技術(shù)】
[0002]Internet的迅猛發(fā)展將人類帶入了信息社會(huì)和網(wǎng)絡(luò)經(jīng)濟(jì)時(shí)代,對(duì)企業(yè)發(fā)展和個(gè)人生活都產(chǎn)生了深刻的影響。在電子商務(wù)的虛擬環(huán)境下,商家所提供的商品種類和數(shù)量非常多,用戶不可能通過一個(gè)小小的計(jì)算機(jī)屏幕一眼就知道所有的商品,用戶也不可能像在物理環(huán)境下那樣檢查挑選商品。因此,需要商家提供一些智能化的選購指導(dǎo),根據(jù)用戶的興趣愛好推薦用戶可能感興趣或是滿意的商品,使用戶能夠很方便地得到自己所需要得到的商品。在這種背景下,推薦系統(tǒng)(Recommender Systems)應(yīng)運(yùn)而生。它是根據(jù)用戶的特征,t匕如興趣愛好,推薦滿足用戶要求的對(duì)象,也稱個(gè)性化推薦系統(tǒng)(Personalized RecommenderSystems)0實(shí)際中應(yīng)用最多的,是在網(wǎng)上購物(尤其是B2C類型)環(huán)境下的、以商品為推薦對(duì)象的個(gè)性化推薦系統(tǒng),它為用戶推薦符合興趣愛好的商品,如書籍,音像等。
[0003]大多數(shù)的推薦系統(tǒng)都是基于不同的評(píng)分策略為用戶推薦最合適的候選Web服務(wù)?,F(xiàn)存的服務(wù)推薦系統(tǒng)主要包括三種:基于內(nèi)容的推薦系統(tǒng);協(xié)同過濾推薦系統(tǒng);混合型的推薦系統(tǒng)。基于內(nèi)容的推薦系統(tǒng)主要是根據(jù)用戶過去的選擇為用戶進(jìn)行推薦。協(xié)同過濾的推薦系統(tǒng)是根據(jù)與目標(biāo)用戶興趣相似的歷史用戶為其進(jìn)行推薦?;旌闲偷耐扑]系統(tǒng)則是將以上兩種方法結(jié)合起來。
[0004]為了獲得高效的推薦,為了獲得有效的服務(wù)組合,工業(yè)界和學(xué)術(shù)界從不同的角度對(duì)服務(wù)推薦系統(tǒng)進(jìn)行了大量研究。例如,G.Adomavicius等在“Toward the NextGeneration of Recommender Systems:A Survey of the Stateof—the—Art and PossibleExtensions”中對(duì)現(xiàn)存的推薦系統(tǒng)進(jìn)行了概述,闡述了現(xiàn)存推薦系統(tǒng)的不足以及可能的解決途徑使推薦系統(tǒng)能在更廣泛的領(lǐng)域使用。在“Accuracy Improvements forMult1-criteria Recommender Systems”中D.Jannach等提出一個(gè)多維的服務(wù)推薦方法,該方法將用戶根據(jù)用戶偏好所制定的“興趣格”進(jìn)行聚類為用戶進(jìn)行推薦。隨著Web2.0的成功,網(wǎng)上的信息量越來越大,給現(xiàn)存的推薦系統(tǒng)帶來了挑戰(zhàn)。隨著各種云計(jì)算平臺(tái)及軟件的發(fā)展,如Apache Hadoop, Mapreduce,以及Mahout等等,這些平臺(tái)可以提高推薦系統(tǒng)在大數(shù)據(jù)環(huán)境下的效率及可擴(kuò)展性。
【發(fā)明內(nèi)容】
[0005]本發(fā)明旨在克服現(xiàn)有技術(shù)中存在的不足,提供一種基于Map-Reduce模型的興趣感知服務(wù)推薦方法,為用戶提供個(gè)性化的服務(wù)推薦,并且提高了推薦系統(tǒng)的可擴(kuò)展性。
[0006]本發(fā)明公開了一種基于MapReduce模型的興趣感知服務(wù)推薦方法,包括以下步驟:
[0007]步驟1:獲取數(shù)據(jù)集,從目標(biāo)網(wǎng)站獲取服務(wù)的歷史用戶的評(píng)論及評(píng)分,進(jìn)行預(yù)處理,將獲取的評(píng)論片段中的html標(biāo)簽和停止詞除去以避免影響下面關(guān)鍵詞提取的質(zhì)量。
[0008]步驟2:本發(fā)明為用戶提供了相應(yīng)的服務(wù)領(lǐng)域的關(guān)鍵詞列表,目標(biāo)用戶通過從關(guān)鍵詞候選列表中選擇關(guān)鍵詞表示目標(biāo)用戶的興趣,形成目標(biāo)用戶興趣的關(guān)鍵詞集合;根據(jù)關(guān)鍵詞候選列表,如果歷史用戶對(duì)候選Web服務(wù)的評(píng)論中出現(xiàn)關(guān)鍵詞列表中的詞,則將關(guān)鍵詞提取出來表示歷史用戶的興趣,形成歷史用戶興趣的關(guān)鍵詞集合;
[0009]關(guān)鍵詞候選列表示一組同時(shí)用來表示用戶興趣和服務(wù)質(zhì)量屬性的詞,具體描述為K=Ik1, k2,...,Ic1...,kn}, ki表示第i個(gè)關(guān)鍵詞,n表示關(guān)鍵詞的個(gè)數(shù),n取值自然數(shù),i取I~n中任意自然數(shù)。
[0010]目標(biāo)用戶通過從關(guān)鍵詞候選列表中選擇關(guān)鍵詞來表示他的興趣。此外,目標(biāo)用戶需要選擇他所選關(guān)鍵詞的重要程度,關(guān)鍵詞重要程度的指標(biāo)如表I所示,其中“ I”表示一般,“ 3 ”表示重要,“ 5 ”表示非常重要。
[0011]表1.關(guān)鍵詞重要程度指標(biāo)
[0012]
【權(quán)利要求】
1.基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在于:包括以下步驟: 步驟1:獲取數(shù)據(jù)集,從目標(biāo)網(wǎng)站獲取服務(wù)的歷史用戶的評(píng)論及評(píng)分; 步驟2:設(shè)定關(guān)鍵詞列表,目標(biāo)用戶通過從關(guān)鍵詞候選列表中選擇關(guān)鍵詞表示目標(biāo)用戶的興趣,形成目標(biāo)用戶興趣的關(guān)鍵詞集合UK ;根據(jù)關(guān)鍵詞候選列表,如果歷史用戶對(duì)候選Web服務(wù)的評(píng)論中出現(xiàn)關(guān)鍵詞列表中的詞,則將關(guān)鍵詞提取出來表示歷史用戶的興趣,形成歷史用戶興趣的關(guān)鍵詞集合RK ;目標(biāo)用戶為當(dāng)前需要被推薦的用戶; 步驟3:對(duì)每個(gè)候選Web服務(wù),采用一種基于余弦相似度方法計(jì)算目標(biāo)用戶與該候選Web服務(wù)的歷史用戶的相似度,為目標(biāo)用戶尋找相似度最高的歷史用戶; 步驟4:采用加權(quán)平均方法為目標(biāo)用戶計(jì)算出對(duì)于每個(gè)候選Web服務(wù)的個(gè)性化的評(píng)分,為目標(biāo)用戶提供一個(gè)個(gè)性化的服務(wù)排名列表,根據(jù)個(gè)性化的排名列表為目標(biāo)用戶推薦評(píng)分最聞的服務(wù)。
2.根據(jù)權(quán)利要求1所述的基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在于,步驟2中,關(guān)鍵詞列表表示一組同時(shí)用來表示用戶興趣和服務(wù)質(zhì)量屬性的詞,具體描述為K= {も,k2,.....,kj,ki表示第i個(gè)關(guān)鍵詞,n表示關(guān)鍵詞的個(gè)數(shù),n取值自然數(shù),i取I~n中任意自然數(shù)。
3.根據(jù)權(quán)利要求2所述的基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在干,步驟2中,目標(biāo)用戶需選擇其所選關(guān)鍵詞的重要程度,程度為一般數(shù)值為1,程度為重要數(shù)值為3,程度為非常重要數(shù)值為5。
4.根據(jù)權(quán)利要求3所述的基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在干,步驟3中,將目標(biāo)用戶興趣的關(guān)鍵詞集合UK轉(zhuǎn)化為n維的權(quán)重向量
5.根據(jù)權(quán)利要求4所述的基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在干,采用層次分析處理AHP模型計(jì)算目標(biāo)用戶興趣的關(guān)鍵詞集合的權(quán)重向量包括如下步驟: 如果關(guān)鍵詞列表中的關(guān)鍵詞 < 不在目標(biāo)用戶興趣關(guān)鍵詞集合中,則=0; 如果關(guān)鍵詞列表中的關(guān)鍵詞h在目標(biāo)用戶興趣關(guān)鍵詞集合中,則采用層次分析處理AHP模型計(jì)算; 創(chuàng)建關(guān)于目標(biāo)用戶興趣的關(guān)鍵詞集合中的任意兩個(gè)關(guān)鍵詞的相對(duì)重要性的成對(duì)比較矩陣Am=(au)m,兩個(gè)關(guān)鍵詞的相對(duì)重要性是目標(biāo)用戶選擇的關(guān)鍵詞重要程度的比值,該矩陣需滿足以下述三個(gè)條件:
Daij=I, i=j=l, 2,3,...,m,
2)ajJ-=IZaji, i, j=l, 2, 3,..., m andi Φ.j,
3)_&kj,i j j j k_I,2,3,...,m cindi j, 其中,au表示兩個(gè)關(guān)鍵詞的相對(duì)重要程度,m是目標(biāo)用戶興趣關(guān)鍵詞集合中關(guān)鍵詞的個(gè)數(shù),i, j, k表示關(guān)鍵詞的標(biāo)號(hào); 通過以下公式計(jì)算目標(biāo)用戶興趣關(guān)鍵詞h的權(quán)重:
6.根據(jù)權(quán)利要求5所述的基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在于,步驟4中采用加權(quán)平均方法為目標(biāo)用戶計(jì)算每個(gè)候選Web服務(wù)個(gè)性化的評(píng)分pr,公式如下:
7.根據(jù)權(quán)利要求6所述的基于MapReduce模型的興趣感知服務(wù)推薦方法,其特征在干,步驟4后包括步驟5:將步驟2至步驟4以Map-Reduce編程框架實(shí)現(xiàn),分為四個(gè)階段并行處理,具體為: 一:將步驟2中所有候選Web服務(wù)的評(píng)論轉(zhuǎn)化為歷史用戶興趣關(guān)鍵詞集合的過程并行處理,同時(shí)將步驟4中計(jì)算每個(gè)候選Web服務(wù)評(píng)分的算數(shù)平均值F的過程在這ー步中并行處理; 二:將步驟3中候選Web服務(wù)的歷史用戶的所有評(píng)論分別轉(zhuǎn)化為評(píng)論關(guān)鍵詞集合RK’的過程并行處理,并將利用TF-1DF方法計(jì)算候選Web服務(wù)的歷史用戶興趣關(guān)鍵詞集合的權(quán)重向量的過程并行處理; 三:將步驟3中計(jì)算目標(biāo)用戶和候選Web服務(wù)的歷史用戶間的相似度的過程并行處理; 四:將步驟4中為目標(biāo)用戶計(jì)算對(duì)每個(gè)候選Web服務(wù)的個(gè)性化評(píng)分的過程并行處理,最后根據(jù)個(gè)性化的排名列表為目標(biāo)用戶推薦評(píng)分最高的服務(wù)。
【文檔編號(hào)】G06F17/30GK103455613SQ201310405629
【公開日】2013年12月18日 申請(qǐng)日期:2013年9月6日 優(yōu)先權(quán)日:2013年9月6日
【發(fā)明者】竇萬春, 孟順梅 申請(qǐng)人:南京大學(xué)