摘 要: 以往的協(xié)同過(guò)濾推薦算法具有數(shù)據(jù)稀疏性問(wèn)題,而對(duì)于新資源還具有“冷啟動(dòng)”問(wèn)題。為此提出了一種基于資源特征的協(xié)同過(guò)濾推薦方法。通過(guò)收集和分析用戶(hù)的行為,將用戶(hù)對(duì)于資源的喜好轉(zhuǎn)化為用戶(hù)對(duì)于關(guān)鍵詞的興趣權(quán)重,將用戶(hù)興趣的改變表示為用戶(hù)興趣關(guān)鍵詞權(quán)重的改變,以此來(lái)建立和更新用戶(hù)興趣模型。最后,通過(guò)發(fā)現(xiàn)用戶(hù)興趣模型與資源模型之間的聯(lián)系從而達(dá)到資源推薦的目的。實(shí)驗(yàn)表明,該算法不僅可以跟蹤用戶(hù)的興趣變遷,而且沒(méi)有數(shù)據(jù)稀疏性問(wèn)題和新資源的“冷啟動(dòng)”問(wèn)題。
關(guān)鍵詞: 智能推薦;個(gè)性化推薦;推薦引擎
隨著網(wǎng)絡(luò)的迅速發(fā)展,資源數(shù)量也成倍地增長(zhǎng)。所面臨的問(wèn)題已經(jīng)不是如何找到資源,而是怎樣從資源海洋中找到自己所需要的資源。用戶(hù)獲取所需資源最常用的手段就是搜索關(guān)鍵詞和瀏覽推薦資源。以往簡(jiǎn)單的搜索和推薦資源并沒(méi)有考慮用戶(hù)的個(gè)性化需求(即沒(méi)有針對(duì)性),找到的資源可能與用戶(hù)需要的資源差距很大。此外,有時(shí)候用戶(hù)也無(wú)法準(zhǔn)確地把自己的需求形象地表示出來(lái)。
所謂推薦引擎,就是不需要用戶(hù)額外的勞動(dòng),就可以根據(jù)用戶(hù)的個(gè)性化特征推測(cè)用戶(hù)可能感興趣的資源,然后再將其推薦給用戶(hù)。個(gè)性化推薦在某些領(lǐng)域已經(jīng)取得了成功,最有名的有亞馬遜推薦系統(tǒng)、Pandora音樂(lè)推薦系統(tǒng)等。目前,個(gè)性化服務(wù)的研究已經(jīng)越來(lái)越受重視,尤其是在電子商務(wù)領(lǐng)域和搜索引擎領(lǐng)域。
1 相關(guān)研究
目前,針對(duì)推薦引擎的理論已經(jīng)有很多研究,推薦主要可以分為基于內(nèi)容的推薦、協(xié)同過(guò)濾推薦和混合推薦。協(xié)同過(guò)濾推薦又可分為基于用戶(hù)的推薦、基于項(xiàng)目的推薦和基于模型的推薦。參考文獻(xiàn)[1]中論述了推薦引擎的工作原理和其中涉及的各種推薦機(jī)制。參考文獻(xiàn)[2]和[3]中論述了在協(xié)同推薦算法中加入了用戶(hù)背景信息,將用戶(hù)或者資源進(jìn)行分類(lèi)以提高推薦的準(zhǔn)確度。參考文獻(xiàn)[4]在協(xié)同推薦算法中加入時(shí)間因素以跟蹤用戶(hù)的短期興趣和長(zhǎng)期興趣。以往的協(xié)同推薦算法都是根據(jù)用戶(hù)以往對(duì)于資源的興趣評(píng)分來(lái)推測(cè)該用戶(hù)對(duì)其他未評(píng)分的物品的興趣評(píng)分,它只考慮用戶(hù)對(duì)物品的態(tài)度,而忽略了物品本身的屬性和特征,因此對(duì)于新物品的推薦有“冷啟動(dòng)”問(wèn)題。此外,它還具有數(shù)據(jù)稀疏性問(wèn)題。
針對(duì)以往協(xié)同過(guò)濾推薦算法的不足,本文提出了基于資源特征的協(xié)同過(guò)濾推薦算法。通過(guò)記錄和分析用戶(hù)在網(wǎng)站上的動(dòng)態(tài)行為,將用戶(hù)對(duì)于資源的喜好轉(zhuǎn)化為用戶(hù)對(duì)于關(guān)鍵詞的興趣權(quán)重,將用戶(hù)興趣的變化轉(zhuǎn)化為用戶(hù)興趣關(guān)鍵詞權(quán)重的變化,以此建立用戶(hù)興趣模型。最后,通過(guò)建立用戶(hù)興趣模型與資源模型間的關(guān)聯(lián)達(dá)到資源推薦的目的。它不僅沒(méi)有“冷啟動(dòng)”問(wèn)題和數(shù)據(jù)稀疏性問(wèn)題,而且能夠跟蹤用戶(hù)的長(zhǎng)期興趣和短期興趣。
3.1 信息收集
本文的信息收集不同于以往的協(xié)同推薦算法,它通過(guò)收集用戶(hù)在網(wǎng)站上的動(dòng)態(tài)行為來(lái)作為用戶(hù)的興趣源。以基礎(chǔ)教育資源網(wǎng)為例,能夠表達(dá)用戶(hù)愛(ài)好的操作行為主要有瀏覽、播放、下載、預(yù)覽、推薦、收藏、刪除收藏、分享、搜索、評(píng)分、評(píng)論、購(gòu)買(mǎi)等。不同的行為所表達(dá)的用戶(hù)對(duì)于資源的愛(ài)好程度不一定相同(例如瀏覽和收藏表達(dá)的用戶(hù)愛(ài)好程度不一致)。因此,當(dāng)用戶(hù)執(zhí)行該類(lèi)操作時(shí),需要記錄用戶(hù)操作的類(lèi)型和訪(fǎng)問(wèn)時(shí)間作為用戶(hù)興趣的依據(jù)。
3.2 用戶(hù)興趣建模
考慮到網(wǎng)站的性能需求,用戶(hù)興趣模型的更新是周期性的,即離線(xiàn)進(jìn)行。用戶(hù)興趣模型的建立和更新分為以下幾個(gè)步驟:
?。?)將用戶(hù)行為記錄轉(zhuǎn)化為用戶(hù)關(guān)鍵詞興趣權(quán)重,并把對(duì)應(yīng)關(guān)鍵詞的最后訪(fǎng)問(wèn)時(shí)間設(shè)定為該行為的發(fā)生時(shí)間,然后刪除該行為記錄。在將用戶(hù)的行為轉(zhuǎn)化為用戶(hù)興趣關(guān)鍵詞權(quán)重時(shí),根據(jù)行為的不同對(duì)應(yīng)關(guān)鍵詞的權(quán)重增量也不同,例如瀏覽時(shí)與資源相關(guān)的關(guān)鍵詞的興趣權(quán)重分別增加a,而收藏時(shí)與資源相關(guān)的關(guān)鍵詞的興趣權(quán)重分別增加2a,刪除收藏則對(duì)應(yīng)關(guān)鍵詞權(quán)重增量為-2a。關(guān)鍵詞興趣權(quán)重值最大不應(yīng)超過(guò)Wmax(最大權(quán)重值Wmax為常數(shù)),且不能小于0(小于0則刪除該記錄)。
?。?)根據(jù)時(shí)間窗(為一常數(shù))更新所有興趣關(guān)鍵詞權(quán)重。用戶(hù)的興趣可能會(huì)隨著時(shí)間的變化而變化,對(duì)于那些用戶(hù)不再感興趣的關(guān)鍵詞,其興趣權(quán)重應(yīng)下降。因此,如果當(dāng)前時(shí)間與某關(guān)鍵詞的訪(fǎng)問(wèn)時(shí)間之差大于時(shí)間窗t時(shí),則對(duì)應(yīng)關(guān)鍵詞的權(quán)重W會(huì)減少b(b為常量),如果W≤0,則刪除該關(guān)鍵詞記錄。
?。?)以用戶(hù)為單位采用極差變換法標(biāo)準(zhǔn)化用戶(hù)興趣關(guān)鍵詞權(quán)重。因?yàn)橥ㄟ^(guò)以上步驟獲得的用戶(hù)興趣模型是不標(biāo)準(zhǔn)的,需要進(jìn)行標(biāo)準(zhǔn)化處理之后才能正確分析出用戶(hù)的興趣。
從圖中可以看出,本文的基于資源特征的協(xié)同過(guò)濾推薦的準(zhǔn)確性要比傳統(tǒng)的基于項(xiàng)目的協(xié)同過(guò)濾推薦算法高;鄰居數(shù)太少,會(huì)使推薦的準(zhǔn)確率降低,而鄰居數(shù)太多,則對(duì)推薦的準(zhǔn)確性影響不大。
4.4 實(shí)驗(yàn)結(jié)果分析與比較
本文所提出的基于資源特征的協(xié)同過(guò)濾推薦算法與傳統(tǒng)的基于項(xiàng)目的協(xié)同過(guò)濾推薦算法的主要不同點(diǎn)在于用戶(hù)興趣的表現(xiàn)方式不同。傳統(tǒng)的基于項(xiàng)目的協(xié)同過(guò)濾推薦算法是以資源整體為單位來(lái)表示用戶(hù)的興趣,而基于項(xiàng)目關(guān)鍵詞的協(xié)同過(guò)濾推薦算法是以資源特征為單位來(lái)表示用戶(hù)的興趣。
與傳統(tǒng)的基于項(xiàng)目的協(xié)同過(guò)濾推薦算法相比,本文所提出的基于資源特征的協(xié)同過(guò)濾推薦算法可以跟蹤用戶(hù)的短期興趣和長(zhǎng)期興趣,不存在數(shù)據(jù)稀疏性問(wèn)題和新資源的“冷啟動(dòng)”問(wèn)題,所需的顯示用戶(hù)反饋比較少,但是計(jì)算的復(fù)雜度比傳統(tǒng)算法高。
本文根據(jù)以往協(xié)同推薦算法的不足,提出了一種基于資源特征的協(xié)同過(guò)濾推薦算法。通過(guò)在基礎(chǔ)教育資源網(wǎng)上的實(shí)驗(yàn)結(jié)果表明,該算法解決了數(shù)據(jù)稀疏性問(wèn)題和新資源的“冷啟動(dòng)”問(wèn)題。同時(shí),它還能夠跟蹤用戶(hù)的興趣變遷,而推薦質(zhì)量也有所提高。下一步的工作是研究根據(jù)用戶(hù)的背景和用戶(hù)的關(guān)鍵詞興趣模型對(duì)用戶(hù)進(jìn)行聚類(lèi),以減少相似資源的計(jì)算開(kāi)銷(xiāo)并提高推薦的準(zhǔn)確性。
參考文獻(xiàn)
[1] 趙晨琳,馬春娥.探索推薦引擎內(nèi)部的秘密,第1部分:推薦引擎初探[EB/OL].(2011-03-16)[2012-03-02]. http://www.ibm.com/developerworks/cn/web/1103_zhaoct_
recommstudy1/.
[2] 吳一帆,王浩然.結(jié)合用戶(hù)背景信息的協(xié)同過(guò)濾推薦算法[J].計(jì)算機(jī)應(yīng)用,2008,28(11):2972-2974.
[3] 劉旭東,葛俊杰,陳德人.一種基于聚類(lèi)和協(xié)同過(guò)濾的組合推薦算法[J].計(jì)算機(jī)工程與科學(xué),2010,32(12): 125-127.
[4] 戰(zhàn)守義,井新.加入時(shí)間因素的個(gè)性化信息過(guò)濾技術(shù)[J].北京理工大學(xué)學(xué)報(bào),2005,25(9):782-785.
[5] 曾子明,于小鵬.電子商務(wù)推薦系統(tǒng)與智能談判技術(shù)[M].武漢: 武漢大學(xué)出版社, 2008:30-118.
[6] SARWAR B, KARYPIS G, KONSTON J, et al. Item-based collaborative filtering recommendation algorithms[C]. In: Proceedings of the 10th international conference on World Wide Web, 2001:285-295.