何 瓏
(1. 福州大學信息化建設辦公室,福建 福州 350108; 2. 福建省超級計算中心,福建 福州 350108)
?
基于隨機森林的產品垃圾評論識別
何 瓏1,2
(1. 福州大學信息化建設辦公室,福建 福州 350108; 2. 福建省超級計算中心,福建 福州 350108)
目前的產品垃圾評論識別方法只考慮評論特征的選取,忽略了評論數據集的不平衡性。因此該文提出基于隨機森林的產品垃圾評論識別方法,即對樣本中的大、小類有放回的重復抽取同樣數量樣本或者給大、小類總體樣本賦予同樣的權重以建立隨機森林模型。通過對亞馬遜數據集的實驗結果表明,基于隨機森林的產品評論識別方法優(yōu)于其他基線方法。
產品垃圾評論;不平衡問題;隨機森林
近幾年,互聯(lián)網在很大程度上改變了消費者的消費觀以及消費意見的反饋途徑,網上購物倍受青睞[1]。同時,很多商業(yè)網站讓他們的顧客在購買產品時對該產品進行評論,以獲取對產品有價值的信息。這些觀點信息同樣對其他潛在用戶至關重要。
由于網絡的開放性,人們可以在網站上任意書寫評論,這導致評論的質量低下,甚至產生垃圾評論,即由一些用戶蓄意發(fā)表的不切實際、不真實的、有欺騙性質的評論,其目的是為了提升或者詆毀某一產品或某一類產品的聲譽,從而誤導潛在消費者,或者干擾評論意見挖掘和情感分析系統(tǒng)的分析結果[2]。近幾年,國內外針對產品垃圾評論展開了廣泛的工作。文獻[2-5]在考慮評論文本、產品描述、用戶評分、用戶投票等信息下,對產品垃圾評論進行識別,并據此總結出識別規(guī)則,但這類方法忽略了數據集的不平衡問題,識別精度有待進一步提高。
本文針對產品垃圾評論中數據集的不平衡問題,結合顯著性檢驗[6],提出了基于隨機森林的產品垃圾評論識別方法。該方法通過平衡隨機森林算法和加權隨機森林算法有效消除了不平衡數據集的影響,大幅度提高產品垃圾評論識別精度。
本文主要結構如下: 第2節(jié)介紹垃圾評論識別的相關工作,第3節(jié)介紹基于隨機森林的產品垃圾評論識別方法,第4節(jié)是實驗內容與結果的分析,最后一節(jié)是總結與展望。
目前許多研究工作已經把產品垃圾評論的識別從對文本及相關特征的研究轉移到對評論者行為的研究。文獻[7-9]針對垃圾評論者特有的行為,定義相關行為規(guī)則挖掘可疑評論者,取得較好的效果,得到眾多學者的關注。
在產品垃圾評論及評論者的研究不斷取得進展的同時,在線評論中的垃圾評論者小組引起了相關學者的關注,他們比單獨的垃圾評論者危害更大,甚至能完全主導某產品的評論情感傾向。文獻[10-12]綜合考慮了評論者小組、評論者和被評論產品之間的關系,與現(xiàn)有方法形成互補,能找到更加難以檢測和精細的垃圾活動。
但目前的工作忽略了產品垃圾評論識別中的數據集不平衡問題。因此,本文在文獻[6]工作的基礎上,提出基于隨機森林的產品垃圾評論識別方法,以獲得的顯著性特征建立隨機森林模型進行識別。實驗結果表明,本文的模型不僅優(yōu)于基線方法,而且在精度上有了很大的提高。
產品垃圾評論識別問題實質上是一個二分類問題,將評論分為垃圾評論和非垃圾評論。目前的產品垃圾評論識別相關方法主要考慮了如何利用評論文本、產品描述、用戶評分、用戶投票等信息對垃圾評論進行識別,忽略了產品垃圾評論數據集的不平衡性[13]。不平衡數據集通常會帶來以下問題[14]:
(1) 容易導致小類樣本的稀疏和缺失;
(2) 分類器難以區(qū)別小類樣本和噪聲樣本;
(3) 決策面偏移問題,如基于特征空間決策面的分類器SVM,由于小類樣本少,分類器擴大決策邊界,導致最后訓練的實際決策面偏離最優(yōu)決策面;
(4) 評價指標問題: 傳統(tǒng)的分類器以高的分類正確率作為目標,但是在不平衡數據集問題中,以高正確率作為目標的話,造成分類器偏向于大類而忽視了小類,導致小類分類效果明顯較差。例如,假設一個樣本集中小類和大類的樣本比例為1∶99,如果以高正確率為目標,那即使將所有的樣本都分為大類,仍然還是可以達到99%的高正確率。
這些問題導致傳統(tǒng)分類方法在對不平衡數據集進行分類時,其性能就遠不如在均衡數據集上的表現(xiàn)。因此,本文提出了基于隨機森林的產品垃圾評論識別方法,旨在應對數據集的不平衡問題,有效提高產品垃圾評論的識別精度。
針對本文數據集,定義每個評論表示為特征向量{xi,yi,1≤i≤7 315},其中xi={xi,1,xi,2,…,xi,n},yi={0,1},n為模型使用特征個數,則每個特征可以表示為向量Xj={x1,j,x2,j,…,x7 315,j,1≤j≤n}Τ。
3.1 隨機樹算法
隨機樹是指計算機隨機選擇節(jié)點的生長方式而構成的樹狀數據結構,是決策樹的一種。多棵隨機樹可以組成隨機森林,其算法描述如表1所示:
其中,ID3算法依據的是信息增益來選擇屬性。設訓練集D,其中|D|是D中訓練樣本的個數,Ci(i∈{1,2,…,m})是類別屬性第i個取值對應的樣本數,pi為Ci在D中出現(xiàn)的概率,即pi=Ci/|D|。則有
(1)
按某屬性A對D進行劃分,假設A有v個取值{a1,a2,…,av},則按照屬性A對訓練集D中的實例進行分類還需要的信息量如式(2)所示。
(2)
則屬性A上的信息增益為:InfoGain(A)=Info(D)-InfoA(D),屬性的信息增益越大說明根據該屬性對D進行劃分之后,D中的每一個實例進行正確分類還需要的信息熵越少,即系統(tǒng)更趨于有序。ID3算法選取信息增益最大的屬性作為每個節(jié)點的分裂屬性遞歸地構造決策樹。
3.2 隨機森林
隨機森林(RF,RandomForest)是由L.Breiman[15]于2001年提出的。隨機森林是一個組合分類器,由決策樹構成隨機森林的基礎分類器。單棵決策樹可以按照一定精度分類,為了提高精度,很簡單的方法就是種植一片森林,并讓所有決策樹參加投票,選出投票最多的分類。這就是隨機森林的思想基礎。
3.3 基于隨機森林的產品垃圾評論識別方法
在文獻[16]中,Chen等提出了兩種使用隨機森林來處理不平衡數據集分類問題的方法,一種是基于代價敏感學習的方法,另一種基于樣本采樣技術。他們采用了準確率、召回率、F值等評價指標對兩種方法進行實驗,實驗結果證明了該兩種方法能有效提升小類的預測精度,同時,該方法也是現(xiàn)有方法中性能最優(yōu)的。
本節(jié)我們將介紹隨機森林是如何結合最經典的兩種分類器構建方法,裝袋法(bagging)和Adaboost方法來處理產品垃圾評論中的不平衡數據集問題。
3.3.1 平衡隨機森林(BalancedRandomForest,BRF)算法
Bagging方法: 對原始實例數為N的數據集,每一個新的訓練集都是通過一種叫做步步為營法(bootstrapping)隨機重復采樣得到的,即對N個實例有放回的重復采樣N次得到訓練集。應用這種方法生成的訓練集一般只包含原始實例大約67%的樣本,其余的樣本作為袋外數據(OBB)用于測試[17]。
Bagging+BRF算法如以下陳述:
Step1: 針對本文不平衡數據集(x1,y1),…,(xn,yn),其中隨機森林的每一次迭代,從128個重復評論中以bootstrapping的方式進行N次重復采樣,同時從非重復樣本中隨機抽取同樣的樣本數;
Step2: 基于每一個步步為營樣本,構建一棵隨機樹。
Step3: 重復Step1-2,得到期望的隨機樹數量。
Step4: 讓每一棵樹都對輸入的向量xi進行投票。
Step5: 計算所有的投票數,其中票數最高的分類就是向量xi的分類標簽。
3.3.2 加權隨機森林(WeightedRandomForest,WRF)算法
Adaboost算法是由FreundandShapire[18]1996年正式提出的,是在boosting算法的基礎上發(fā)展而來,它克服了boosting算法的諸多缺陷,在機器學習領域受到極大的關注。
Adaboost+WRF算法描述如下:
Step2: 調用隨機森林算法進行N次迭代,每次迭代過程中,樣本權重參與尋找最佳分裂點。在每棵樹的終節(jié)點,樣本權重同樣也被考慮在內,每個終節(jié)點的預測類別是由“加權多數投票”方式決定的,從而得到一個預測函數序列h1,h2,…,hN,對每個預測函數hi也根據它們的預測效果賦予不同的權重θi,效果越好,則權重越大。
以上兩種方法中BRF的效率高于WRF,這是因為BRF只使用部分數據集進行訓練,而WRF需要完整的數據集,但WRF分類精度明顯高于BRF。
4.1 語料
本文使用了由BingLiu在網上提供的來自Amazon的數據集,如表2所示。使用該數據集的原因是它的數據量大,且Amazon作為最成功的商業(yè)網站之一,擁有著相當長的歷史,使用該網站提供的數據集是相當合理的。本文的實驗就是從mproducts領域中隨機抽取了部分評論進行研究,在保留同一用戶對同一產品的最新評論后,獲得7 315個評論,其中重復評論有128個,大類和小類的比例約為56∶1,數據集的不平衡性相當大。
表2 Amazon數據集
4.2 實驗結果及其分析
本文是以文獻[6]的研究工作為基礎,分類所采用的所有特征以及顯著性特征均為文獻[6]中所述的特征,本文將不再詳細說明。本文實驗以WEKA[19]作為實驗平臺,以F值和AUC值(曲線下面積)作為主要評價指標,比較了不同基線方法與隨機森林的性能差別以及不同參數對隨機森林識別性能的影響,同時,在實驗中采用十倍交叉驗證的方法。針對基線方法與隨機森林的實驗結果如表3所示。
表3 隨機森林與基線方法的識別效果
從表3實驗結果可以看出:
(1) 在基于所有特征的前提下,隨機森林算法不僅AUC值達到90.6%,F(xiàn)值也是五者之中最高的,達到45.1%;SVM算法在默認參數下訓練完全失??;J48的F值達到28.6%,但AUC值不高;logistic回歸AUC值雖然高達83.6%,但F值低下,只有5.6%;
(2) 在綜合應用文獻[6]的顯著性特征之后,Logistic回歸模型、J48算法的AUC值和F值均沒太大變化;SVM算法、NaiveBayes算法的F值有了明顯的提高,但AUC值依然很低;隨機森林F值從45.1%大幅提升到將近80%,AUC值也提升到97.9%。這充分說明了隨機森林算法的性能優(yōu)于其他四種基線算法,能夠平衡由數據集不平衡引起的誤差,同時也證明了顯著性特征與隨機森林算法的有效結合能進一步改進算法。
在隨機森林算法中,不同的隨機種子(S)、迭代次數(T)和不同分類器構建方法均會對實驗結果有影響,針對不同參數及構建方法的實驗結果如表4、表5所示。
表4 隨機森林中不同S的影響
從以上實驗結果可以看出:
(1) 從表4可以看出,對不同的隨機種子,隨機樹的F值最高有82.7%,最低達79.8%,變化較大,同時,三者AUC值均保持96.8%以上。說明不同的隨機種子對隨機森林的結果影響較大,也說明了隨機森林算法能有效解決數據集的不平衡問題;
(2) 從表5可以看出,隨著迭代次數T的增加,隨機森林的F值有了明顯的提高,其中Bagging算法迭代10次與20次F值相差達4.3%;
表5 隨機森林中不同T/分類器構建方法的影響
(3) 從表5還可以看出,Adaboost算法的F值均大于Bagging算法的F值,但時間消耗上Adaboost算法要高于Bagging算法,同時兩者的AUC值均高達98%以上。
綜上所述,基于隨機森林的產品垃圾評論識別方法優(yōu)于基于SVM/NaiveBayes/J48/Logistic回歸的基線方法,能夠有效解決產品垃圾評論識別中的數據集不平衡問題,從而大幅度提高產品垃圾評論識別的精度;結合顯著性的特征的隨機森林算法能夠進一步有效提高識別精度。
忽略產品垃圾評論識別中的數據集不平衡問題會導致分類精度的下降。結合顯著性特征的隨機森林算法能夠有效解決這一問題。本文對N. Jindal等人提出的方法進行研究,在文獻[6]的基礎上,分析了存在的問題,提出利用更為合理的顯著性特征建立隨機森林模型,從而提高了模型質量。通過在亞馬遜數據集的實驗,驗證了本文方法的有效性。我們未來的工作將致力于通過對模型參數的最優(yōu)化來進一步提高識別精度。
致謝 感謝Bing Liu在個人網站為本文提供了實驗數據集。
[1] 趙妍妍,秦兵,劉挺. 文本情感分析[J]. 軟件學報,2010,21(8): 1834-848.
[2] N Jindal and B Liu. Review Spam Detection[C]//Proceedings of the 16th international conference on World Wide Web. New York: ACM, 2007:1189-1190.
[3] G Wu, D Greene, B Smyth et al. Distortion as a validation criterion in the identification of suspicious reviews[C]//Proceedings of the First Workshop on Social Media Analytics.New York: ACM, 2010:10-13.
[4] 何海江, 凌云. 由Logistic回歸識別Web社區(qū)的垃圾評論[J].計算機工程與應用,2009,45(23):140-143.
[5] F Li, M Huang, Y Yang et al. Learning to identify review Spam[C]//Proceeding of the 22nd International Joint Conference on Artificial Intelligence. 2011: 2488-2493.
[6] 吳敏, 何瓏. 融合多特征的產品垃圾評論識別[J]. 微型機與應用, 2012, 31(22): 85-87.
[7] J Staddon and R Chow. Detecting reviewer bias through web-based association mining[C]//Proceedings of the 2nd ACM workshop on Information Credibility on the Web. New York: ACM, 2008: 5-10.
[8] N Jindal, B Liu, and EP Lim. Finding Unusual Review Patterns Using Unexpected Rules[C]//Proceedings of the 19th ACM International Conference on Information and Knowledge Management. New York: ACM, 2009: 1549-1552.
[9] E Lim, VA Nguyen, N Jindal et al. Detecting Product Review Spammers using Rating Behaviors[C]//Proceedings of the 19th ACM International Conference on Information and Knowledge Management. New York: ACM, 2010:939-948.
[10] A Mukherjee, B Liu, J Wang et al. Detecting Group Review Spam[C]//Proceedings of the 20th international conference companion on World Wide Web. New York: ACM, 2011: 93-94.
[11] G Wang, S Xie, B Liu et al. Review Graph based Online Store Review Spammer Detection[C]//Data Mining (ICDM), 2011 IEEE 11th International Conference on. IEEE, 2011: 1242-1247.
[12] A Mukherjee, B Liu, N Glance. Spotting Fake Reviewer Groups in Consumer Reviews[C]//Proceedings of the 21st international conference on World Wide Web. ACM, 2012: 191-200.
[13] H He, E A Garcia. Learning from imbalanced data[J]. IEEE Transactions on Knowledge and Data Engineering, 2009, 21(9): 1263-1284.
[14] 陳振偉, 廖祥文. 結合AB-SMOTE和C-SVW的中文傾向性句子識別[J]. 福州大學學報(自然科學版),2012,40(3):49-54.
[15] L Breiman. Random forests[J]. Machine Learning, 2001. 45(1):5-32.
[16] C Chen, A Liaw, L Breiman. Using random forest to learn imbalanced data[C]//Proceedings of University of California, Berkeley, 2004.
[17] L Breiman. Bagging Predictors[J]. Machine Learning, 1996, 24(2):123-140.
[18] Y Freund, R Shapire. Experiments with a new boosting Algorithm[C]// Proceedings of the 13th International Conference. 1996: 148-156.
[19] http://www.cs.waikato.ac.nz/ml/weka/[OL]
Identification of Product Review Spam by Random Forest
HE Long1,2
(1. Information Construction Office, Fuzhou University, Fuzhou, Fujian 350108,China; 2. Fujian Supercomputing Center, Fuzhou, Fujian 350108, China)
Current review spam identification methods are focused on the feature selection, without addressing the imbalance of the data set. This paper presents a product review spam identification method based on the random forest, with the same number of samples extracted from the large and small class with replacement repeatedly, or with the same weight assigned to the large and small class. The experimental results on Amazon dataset show that the random forest method outperforms other baseline methods.
product review spam; imbalance problem; random forest
何瓏(1971—),碩士,高級工程師,主要研究領域為操作系統(tǒng)、數據庫、網絡和信息安全及云計算、大數據分析挖掘等。E?mail:helong@fzu.edu.cn
1003-0077(2015)03-0150-05
2013-05-15 定稿日期: 2013-10-17
福建省自然科學基金(2010J05133)
TP391
A