摘 要: 以往的協(xié)同過濾推薦算法具有數(shù)據(jù)稀疏性問題,而對于新資源還具有“冷啟動”問題。為此提出了一種基于資源特征的協(xié)同過濾推薦方法。通過收集和分析用戶的行為,將用戶對于資源的喜好轉(zhuǎn)化為用戶對于關(guān)鍵詞的興趣權(quán)重,將用戶興趣的改變表示為用戶興趣關(guān)鍵詞權(quán)重的改變,以此來建立和更新用戶興趣模型。最后,通過發(fā)現(xiàn)用戶興趣模型與資源模型之間的聯(lián)系從而達到資源推薦的目的。實驗表明,該算法不僅可以跟蹤用戶的興趣變遷,而且沒有數(shù)據(jù)稀疏性問題和新資源的“冷啟動”問題。
關(guān)鍵詞: 智能推薦;個性化推薦;推薦引擎
隨著網(wǎng)絡(luò)的迅速發(fā)展,資源數(shù)量也成倍地增長。所面臨的問題已經(jīng)不是如何找到資源,而是怎樣從資源海洋中找到自己所需要的資源。用戶獲取所需資源最常用的手段就是搜索關(guān)鍵詞和瀏覽推薦資源。以往簡單的搜索和推薦資源并沒有考慮用戶的個性化需求(即沒有針對性),找到的資源可能與用戶需要的資源差距很大。此外,有時候用戶也無法準確地把自己的需求形象地表示出來。
所謂推薦引擎,就是不需要用戶額外的勞動,就可以根據(jù)用戶的個性化特征推測用戶可能感興趣的資源,然后再將其推薦給用戶。個性化推薦在某些領(lǐng)域已經(jīng)取得了成功,最有名的有亞馬遜推薦系統(tǒng)、Pandora音樂推薦系統(tǒng)等。目前,個性化服務(wù)的研究已經(jīng)越來越受重視,尤其是在電子商務(wù)領(lǐng)域和搜索引擎領(lǐng)域。
1 相關(guān)研究
目前,針對推薦引擎的理論已經(jīng)有很多研究,推薦主要可以分為基于內(nèi)容的推薦、協(xié)同過濾推薦和混合推薦。協(xié)同過濾推薦又可分為基于用戶的推薦、基于項目的推薦和基于模型的推薦。參考文獻[1]中論述了推薦引擎的工作原理和其中涉及的各種推薦機制。參考文獻[2]和[3]中論述了在協(xié)同推薦算法中加入了用戶背景信息,將用戶或者資源進行分類以提高推薦的準確度。參考文獻[4]在協(xié)同推薦算法中加入時間因素以跟蹤用戶的短期興趣和長期興趣。以往的協(xié)同推薦算法都是根據(jù)用戶以往對于資源的興趣評分來推測該用戶對其他未評分的物品的興趣評分,它只考慮用戶對物品的態(tài)度,而忽略了物品本身的屬性和特征,因此對于新物品的推薦有“冷啟動”問題。此外,它還具有數(shù)據(jù)稀疏性問題。
針對以往協(xié)同過濾推薦算法的不足,本文提出了基于資源特征的協(xié)同過濾推薦算法。通過記錄和分析用戶在網(wǎng)站上的動態(tài)行為,將用戶對于資源的喜好轉(zhuǎn)化為用戶對于關(guān)鍵詞的興趣權(quán)重,將用戶興趣的變化轉(zhuǎn)化為用戶興趣關(guān)鍵詞權(quán)重的變化,以此建立用戶興趣模型。最后,通過建立用戶興趣模型與資源模型間的關(guān)聯(lián)達到資源推薦的目的。它不僅沒有“冷啟動”問題和數(shù)據(jù)稀疏性問題,而且能夠跟蹤用戶的長期興趣和短期興趣。

