任保寧,梁永全,趙建立,廉文娟,李玉軍
(1.山東科技大學信息科學與工程學院,山東青島266500;
2.海信集團有限公司數字多媒體技術國家重點實驗室,山東青島266071)
基于多維度權重動態更新的用戶興趣模型
任保寧1,梁永全1,趙建立1,廉文娟1,李玉軍2
(1.山東科技大學信息科學與工程學院,山東青島266500;
2.海信集團有限公司數字多媒體技術國家重點實驗室,山東青島266071)
面向個性化電影推薦領域,提出一種基于多維度權重動態更新的用戶興趣模型。將電影分成演員、導演、類別、地區和時間5個維度,分別計算電影在這些維度上的相似度。采用歸一化方法將電影之間的相似度轉化為用戶興趣模型中的多維度權重,并應用TF-IDF算法計算各維度中特征詞的權重,從而實現電影各維度權重及其特征詞權重的動態更新。利用基于內容的推薦算法,在MovieLens數據集進行實驗,結果表明,該模型具有較高的推薦準確率和召回率,并且能夠發現用戶對電影維度的偏好,解決用戶興趣漂移問題。
用戶興趣模型;個性化推薦;動態權重更新;多維度;維度相似度;興趣漂移
隨著通信技術和互聯網的發展,信息量呈幾何級數增長,面對海量的信息,為使人們能找到自己需要的信息,搜索和推薦應運產生,搜索是系統根據人們輸入的查詢條件檢索信息,推薦是系統根據人們的喜好,自動地為人們呈現信息,大大滿足了用戶的需求。
個性化推薦就是根據用戶的個人喜好進行推薦,成為一個越來越受關注的領域。在個性化推薦系統中,用戶興趣模型是基礎、推薦算法的核心。用戶興趣模型[1]的表示方法有:主題表示法[2],關鍵詞列表向量法,書簽表示法,基于本體的表示法,興趣粒度表示法,向量空間模型的表示法[3],其中,向量空間模型表示法的應用較廣泛。
用戶興趣模型[4]用向量空間模型表示為:V= {PK:PW},其中,PK表示用戶興趣詞集;PW表示興趣詞對應的權重集。在個性化電影推薦系統中,用一組關鍵詞表示一個電影,電影 M:{導演:導演名…;演員:演員名…;類別:類別名…;地區:地區名…;上映時間:時間}。如果用向量空間模型表示用戶對電影的興趣模型,在PK中包含導演、演員、類別、地區等用戶感興趣的關鍵詞,可以用TF-IDF來統計各個詞的權重。
文獻[5]提出針對不同應用領域特征,建立不同的用戶興趣模型,對于電影這種特殊的資源,含有明確的維度區分(演員、類別等),但是使用向量空間模型的表示方法只能體現用戶對哪個特征詞感興趣,不能體現出用戶對哪個維度比較感興趣。
針對該問題,本文建立了兩層用戶興趣模型,在此基礎上設計電影維度權重更新算法。由于用戶興趣模型是兩層的,因此在模型更新時,主要分成兩步:各維度中興趣詞及其權重的更新和各維度權重的更新,并給出經過改進的用戶興趣模型與未改進的用戶興趣模型在基于內容推薦算法中的對比結果。
用戶對電影的興趣不能簡單地分成喜歡和不喜歡,對一部喜歡的電影,不同的用戶對于該電影的喜歡程度不同、維度不同。一個電影可以分為導演、演員、類型、地區、時間5個維度,每個維度都有自己的特征值,比如類型維度,類型維度中的特征值為喜劇、愛情、驚悚、動作等。假設2個用戶喜歡同一部電影,但是他們可能對這部電影的維度側重不同,一個可能因為這個電影的演員而喜歡,另一個可能因為這個電影的導演而喜歡。
基于以上分析,本文建立的用戶對電影的興趣模型是一個兩層模型[6],如圖1所示,中間層表示電影的維度,底層表示電影各維度上的特征值。

