馬春平 陳文亮,?
?
基于評論主題的個性化評分預(yù)測模型
馬春平1,2陳文亮1,2,?
1.蘇州大學(xué)計算機(jī)科學(xué)與技術(shù)學(xué)院, 蘇州 215006; 2.軟件新技術(shù)與產(chǎn)業(yè)化協(xié)同創(chuàng)新中心, 蘇州 215006; ?通信作者, E-mail: wlchen@suda.edu.cn
針對現(xiàn)有基于評論分析的推薦算法沒有充分考慮個性化的問題, 通過對評論進(jìn)行主題分析, 挖掘用戶的喜好, 分別建立基于用戶和物品的個性化評分預(yù)測模型。在真實數(shù)據(jù)集上進(jìn)行實驗驗證, 結(jié)果表明該模型有效地提高了推薦系統(tǒng)的評分預(yù)測性能。
個性化推薦; 推薦系統(tǒng); 評分預(yù)測; 評論信息
傳統(tǒng)的推薦算法主要根據(jù)用戶的歷史行為分析用戶喜好, 并做出推薦。隨著互聯(lián)網(wǎng)的普及和電子商務(wù)的發(fā)展, 用戶成為互聯(lián)網(wǎng)主動的參與者, 并產(chǎn)生大量的用戶個性化內(nèi)容。這些內(nèi)容包括用戶評論、地理位置、好友關(guān)系等。傳統(tǒng)的推薦算法主要利用用戶的評分或者物品的描述性特征。相對于評分, 評論能夠更加具體、準(zhǔn)確地表達(dá)用戶對物品的喜好。與用戶和物品的描述信息相比, 用戶評論的內(nèi)容也更加豐富, 更能體現(xiàn)用戶的個性化特征, 可以在此基礎(chǔ)上構(gòu)建更準(zhǔn)確的個體畫像。以評論“這家店雖然環(huán)境一般, 但味道正宗, 老板人也很好?!睘槔? 該用戶給該飯店打5分滿分。從用戶的角度可以分析出, 該用戶比較注重服務(wù)和口味, 對環(huán)境要求較低; 而從商戶的角度可以分析出, 該商戶的口味、服務(wù)一流, 但環(huán)境欠佳。可見評論的信息量遠(yuǎn)遠(yuǎn)大于評分。如果能從評論中精確地分析出用戶的喜好和物品的特征, 必定能在很大程度上提高推薦精度。
但是, 評論屬于非結(jié)構(gòu)化文本, 由網(wǎng)絡(luò)用戶自由表達(dá), 極具個性化特征, 不具有語法嚴(yán)謹(jǐn)、表達(dá)明確、邏輯清楚等特點, 處理起來難度較大。近年來, 情感分析和意見挖掘領(lǐng)域的研究者做了大量工作(具代表性的工作如文獻(xiàn)[1-3]), 有效地從評論中挖掘出評論的情感和潛在主題。如何充分利用評論分析得到的評論情感和主題來改進(jìn)推薦系統(tǒng), 已成為一個重要的研究課題[4-8]。
本文首先對評論進(jìn)行主題分析, 構(gòu)建用戶和物品的畫像。在此基礎(chǔ)上, 提出一種新的個性化評分預(yù)測模型。該模型針對各個用戶和物品進(jìn)行建模, 較大程度地進(jìn)行個性化處理。在大眾點評數(shù)據(jù)集上進(jìn)行實驗驗證, 結(jié)果表明本文提出的模型可以有效地提高推薦系統(tǒng)的評分預(yù)測性能。
1 相關(guān)工作
協(xié)同過濾系統(tǒng)是最先得到廣泛應(yīng)用的個性化推薦系統(tǒng), 分為基于用戶的協(xié)同過濾(User-based Collaborative Filtering[9])和基于物品的協(xié)同過濾(Item-based Collaborative Filtering[10])。但是, 這些方法沒有利用用戶或者物品的語義信息, 導(dǎo)致推薦系統(tǒng)的性能較低。
隨著Web2.0的發(fā)展, 在線評論逐漸進(jìn)入推薦系統(tǒng)研究者的視野[4-7,11-16]。Ganu等[4]通過人工標(biāo)注評論的主題和情感訓(xùn)練SVM模型, 將評論按角度和情感進(jìn)行分類, 最后綜合評論中的正面評價和負(fù)面評價, 做出評分預(yù)測。Qu等[5]提出意見袋(bag-of-opinions)的概念, 用來表示評論中的每條評論意見的評價詞根、修飾詞和否定詞, 利用意見袋模型和評分訓(xùn)練線性模型進(jìn)行評分預(yù)測。這些算法都是根據(jù)用戶對物品的評論, 預(yù)測用戶對物品的評分, 還不能直接用于推薦系統(tǒng)。McAuley等[7]提出利用HFT (hidden factors as topics)將評分和評論信息結(jié)合, 構(gòu)建特征矩陣, 利用SVD算法來做推薦, 但無法同時考慮評論信息中的用戶角度和物品角度。Wang等[8]提出LARA(latent aspect rating analysis)算法, 首先利用自舉算法(boot-strapping)獲得與物品各個主題相關(guān)的情感詞, 然后利用LRR(latent rating regression)算法分析用戶對物品每個角度的情感和各個角度所占權(quán)重。
Zhang等[6]利用LDA (latent dirichlet allocation)算法[17]對評論進(jìn)行主題分析, 生成主題詞表。根據(jù)評論中是否含有主題詞, 將一條評論表示成一組向量, 根據(jù)用戶或者物品分類, 通過將這些向量平均、歸一化, 得到用戶特征和物品特征。同時利用向量和對應(yīng)的評分, 通過機(jī)器學(xué)習(xí)模型訓(xùn)練, 得到用戶對物品不同的主題的權(quán)重。與上述工作相比, 本文方法的最大不同之處是針對每個用戶或者物品分別建模, 進(jìn)行個性化處理。
2 基于評論主題的個性化模型
2.1 相關(guān)定義
用戶評論數(shù)據(jù)中包含個用戶組成的用戶集合= {1, …,u}和個物品組成的物品集合= {1, … ,i}。用戶-物品評分?jǐn)?shù)據(jù)集可以用×階矩陣表示,R表示用戶對物品的評分。C表示用戶對物品的評論。C表示用戶所有的評論集合,C表示用戶對物品所有的評論集合,表示集合中元素的個數(shù)。表示用戶的對所有物品評分的平均值。
2.2 評論主題分析
為了分析用戶評論所表達(dá)的潛在主題, 本文使用LDA算法對用戶評論進(jìn)行主題分析。LDA是一種主題模型, 屬于無監(jiān)督學(xué)習(xí)算法, 可以將文檔集中每篇文檔的主題按照概率分布的形式給出, 并且對于每一個主題均可以找出一些詞語來描述。大眾點評數(shù)據(jù)集在LDA 實驗結(jié)果中的主題分布如表1所示, 其中主題詞按在該主題下的概率由大到小排列。實驗主題數(shù)設(shè)置為6, 每個主題的主題詞個數(shù)設(shè)置為20, 超參數(shù)設(shè)置為0.2,設(shè)置為0.1, 迭代次數(shù)為1000。根據(jù)評論是否涉及各個主題, 將評論表示成一組維向量(是主題個數(shù)), 分析結(jié)果將在2.3節(jié)中被用于推薦系統(tǒng)。
表1 基于LDA的主題分布
說明: 數(shù)據(jù)來自大眾點評網(wǎng)(www.dianping.com)。
2.3 用戶和物品的特征表示
根據(jù)評論分析結(jié)果, 對評論進(jìn)行特征表示。評論C的特征表示為:
其中是實驗設(shè)置的主題的個數(shù),表示用戶對物品的評論第個特征值。特征值的計算方式如下:
其中,是各個主題下主題詞的個數(shù)。若評論中包含主題詞, 則是主題詞在主題下的概率; 反之, 若評論中不包含任何主題詞, 則為0。
然后, 生成用戶的特征表示p和物品的特征表示q。用戶第維特征用p表示:
式(4)是對相應(yīng)的特征進(jìn)行歸一化。同樣, 定義物品第維特征q:
2.4 基準(zhǔn)模型
本文以Zhang等[6]提出的模型為基準(zhǔn)模型。Zhang等通過對評論進(jìn)行主題分析生成主題詞表。根據(jù)評論中是否含有主題詞, 將每條評論表示成一組向量, 然后生成用戶和物品的特征向量表示。利用向量和對應(yīng)的評分, 通過機(jī)器學(xué)習(xí)模型訓(xùn)練得到用戶對物品不同主題的權(quán)重。在對飯店評論例子中, 經(jīng)過上述工作得到的權(quán)重可以理解為大多數(shù)用戶對飯店不同角度的偏好, 比如大多數(shù)用戶對飯店菜品的口味要求比較高, 那么所得口味主題的權(quán)重會比較大。
但是, 這種分析沒有充分考慮不同用戶的個性化需求, 比如用戶A為高收入者, 對環(huán)境要求比較高; 用戶B為低收入者, 對價格比較敏感。如果對用戶A和B用同樣的主題權(quán)重去預(yù)測評分, 給出推薦, 必然影響推薦的精準(zhǔn)度。
2.5 個性化模型
針對基準(zhǔn)模型的不足, 本文提出個性化評分預(yù)測模型。個性化評分預(yù)測模型可以分為用戶個性化(User-based)和物品個性化(Item-based), 其中用戶個性化可以解釋為向用戶推薦其喜歡的物品, 而物品個性化可以解釋為為物品尋找對其感興趣的用戶。在評分預(yù)測階段, 利用用戶對物品的評分以及用戶對物品的評論的特征表示, 可以通過線性回歸模型訓(xùn)練特征權(quán)重, 公式如下:
其中r是用戶對物品的評分,W和是基于用戶的個性化模型訓(xùn)練后所得各特征權(quán)重和誤差偏置,W和是基于物品的個性化模型訓(xùn)練后所得各特征權(quán)重和誤差偏置。然后, 對于給定的目標(biāo)用戶和目標(biāo)物品, 由式(4)產(chǎn)生的用戶特征和式(6)產(chǎn)生的物品特征模擬目標(biāo)用戶對目標(biāo)物品的評論特征表示為
根據(jù)線性回歸得到的權(quán)重和誤差偏置以及模擬的評論特征表示, 使用以下公式計算目標(biāo)用戶對物品的評分。
3 實驗結(jié)果與分析
3.1 數(shù)據(jù)集
本文實驗采用大眾點評網(wǎng)(www.dianping.com)的數(shù)據(jù)集。大眾點評網(wǎng)是中國最大的獨立第三方消費(fèi)點評網(wǎng)站。本文使用的數(shù)據(jù)集為中文數(shù)據(jù)集, 全部來自上海地區(qū), 包含自大眾點評2003年成立至2013年9月, 60萬個用戶對5萬個商戶的360萬條評論。評論信息包含用戶名、商戶名、總體評分、評論時間以及評論文本內(nèi)容。由于本文的目標(biāo)是建立針對用戶或者物品的個性化模型, 考慮到不同用戶或者不同商戶的評論數(shù)量差異對實驗的影響, 需要對實驗數(shù)據(jù)設(shè)置過濾值。例如, 進(jìn)行用戶個性化實驗時, 設(shè)置過濾值為10, 表示只取數(shù)據(jù)集中評論商戶數(shù)超過10的用戶的評論; 進(jìn)行物品個性化實驗時, 設(shè)置過濾值為10, 表示只取數(shù)據(jù)集中擁有10條以上用戶評論的商戶的評論。本試驗在進(jìn)行基于個性化的實驗以確定最佳過濾值時, 按7:1:2的比例, 隨機(jī)將數(shù)據(jù)分為訓(xùn)練集、開發(fā)集和測試集。根據(jù)過濾值對數(shù)據(jù)過濾時, 只對訓(xùn)練集進(jìn)行過濾, 保持開發(fā)集和測試集不變。
3.2 評價指標(biāo)
本文采用平均絕對偏差(mean absolute error, MAE)評價算法的預(yù)測準(zhǔn)確程度, MAE的計算公式如下:
3.3 參數(shù)選定
基于用戶個性化的開發(fā)集實驗結(jié)果如表2所示, 第一列為過濾值, 第二列為過濾后開發(fā)集數(shù)據(jù)的實驗結(jié)果, 為了與基準(zhǔn)模型做比較, 第三列為開發(fā)集總的數(shù)據(jù)集的實驗結(jié)果??偟臄?shù)據(jù)集實驗結(jié)果生成方式為: 針對目標(biāo)用戶, 如果用戶在過濾后的數(shù)據(jù)集中, 則使用個性化預(yù)測結(jié)果, 反之則使用非個性化結(jié)果(基準(zhǔn)模型的結(jié)果)。從表2看出, 隨著過濾值的增大, 過濾后的數(shù)據(jù)MAE降低, 因為用戶的評論數(shù)增長有利于訓(xùn)練用戶的特征權(quán)重。但是, 過濾值的增大也導(dǎo)致數(shù)據(jù)集中未建模的用戶數(shù)增大, 因此在總的數(shù)據(jù)集上實驗效果呈現(xiàn)MAE先降低后升高的趨勢, 而且升高的趨勢越來越大。基于物品個性化的開發(fā)集實驗結(jié)果如表3所示, 實驗結(jié)果MAE變化趨勢與表2相同。根據(jù)實驗結(jié)果,兩個模型都在過濾值為5時取得最小值。
表2 基于用戶個性化的開發(fā)集實驗結(jié)果
說明: 粗體表示最佳實驗結(jié)果。
表3 基于物品個性化的開發(fā)集實驗結(jié)果
說明: 粗體表示最佳實驗結(jié)果。
3.4 實驗結(jié)果分析
根據(jù)上述在開發(fā)集上的實驗結(jié)果, 本文將個性化模型的過濾值選為5, 在測試集上的實驗結(jié)果如表4所示。實驗1使用Zhang等[6]提出的非個性化方法, 實驗結(jié)果MAE為0.6765; 實驗2基于用戶的個性化模型, 實驗結(jié)果MAE為0.6418; 實驗3基于物品的個性化模型, 實驗結(jié)果MAE為0.6359。本文主要討論的兩種基于個性化的模型, 其異同點分析如下: 基于物品個性化的實驗結(jié)果與基于用戶個性化實驗結(jié)果趨勢類似, 隨著過濾值的增大, 過濾后的數(shù)據(jù)實驗結(jié)果MAE下降, 總的數(shù)據(jù)集上實驗效果MAE呈現(xiàn)先降低后升高的趨勢。由于數(shù)據(jù)集中商戶的數(shù)量遠(yuǎn)少于用戶的數(shù)量, 平均每個商戶擁有的評論數(shù)量遠(yuǎn)大于用戶的平均評論數(shù), 更有利于訓(xùn)練特征權(quán)重, 因此基于物品個性化的實驗結(jié)果比基于用戶個性化的實驗結(jié)果MAE更低。圖1顯示在測試集上基于用戶個性化和基于物品個性化實驗的結(jié)果比較。在實際應(yīng)用中, 用戶的增長遠(yuǎn)比物品的增長快得多, 因此基于物品的個性化模型在解決擴(kuò)展性和數(shù)據(jù)稀疏等問題上有一定的優(yōu)勢。
表4 主要實驗結(jié)果
4 總結(jié)
本文在對評論進(jìn)行主題分析的基礎(chǔ)上, 針對用戶和物品分別建立不同的個性化解決方案。經(jīng)過大規(guī)模的數(shù)據(jù)實驗, 結(jié)果表明該方法顯著地提高了評分預(yù)測的預(yù)測精度。通過比較, 基于物品的個性化預(yù)測方法效果更好, 并且在解決擴(kuò)展性和數(shù)據(jù)稀疏等問題上有一定的優(yōu)勢。
[1]Titov I, McDonald R T. A joint model of text and aspect ratings for sentiment summarization // Pro-ceedings of the 46th Annual Meeting of the Associa-tion for Computational Linguistics on Human Lan-guage Technologies. Ohio, 2008: 308?316
[2]Brody S, Elhadad N. An unsupervised aspectsenti-ment model for online reviews // Human Language Technologies: the 2010 Annual Conference of the North American Chapter of the Association for Computational Linguistics. Los Angeles, 2010: 804?812
[3]Jo Y, Oh A H. Aspect and sentiment unification model for online review analysis // Proceedings of the fourth ACM International Conference on Web Search and Data Mining. Hong Kong, 2011: 815?824
[4]Ganu G, Elhadad N, Marian A. Beyond the stars: improving rating predictions using review text content // The 12th International Workshop on the Web and Databases. Providence, Rhode Island, 2009: 1?6
[5]Qu Lizhen, Ifrim G, Weikum G. The bag-of-opinions method for review rating prediction from sparse text patterns // Proceedings of the 23rd International Con-ference on Computational Linguistics. Beijing, 2010: 913?921
[6]Zhang Rong, Gao Yifan, Yu Wenzhe, et al. Review comment analysis for predicting ratings // The 16th International Conference on Web-Age Information Management. Qingdao, 2015: 247?259
[7]McAuley J, Leskovec J. Hidden factors and hidden topics: understanding rating dimensions with review text // Proceedings of the 7th ACM conference on Recommender systems. Hong Kong, 2013: 165?172
[8]Wang Hongqing, Lu Yue, Zhai Chengxiang. Latent aspect rating analysis on review text data: a rating regression approach // Proceedings of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining. Washington, 2010: 783?792
[9]Resnick P, Iacovou N, Suchak M, et al. GroupLens: an open architecture for collaborative filtering of netnews // Proceedings of the 1994 ACM Conference on Computer Supported Cooperative Work. Chapel Hill, 1994: 175?186
[10]Sarwar B, Karypis G, Konstan J, et al. Item-based collaborative filtering recommendation algorithms // Proceedings of the 10th International Conference on World Wide Web. Hong Kong, 2001: 285?295
[11]Dave K, Lawrence S, Pennock D M. Mining the peanut gallery: opinion extraction and semantic classification of product reviews // Proceedings of the 12th International Conference on World Wide Web. Budapest, 2003: 519?528
[12]Devitt A, Ahmad K. Sentiment polarity identification in financial news: a cohesion-based approach. // Proceedings of the 45th Annual Meeting of the Association for Computational Linguistics on Human Language Technologies. Prague, 2007: 984?991
[13]Pang B, Lee L, Vaithyanathan S. Thumbs up?: senti-ment classification using machine learning techniques // Proceedings of the ACL-02 Conference on Empiri-cal methods in Natural Language Processing—Volume 10. Philadelphia, 2002: 79?86
[14]Pang B, Lee L. Seeing stars: exploiting class rela-tionships for sentiment categorization with respect to rating scales // Proceedings of the 43rd Annual Meet-ing on Association for Computational Linguistics. Ann Arbor, 2005: 115?124
[15]Goldberg A B, Zhu X. Seeing stars when there aren’t many stars: graph-based semi-supervised learning for sentiment categorization // Proceedings of the First Workshop on Graph Based Methods for Natural Lan-guage Processing. New York, 2006: 45?52
[16]Snyder B, Barzilay R. Multiple aspect ranking using the good grief algorithm // Human Language Tech-nologies: The 2007 Annual Conference of the North American Chapter of the Association for Computa-tional Linguistics. New York, 2007: 300?307
[17]Blei D M, Ng A Y, Jordan M I. Latent dirichlet allocation. The Journal of Machine Learning Re-search, 2003, 3(1): 993?1022
Personalized Model for Rating Prediction Based on Review Analysis
MA Chunping1,2, CHEN Wenliang1,2,?
1. School of Computer Science and Technology, Soochow University, Suzhou 215006; 2. Collaborative Innovation Center of Novel Software Technology and Industrialization, Suzhou 215006; ? Corresponding author, E-mail: wlchen@suda.edu.cn
Existing recommender systems do not take full advantage of personalization. To address this problem, a novel approach is proposed to mine the opinions and preference of users to build a personalized model for each user or item. Experimental results generated from a real data set show that the proposed approach can improve the accuracy of rating prediction.
personalized recommendation; recommender system; rating prediction; review comment
10.13209/j.0479-8023.2016.011
TP391
2015-06-07;
2015-08-19; 網(wǎng)絡(luò)出版日期: 2015-09-29
國家自然科學(xué)基金(61203314, 61373095)資助