3.1 信息收集
本文的信息收集不同于以往的協(xié)同推薦算法,它通過收集用戶在網(wǎng)站上的動態(tài)行為來作為用戶的興趣源。以基礎(chǔ)教育資源網(wǎng)為例,能夠表達用戶愛好的操作行為主要有瀏覽、播放、下載、預覽、推薦、收藏、刪除收藏、分享、搜索、評分、評論、購買等。不同的行為所表達的用戶對于資源的愛好程度不一定相同(例如瀏覽和收藏表達的用戶愛好程度不一致)。因此,當用戶執(zhí)行該類操作時,需要記錄用戶操作的類型和訪問時間作為用戶興趣的依據(jù)。
3.2 用戶興趣建模
考慮到網(wǎng)站的性能需求,用戶興趣模型的更新是周期性的,即離線進行。用戶興趣模型的建立和更新分為以下幾個步驟:
?。?)將用戶行為記錄轉(zhuǎn)化為用戶關(guān)鍵詞興趣權(quán)重,并把對應關(guān)鍵詞的最后訪問時間設(shè)定為該行為的發(fā)生時間,然后刪除該行為記錄。在將用戶的行為轉(zhuǎn)化為用戶興趣關(guān)鍵詞權(quán)重時,根據(jù)行為的不同對應關(guān)鍵詞的權(quán)重增量也不同,例如瀏覽時與資源相關(guān)的關(guān)鍵詞的興趣權(quán)重分別增加a,而收藏時與資源相關(guān)的關(guān)鍵詞的興趣權(quán)重分別增加2a,刪除收藏則對應關(guān)鍵詞權(quán)重增量為-2a。關(guān)鍵詞興趣權(quán)重值最大不應超過Wmax(最大權(quán)重值Wmax為常數(shù)),且不能小于0(小于0則刪除該記錄)。
(2)根據(jù)時間窗(為一常數(shù))更新所有興趣關(guān)鍵詞權(quán)重。用戶的興趣可能會隨著時間的變化而變化,對于那些用戶不再感興趣的關(guān)鍵詞,其興趣權(quán)重應下降。因此,如果當前時間與某關(guān)鍵詞的訪問時間之差大于時間窗t時,則對應關(guān)鍵詞的權(quán)重W會減少b(b為常量),如果W≤0,則刪除該關(guān)鍵詞記錄。
?。?)以用戶為單位采用極差變換法標準化用戶興趣關(guān)鍵詞權(quán)重。因為通過以上步驟獲得的用戶興趣模型是不標準的,需要進行標準化處理之后才能正確分析出用戶的興趣。


從圖中可以看出,本文的基于資源特征的協(xié)同過濾推薦的準確性要比傳統(tǒng)的基于項目的協(xié)同過濾推薦算法高;鄰居數(shù)太少,會使推薦的準確率降低,而鄰居數(shù)太多,則對推薦的準確性影響不大。
4.4 實驗結(jié)果分析與比較
本文所提出的基于資源特征的協(xié)同過濾推薦算法與傳統(tǒng)的基于項目的協(xié)同過濾推薦算法的主要不同點在于用戶興趣的表現(xiàn)方式不同。傳統(tǒng)的基于項目的協(xié)同過濾推薦算法是以資源整體為單位來表示用戶的興趣,而基于項目關(guān)鍵詞的協(xié)同過濾推薦算法是以資源特征為單位來表示用戶的興趣。
與傳統(tǒng)的基于項目的協(xié)同過濾推薦算法相比,本文所提出的基于資源特征的協(xié)同過濾推薦算法可以跟蹤用戶的短期興趣和長期興趣,不存在數(shù)據(jù)稀疏性問題和新資源的“冷啟動”問題,所需的顯示用戶反饋比較少,但是計算的復雜度比傳統(tǒng)算法高。
本文根據(jù)以往協(xié)同推薦算法的不足,提出了一種基于資源特征的協(xié)同過濾推薦算法。通過在基礎(chǔ)教育資源網(wǎng)上的實驗結(jié)果表明,該算法解決了數(shù)據(jù)稀疏性問題和新資源的“冷啟動”問題。同時,它還能夠跟蹤用戶的興趣變遷,而推薦質(zhì)量也有所提高。下一步的工作是研究根據(jù)用戶的背景和用戶的關(guā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é)合用戶背景信息的協(xié)同過濾推薦算法[J].計算機應用,2008,28(11):2972-2974.
[3] 劉旭東,葛俊杰,陳德人.一種基于聚類和協(xié)同過濾的組合推薦算法[J].計算機工程與科學,2010,32(12): 125-127.
[4] 戰(zhàn)守義,井新.加入時間因素的個性化信息過濾技術(shù)[J].北京理工大學學報,2005,25(9):782-785.
[5] 曾子明,于小鵬.電子商務(wù)推薦系統(tǒng)與智能談判技術(shù)[M].武漢: 武漢大學出版社, 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.