圖1 用戶-電影興趣模型

用戶i對某個特征值j的興趣度為:

其中,對于Wij可以用該特征值的個數占該維度中所有特征值個數的比值來計算,也可以用TF-IDF來計算權重[7]。對于wi,應該隨著用戶觀看電影的不同不斷變化。本文根據用戶看過的電影,設計一個算法來動態更新wi。
3.1 算法思想
用戶看過的電影能夠反映用戶對電影的喜好,假設用戶看過《功夫熊貓1》,并且評價還不錯,那么他看《功夫熊貓2》的概率是較大的;用戶看過周星馳演的電影并且評價不錯,那么他以后看周星馳演的電影的概率較大。
基于以上2點考慮,在用戶看過的電影記錄中取出用戶評價較高的N部電影,并且這N部電影是有順序的。用戶看第i部電影,與前i-1部電影有關。這些電影中不是在演員維度上是相似的、就是在類別維度上是相似的,又或者是在多個維度上是相似的。利用電影之間在各個維度上的相似度來調整用戶在各個維度上的權重[8]。
假設用戶看過第i-1部電影后,用戶對電影各維度上的權重為Wi-1,他因為看過第i-1部電影,才看第i部電影,那么這2部電影肯定存在一定的關系。
通過計算這2部電影在各個維度上的相似度,就可以找到這2部電影之間的關系。假設這2部用戶在導演這個維度上相似度比較大,則說明該用戶當時看這2部電影時是因為導演這個維度所致,那么該用戶在導演這個維度上權重就要增加。
本文將這2部電影在各個維度上的相似度表示為:

其中,Si表示各個維度相似度的值,它是一個[0,1]之間的數。然后把各個維度上的相似度,轉為單個維度上相似度占整個維度相似度之和的比值,即:

經過轉化,可以把相似度轉化為用戶對這2部電影在各個維度上的偏好,表示為:


其中,λ表示Wi-1所占的比率;1-λ表示P(Mi-1, Mi)所占的比率。
3.2 電影各維度的相似度計算
在用戶興趣模型中,把電影分成演員、導演、類別、地區和時間5個維度[9],分別計算電影在這些維度上的相似度。電影可以用向量M來表示,M= {M1,M2,M3,M4,M5},Mi表示電影維度。
每個維度的Mi可以表示為Mi={Mi1,Mi2,…, Min},Min表示該維度上的特征值,是有順序的。比如《大話西游之月光寶盒》,演員有周星馳、莫文蔚、吳孟達等。顯然,要計算電影的相似度,在演員這個維度上周星馳的權重是比后面2位演員的權重大。
因此,將電影在演員、導演、類別、地區這4個維度上的Mi表示為:

電影A和電影 B的在這4個維度上的相似度為:

其中,i表示電影的4個維度;j表示維度上的特征值;wij表示電影在第i個維度上、第j個特征值的權重。
電影在時間維度上一般只有一個值,電影A和電影B在時間維度上的相似度式為:

其中,Mi表示電影i的時間;Date表示當前時間;
Min()表示取最小值;Max()表示取最大值。
3.3 算法步驟
多維度權重動態更新算法步驟具體如下:
輸入 用戶看過且評分較好的電影列表 List<M>,初始值W1={0.2,0.2,0.2,0.2,0.2},λ表示式(8)中的閾值
輸出 Wi表示更新后的用戶興趣模型的權重,i表示電影列表List<M>的長度
(1)計算電影列表List<M>的長度,記為i;
(2)根據式(6)、式(7)計算第 i部電影與前i-1部電影在各個維度上的相似度,記為:Sim(Mj, Mi),其中,1<j<i;
(3)根據式(3)將Sim(Mj,Mi)轉化為P(Mj, Mi),其中,1<j<i;
(4)得到P(Mj,Mi)后,就能夠計算Wi,計算如下:

