孫承愛 季勝男 田剛



摘 要:為解決協同過濾推薦算法冷啟動和數據稀缺的問題,提高個性化閱讀系統推薦準確性,根據圖書特點,提出一種融合協同過濾算法和興趣標簽算法的個性化閱讀系統設計。通過交叉調和方法,給定一個適當的融合比將兩種推薦算法的推薦結果進行融合,保證系統在解決冷啟動問題的同時,能夠增加推薦列表新鮮度,提高推薦準確度,保持個性化閱讀系統優越性。結果表明,該方法即使沒有評級也能合理推薦,在推薦準確性和圖書種類方面優于傳統方法。
關鍵詞:個性化閱讀;混合推薦模型;協同過濾;興趣標簽;交叉調和
DOI:10. 11907/rjdk. 191869 開放科學(資源服務)標識碼(OSID):
中圖分類號:TP319文獻標識碼:A 文章編號:1672-7800(2019)008-0080-03
Design of Personalized Reading System Based on Hybrid Model
SUN Cheng-ai,JI Sheng-nan, TIAN Gang
(College of Computer Science and Engineering, Shandong University of Science and Technology,Qingdao 266000,China)
Abstract: In order to solve the problems of cold start and data scarcity of collaborative filtering recommendation algorithm and improve the accuracy of personalized reading system recommendation,a system based on fusion collaborative filtering and interest tag algorithm for personalized reading is proposed according to the characteristics of books. By cross-harmonic method with an appropriate fusion ratio and the recommendation results of the two recommended algorithms, the system can ensure the freshness of the recommendation list, improve the accuracy of recommendation, and maintain personalization while solving the cold start problem. The superiority of the reading system is thus maintained. The results show that our method? can reasonably make recommendation even without rating and thus is superior to the traditional method in terms of recommendation accuracy and book type.
Key words: personalized reading;hybrid recommendation model; collaborative filtering; interest tag; cross-harmonic
基金項目:國家自然科學基金青年項目(61602279);山東省科研項目(J16LN08)
作者簡介:孫承愛(1964-),女,碩士,山東科技大學計算機科學與工程學院副教授、碩士生導師,研究方向計算機應用、軟件工程、信息可視化管理;季勝男(1994-),女,山東科技大學計算機科學與工程學院碩士研究生,研究方向軟件系統集成、推薦算法;田剛(1982-),男,博士,山東科技大學計算機科學與工程學院副教授、碩士生導師,研究領域為信息檢索、面向服務的軟件工程、深度學習、自然語言處理。
0 引言
隨著網絡技術的發展,大量電子圖書通過在線書城等流媒體服務轉向數字發行[1],個性化閱讀成為熱門研究領域,它既可幫助讀者更快發現符合自己偏好的書籍,又可使線上書城更有效率地將圖書定位到合適的讀者。
在推薦系統研究中,閱讀推薦由于受不同風格和類型的推薦方法以及影響讀者偏好的社會和地理等因素影響,研究內容十分復雜。目前,對推薦系統的研究主要包括使用最為廣泛的基于協同過濾的推薦算法[2-3],協同過濾推薦算法又分為基于用戶的協同過濾和基于商品的協同過濾[4]。Pazzani等[5-6]介紹了基于內容的推薦方法;Chen等[7]通過對用戶和項目標簽進行主題建模,提出隱藏語義信息的推薦方法;Campos等[8]以項目內容特征和用戶模型特征之間的相似性為關鍵內容進行推薦;Covingto等[9]通過結合兩種或兩種以上的的混合方法進行推薦,以解決單獨使用某一基礎算法存在的問題,如冷啟動和數據稀疏等。此外還有基于深度學習方法的推薦,如基于深度學習網絡研究的YouTube視頻推薦[10]。
為了解決圖書推薦系統在新用戶和新圖書進入時因數據稀缺造成推薦失效的問題,并考慮到圖書篇幅長,難以自動提取精準內容以及推薦系統的執行效率,本文選取基于用戶的協同過濾算法和基于興趣標簽的推薦方法。基于興趣標簽的推薦主要利用圖書特征標簽與用戶偏好標簽的相似度進行排名推薦,它對推薦結果有很好的解釋性,但是推薦內容存在缺乏驚喜度的問題,不能推薦新類型的圖書給讀者;基于協同過濾推薦算法的準確性要高于標簽推薦,但是存在冷啟動和數據稀疏問題[11]。然而這兩種推薦方法具有很好的互補特點。
因此,本文提出融合協同過濾和興趣標簽的混合推薦模型的個性化閱讀系統設計,它利用興趣標簽推薦模型彌補協同過濾算法的冷啟動問題并可提高推薦列表的新鮮度,進而提升推薦合理性。
1 相關工作
個性化閱讀推薦系統的目的是將未被目標用戶評級的圖書作品進行排名。令用戶和圖書的索引分別為[U=u|1,?,Nu],[M=m|1,?,NM]。NU和MU指用戶和圖書的數量。假設U和M預先在系統中注冊,不需要額外元數據(例如,書名、作者和流派),評級數據也保留在系統中。在本文系統中,評級分數范圍為0~1;令[ru,m]為用戶u給m的評分。通過式(1)獲得評級矩陣R。
[R=ru,m|1uNU,1mNM]? ? ? ?(1)
當用戶u沒有對圖書m進行評級時,為了方便起見,規定為分數0。R中大多數分數在實際數據中都是空的,因為每個用戶僅在M中對少部分圖書進行評級。
利用興趣標簽推薦需要內容數據。每本圖書的內容表示為從圖書介紹中提取的若干特征的單個矢量。令這些特征索引為[T=t|1,?,Nt],其中[Nt]是特征的數量,也是特征向量維度,令[cm,t]為圖書m的第t個特征值。通過收集所有特征向量得到內容標簽矩陣C,如式(2)所示。
[C=cm,t|1mNM,1tNT]? ? (2)
1.1 基于用戶的協同過濾算法
基于用戶的協同過濾算法(User-based Collaborative Filtering Recommendation,User_CF)試圖通過其他人對這些作品的評分預測目標用戶對未被評分圖書作品的評級[12]。給定目標用戶u, 令[ru,m]為用戶u對圖書m的預測評分,由此得到式(3)為:
[ru,m=ru+kv|v≠u,v∈Uwu,vrv,m-rv]? (3)
其中[ru]和[rv]分別是用戶u和用戶v的平均評分。[wu,v]反映用戶u和v之間的偏好相似性權重,并且k是歸一化因子,使得權重絕對值總和為1,即[v|Wu,v|=1]。在得到預測得分后,根據[ru,m]對圖書進行排序。
在幾種計算相似性的方法中,本文選擇Pearson相關系數,它在許多任務中表現出了穩定的性能[13-14]。相似度計算如式(4)所示。
[Wu,v=mru,m-rumrv,m-rvmru,m-ru2mrv,m-rv2 ]? ?(4)
1.2 基于興趣標簽的推薦
基于興趣標簽方法在個性化閱讀系統中通過利用興趣標簽表示用戶偏好矩陣,利用圖書內容標簽矩陣相似性進行推薦排名[15-16]。
使用興趣標簽推薦方法需要利用用戶對圖書的偏好進行用戶興趣建模。由于興趣標簽的動態性、穩定性和漸變性3個特點反映了用戶時間相對長久的信息需求,比信息來源要求更穩定[17],在個性化閱讀系統中興趣標簽信息來源主要集中于用戶的收藏與訂閱、評級、運行搜索和閱讀時長,這些個性化信息對于個性化閱讀系統而言價值量高,可通過對它們進行正確分析得到用戶興趣標簽及興趣偏好程度。本文系統針對新用戶設計了注冊頁面,在設定好的若干個標簽中選取用戶初始興趣標簽,這樣新入用戶也能根據其選擇的興趣領域得到合理的推薦列表。
不同用戶的興趣及喜好程度各異。本文系統利用興趣權重衡量某一用戶對特定興趣的偏好程度,權重值越大,用戶對特定興趣的偏好程度越高[18],設定興趣權重也有利于更新替換用戶興趣標簽,有效避免標簽冗余。計算興趣標簽權重需要獲取用戶歷史瀏覽數據、用戶與圖書之間的交互數據。用戶與圖書之間、用戶與興趣之間、圖書與標簽之間都是一對多的關系(見圖1),并且興趣權重與特定興趣對應的圖書交互次數及用戶總交互頻率有關。定義[Ii,p]為用戶[ui]對興趣[ip]的興趣權重,計算公式為:
[Ii,p=NijuiFui]? ? ? (5)
其中,[Nijui]表示用戶[ui]與興趣[ip]對應圖書的交互次數,[Fui]表示用戶[ui]交互總次數。由此根據[Ii,p]排序用戶的興趣標簽限制用戶興趣標簽數量在10個以內,進行更新替換,避免標簽噪聲和標簽冗余。
圖1 用戶與圖書、圖書與標簽間的關系
因此,給定目標用戶[u∈U], 令[Lu,t]為用戶u的第t個興趣標簽,由此得到用戶興趣標簽矩陣L。
[L=Lu,t|1uNU,1t10]? ?(6)
該模塊通過計算式(2)、式(6)的夾角余弦值評估用戶偏好和圖書內容相似度,對相似度排名進行推薦[5]。
在三角形中邊a和b的夾角余弦計算公式為:
[cos(θ)=a2+b2-c22ab]? ? ? ?(7)
在向量中,假設a向量是([x1,y1]),b向量是([x2,y2]),則余弦計算公式為:
[cos(θ)=ab||a||×||b||=(x1,y1)(x2,y2)x21+y21×x22+y22=x1x2+y1y2x21+y21×x22+y22] (8)
進而推至n維,則a與b的夾角余弦等于:
[cos(θ)=i=1n(xi×yi)i=1n(xi)2×i=1n(yi)2=ab||a||×||b||]? (9)
若余弦值接近1,表明夾角越接近0°,即兩個向量越相近,則可根據相似度推薦排名前5的圖書。
2 基于混合模型的推薦系統整體框架
為構建混合推薦系統,本文提出模型整體框架設計,如圖2所示。
圖2 混合推薦模型系統框架
本文系統在進行推薦時,從數據庫中提取相關用戶的歷史閱讀數據,將數據分別進行User_CF和興趣標簽算法推薦,并將兩種推薦結果輸入到融合算法模塊中 ,得到最終的推薦列表。推薦結果反饋給數據庫,經由數據庫傳送給用戶。用戶最新的瀏覽信息也及時反饋給數據庫,更新相關數據,以實現推薦目錄實時刷新。
根據相關兩種推薦方法的特點和效果,本文系統在融合模塊中利用交叉調和方法[20],即對不同推薦算法產生的結果,按照一定的融合比例形成最終推薦結果,使該系統在比例合適的情況下既保證推薦結果準確性又保證結果多樣性;同時利用用戶信息的記錄,調整不同方法推薦結果在整個系統中的比重以實現結果合理性,如新用戶或本用戶歷史記錄較少時,系統給予興趣標簽模塊較大的權重。一般情況下,由于User_CF效果較好,因此比重會高于興趣標簽的推薦。
3 系統實驗結果分析
3.1 實驗結果1
為了驗證系統有效性,收集30位用戶對300本圖書的評分及相對的標簽數據。從實驗數據集中抽取80%的數據作為訓練集,另外20%的數據作為測試集。在訓練集上分別進行User_CF、基于興趣標簽的推薦和混合推薦3個推薦實驗。本文系統通過推薦的準確度衡量系統有效性,推薦準確度計算公式[20]為:
[推薦準確度=用戶感興趣的圖書數推薦列表圖書數]
根據圖3的實驗結果可以看出,當用戶數據稀缺、User_CF不能產生效果時,基于興趣標簽的推薦方法具有很好的彌補性,它融合了兩種推薦方法的混合推薦通過調節交叉調和比,提高了推薦準確度。
圖3 推薦準確度對比
3.2 實驗結果2
為了更加直觀地展示系統功能,利用個性化閱讀系統收集的數據進行系統訓練,每種推薦算法為每個用戶推薦排名前5的圖書。
通過User_CF和興趣標簽的推薦分別得到推薦列表,進行融合比為7∶3的交叉融合推薦,推薦結果見表1,表1還給出了用戶權重較高的興趣標簽。
表1 部分用戶最終推薦結果
4 結語
本文利用交叉融合方法將協同過濾推薦算法和基于興趣標簽的推薦方法進行融合,彌補了單獨使用協同過濾算法冷啟動等不足,以及單獨使用興趣標簽推薦的準確度不高、沒有新鮮度的缺陷,由此得到了一個高效運行的個性化閱讀系統,并得到了比較合理的推薦結果。未來還可考慮神經網絡對圖書進行標簽自動提取的功能,以達到更便利、更準確的圖書內容標簽定位。
參考文獻:
[1] 中國數字出版產業年度報告課題組. 步入新時代的中國數字出版——2017—2018中國數字出版產業年度報告(摘要)[J]. 出版發行研究,2018,322(9):10+31-35.
[2] MNIH A,SALAKHUTDINOV R R. Probabilistic matrix factorization[C]. Advances in Neural Information Processing Systems,2008:1257-1264.
[3] 魏歡,陳建斌,張虎. 一種改進的協同過濾推薦算法[J]. 軟件導刊,2015,14(11):57-60.
[4] 王國霞,劉賀平. 個性化推薦系統綜述[J]. 計算機工程與應用, 2012, 48(7):66-76.
[5] PAZZANI M J, BILLSUS D. Content-based recommendation systems[M]. Berlin:Springer Berlin Heidelberg, 2007.
[6] 閆東東,李紅強. 一種改進的基于內容的個性化推薦模型[J]. 軟件導刊,2016,15(4):11-13.
[7] CHEN C C, ZHENG XL,WANG Y, et al. Capturing semantic correlation for item recommendation in tagging systems[C]. Proceedings of the 30th Conference on ArtificialIntelligence,2016: 108-114.
[8] CAMPOS L M, FERNANDEZ-LUNA J M, HUETE J F, et al. Combining content-based and collaborative recommendations: a hybrid approach based on Bayesian networks [J]. International Journal of Approximate Reasoning, 2010, 51 (7): 785-799.
[9] COVINGTO P,ADAM S. Deep neural networks for YouTube recommendations[C]. ACM Conference on Recommender Systems, 2016:191-198.
[10] BOBADILLA J,ORTEGA F,HERNANDO A,et al. Recommender systems survey[J]. Knowledge-based Systems,2013(46):109-132.
[11] 劉慶鵬,陳明銳. 優化稀疏數據集提高協同過濾推薦系統質量的方法[J]. 計算機應用, 2012, 32(4):1082-1085.
[12] 榮輝桂,火生旭,胡春華,等. 基于用戶相似度的協同過濾推薦算法[J]. 通信學報, 2014, 35(2):16-24.
[13] YOSHII K, GOTO M, KOMATANI K, et al. Hybrid collaborative and content-based music recommendation using probabilistic model with latent user preferences[C]. Vancouver: 7th International Conference on Music Information Retrieval,2006.
[14] 陳功平,王紅.? 改進Pearson相關系數的個性化推薦算法[J].? 山東農業大學學報:自然科學版, 2016,47(6):940-944.
[15] 胡偉健,陳俊,李靈芳,等. 結合用戶特征和興趣變化的組推薦系統算法研究[J]. 軟件導刊,2016,15(6):60-62.
[16] 陳潔敏,李建國,湯非易,等. 融合“用戶-項目-用戶興趣標簽圖”的協同好友推薦算法[J]. 計算機科學與探索,2018(1):92-100.
[17] 楊軍,武秀川,郭艷燕. 基于跨系統的個性化搜素系統模型設計[J]. 微處理機,2013(3):41-44.
[18] 李興華, 陳冬林, 楊愛民, 等.? 基于用戶興趣-標簽的混合推薦方法研究[J].? 情報學報, 2015(5):466-470.
[19] 張濱,基于混合模型的推薦系統的研究[D]. 長春:吉林大學,2018:21-22.
[20] 陳天昊,帥建梅,朱明. 一種基于協作過濾的電影推薦方法[J]. 計算機工程,2014,40(1):55-58+62.
(責任編輯:江 艷)