(5)輸出Wi。
多維度權重動態更新算法,是根據用戶的觀看記錄的順序以及電影之間的相似度進行動態更新。首先,設置各個維度的初值,這對所有用戶是一樣的。然后,通過式(3)把用戶觀看的電影之間的相似度轉化為用戶興趣模型中各維度的權重,這樣能夠體現用戶的個性化。另外,動態更新各維度的權重,能夠捕捉用戶的興趣漂移。
該算法的時間復雜度較高,對于觀看的N部電影,算法的時間復雜度為O(n2),需要進一步進行改進。
一個好的興趣模型是需要用戶與系統之間進行不斷的學習與更新,因為用戶興趣是不斷變化的,所以用戶興趣模型也應該是不斷變化的[10]。用戶興趣模型中的信息源是用戶看過的電影信息。用戶興趣模型更新算法為:
輸入 當前的用戶興趣模型Vi-1,剛看過的電影i,閾值?
輸出 用戶興趣模型Vi
(1)計算電影i與前前i-1部電影的相似度,得到相似度集合S;
(2)根據相似度集合S與Vi-1中的各維度的權重wi-1,利用式(8),計算出wi;
(3)統計從1部 ~i部電影在各維度上的特征詞;
(4)利用TF-IDF計算特征詞的權重,得到的權重如果大于閾值?,則把該特征詞加入模型中,否則不加入;
(5)得到Vi。
用戶興趣模型更新算法,主要是包括電影各維度權重更新、各維度中特征詞及其權重的更新。
電影各維度權重更新主要是應用多維度權重動態更新算法。各維度中特征詞及其權重的更新主要是應用TF-IDF算法計算各維度中特征詞的權重,并通過設置閾值過濾掉不符合情況的特征詞。該算法的時間復雜度為O(n2)。
5.1 實驗數據
為驗證本文改進的用戶興趣模型在推薦算法中的有效性,采用推薦系統評測數據集MovieLens[11]。
該數據集中,包含943個用戶、1 682部電影及100 000條用戶對電影的評價記錄。用戶對電影的評價分為1個~5個等級。其中,80%的數據用于訓練;20%數據用戶測試。在該數據集中,電影的信息主要為類別、上映時間、電影名稱。因此,本文對該數據集中的電影主要是在類別、時間這2個維度上進行實驗。
5.2 評價指標
本文采用基于內容的推薦算法來進行驗證改進的用戶興趣模型的有效性,因此評價指標選取準確率和召回率。
準確率定義為推薦列表中與用戶測試集合同時存在的商品數目與推薦列表中所有商品的比率[12]:


其中,B表示測試集合中用戶喜歡的所有商品的數目;Ntp表示同時出現在用戶測試集合和推薦列表中的商品數目。
5.3 結果分析
在本文實驗中,分別利用用戶觀看的電影記錄構建本文提出的用戶興趣模型,并將其與文獻[4]的用戶興趣模型(記為未改進的用戶興趣模型)進行比較。根據基于內容推薦算法來進行推薦。推薦列表的長度分別為10,15,20,25,30。實驗結果如圖2、圖3所示。
其中,L表示推薦列表的長度;Ntp表示同時出現在用戶測試集合和推薦列表中的商品數目。
召回率定義為推薦列表中的用戶喜歡的商品與測試集合中用戶喜歡的所有商品的比率[12]:

圖2 準確率實驗結果

圖3 召回率實驗結果
通過實驗結果可以看出,經過改進的用戶興趣模型在基于內容推薦算法中的推薦準確率和召回率都有提高。
隨著信息的快速增長,個性化服務已經越來越多的應用到很多領域。面向個性化電影推薦領域,本文提出一種多維度權重動態更新的用戶電影興趣模型。該模型主要通過研究用戶的觀看記錄以及觀看電影之間的相似度,發現用戶對電影中維度的偏好,并且能夠較好地處理用戶興趣漂移問題。但是,該模型需要用戶的觀看記錄,并且時間復雜度較高,需要進一步優化。
[1] 宋艷娟,陳振標.個性化檢索系統中用戶興趣模型的研究[J].計算機與數字工程,2013,(2):271-274.
[2] 顧雅楓.基于用戶興趣模型的信息檢索研究[D].蘭州:蘭州大學,2009.
[3] 韓 旭.個性化推薦系統用戶興趣建模方式的研究[J].數字技術與應用,2010,(11):44-46.
[4] 薄 陽.基于用戶興趣模型的個性化推薦與搜索系統的研究[D].北京:華北電力大學,2010.
[5] 靳玉紅,李家會.個性化服務中用戶興趣的建模研究[D].綿陽:西南科技大學,2011.
[6] Zheng Nan,Li Qiudan.A Recommender System Based on Tag and Time Information for Social Tagging Systems [J].Expert Systems with Applications,2011,38(4): 4575-4587.
[7] Mojtaba S,Mohammad P,Seyed A R.Hybrid Attributebased Recommender System for Learning Material Using Genetic Algorithm and a Multidimensional Information Model[J].Egyptian Informatics Journal,2013,14(1):67-78.
[8] Lakiotaki K,Matsatsinis N F.Multi-criteria User Modeling in Recommender Systems[J].Intelligent Systems,2011,26(2):1541-1672.
[9] Adomavicius G,Tuzhilin A.Multidimensional Recommender Systems:A Data Warehousing Approach[C]// Proceedings ofthe 2nd InternationalWorkshop on Electronic Commerce.London,UK:Springer-Verlag, 2007:180-192.
[10] Manouselis N,Costopoulou C.Analysis and Classification of Multi-criteria Recommender Systems[J]. World Wide Web,2007,10(4):415-441.
[11] Grouplens[EB/OL].[2012-11-16].http://www. grouplens.org/node/73.
[12] 朱郁筱,呂琳媛.推薦系統評價指標綜述[J].電子科技大學學報,2012,41(2):163-175.
編輯 陸燕菲
User Interest Model Based on Dynamic Update of Multi-dimensional Weight
REN Bao-ning1,LIANG Yong-quan1,ZHAO Jian-li1,LIAN Wen-juan1,LI Yu-jun2
(1.College of Information Science and Engineering,Shandong University of Science and Technology,Qingdao 266500,China;
2.State Key Laboratory of Digital Multi-media Technology,Hisense Group Co.,Ltd.,Qingdao 266071,China)
For personalized movie recommendation domain,this paper proposes a user interest model based on dynamic update for multi-dimensional weight.It divides the movie into five dimensions of actor,director,categories,area and time,respectively to calculate the similarity among these dimensions of film.It uses the normalization method to change the similarity of film into multi dimension weight of the user interest model,and calculates the weights of features of each dimension in the application of TF-IDF algorithm,in order to achieve dynamic update of the film weight and dimensions of feature weight by using content-based recommendation algorithm.In the MovieLens data set for experiment,results show that,the model has higher recommendation accuracy rate and recall rate,and can find user preferences on the film dimensions,solve the problems of user interest drift.
user interest model;personalized recommendation;dynamic update of weight;multi-dimension;similarity of dimension;interest drift
1000-3428(2014)09-0042-04
A
TP183
10.3969/j.issn.1000-3428.2014.09.009
國家“973”計劃基金資助項目“云服務多媒體應用平臺的基礎架構研究與應用研究”(2012CB724106);國家自然科學基金資助項目(71240003);山東省自然科學基金資助項目(ZR2012FM003);青島市科技計劃基礎研究基金資助項目(KJZD-13-29-JCH);青島市開發區重點科技計劃基金資助項目(2013-1-25)。
任保寧(1988-),男,碩士研究生,主研方向:數據挖掘,智能推薦;梁永全,教授、博士生導師;趙建立(通訊作者),副教授;廉文娟,博士;李玉軍,研究員。
2013-05-20
2013-09-23E-mail:renbaoning2007@126.com