王中卿, 李壽山,朱巧明,李培峰,周國棟
(蘇州大學 計算機科學與技術學院,江蘇 蘇州 215006)
目前,人們越來越習慣于在網(wǎng)絡上表達自己的觀點和情感,從而使得網(wǎng)絡上漸漸出現(xiàn)了大量帶有情感的文本。由于傳統(tǒng)的基于主題的文本分類方法已經無法很好分析這些情感文本,人們開始關注針對情感文本分類(簡稱:情感分類)的方法研究[1-2]。雖然情感分類的研究已經開展多年,但是目前大部分情感分類的研究假設正類樣本和負類樣本是平衡的[1-4]。該假設和實際情況并不相符,在實際收集的產品評論語料中,我們發(fā)現(xiàn)正類樣本和負類樣本的數(shù)目差距很大。樣本分布的不平衡往往會使傳統(tǒng)的機器學習分類方法在分類過程中嚴重偏向多樣本類別,從而使分類的性能急劇下降。因此,不平衡數(shù)據(jù)的情感分類問題是一個迫切需要解決的實際問題。
不平衡分類本身在機器學習領域是一個很有挑戰(zhàn)性的研究問題[5-6]。為了表述清楚,在下文中我們將樣本集合中樣本數(shù)較多的一類稱為多類(Majority Class),樣本數(shù)較少的一類稱為少類(Minority Class)。目前已經存在一些用來解決不平衡分類問題的方法,例如,重采樣技術(Re-sampling)[7],單類別分類(One-class classification)[8]和代價敏感學習(Cost Sensitive Learning)[9]。但是由于還沒有針對情感分類特別是中文情感分類的不平衡問題的研究,很多基本問題仍待研究,例如,哪種方法更適合中文情感分類任務。
本文將以欠采樣技術(Under-sampling)為基礎,通過集成學習(Ensemble learning)解決情感分類中的不平衡問題。欠采樣技術是指從初始的多類標注樣本中隨機取出和少類標注樣本一樣規(guī)模的樣本,與少類樣本一同構建分類器。欠采樣方法存在一個明顯缺點:由于欠采樣只是從多類中選擇部分樣本,使得大量未選中的多類樣本在后面的分類過程中未能發(fā)揮作用,從而丟失了很多可能對分類有幫助的樣本。因此,為了充分利用所有標注數(shù)據(jù),可以首先在多類樣本中進行多次欠采樣,構建多個欠采樣基分類器,最終融合這些基分類器進行集成學習[10]。我們稱該方法為基于欠采樣融合的集成方法。
影響集成學習性能的一個重要因素是參與集成的分類器之間的差異性。一般來說,分類器之間的差別越大,集成學習的性能提高會越明顯[11]。然而,在欠采樣融合的集成方法中,所有基分類器中參與訓練的少類樣本是完全一樣的。為了進一步增加基分類之間的差異性,我們提出基于欠采樣和多分類算法的集成方法。具體來講,每個欠采樣基分類器是由隨機分配的分類算法訓練得到。由于不同分類算法的分類機理是不同的,這樣參與的基分類器之間的差異性進一步擴大,有利于進一步提高分類性能。實驗結果表明,基于欠采樣和多分類算法的集成方法能夠進一步的提高分類的效果。
本文結構安排如下:第二節(jié)詳細介紹情感分類以及不平衡分類的相關工作;第三節(jié)提出基于集成學習的不平衡分類方法;第四節(jié)給出實驗結果及分析;第五節(jié)給出相關結論。
早期情感分類研究主要集中在無監(jiān)督學習方法上面。無監(jiān)督學習一般是通過兩個詞之間的關系以及一些資源比如WordNet/HowNet或者未標注數(shù)據(jù)來判斷文本的情感傾向[12]。由于無監(jiān)督學習方法的分類效果比較差,并不能很好滿足實際應用的需求。
基于監(jiān)督學習的情感分類方法是當前的主流方法,與無監(jiān)督學習方法相比,基于詞袋模型(Bag-of-words Model)的全監(jiān)督情感分類方法總是能夠獲得更好的分類效果[1]。后續(xù)的大量研究在基本的詞袋模型上面給出了多種方式的改進,進一步提高了分類的性能。例如,采用上下文特征[13],使用文檔子成分(Document Subcomponent)信息[14],考慮極性轉移[15]等。然而,已有的方法基本都是基于樣本分布平衡的假設,不平衡數(shù)據(jù)的情感分類方法研究還很缺乏。
目前,主流的不平衡分類方法主要分為三類:重采樣技術、單類別分類和代價敏感學習。
其中,重采樣技術應用最為廣泛。重采樣技術主要分為兩類:欠采樣(Under-sampling)和過采樣(Over-sampling)。具體來講,過采樣技術通過重復少類樣本使得少類樣本數(shù)和多類樣本數(shù)平衡;欠采樣技術通過減少多類樣本使得兩類樣本數(shù)平衡。除了簡單的隨機重采樣,其他多重采樣方法通過啟發(fā)式的策略來擴展/選擇樣本。例如,Yen和Lee 提出基于聚類方法的欠采樣方法,該方法通過聚類的方式在采樣的過程中選擇更具代表性的樣本[16]。
代價敏感學習方法的主要思想是在構建分類器過程中修改訓練過程中的分錯代價函數(shù),讓少類分錯的代價遠遠大于多類分錯的代價[9]。單類別分類是指在構建分類器過程中,只使用一個類別里面的標注樣本,在應用到不平衡分類中,僅僅多類樣本作為單類別分類的訓練樣本[8]。該方法適合樣本非常不平衡情況的分類問題。
假設N個樣本的訓練數(shù)據(jù)中包含有N+個正類樣本和N-個負類樣本。目前大多數(shù)研究總是假設正類樣本數(shù)和負類樣本數(shù)是平衡的,即N+=N-,但實際情況并非如此。通常來說,更一般的情況是訓練數(shù)據(jù)中一類樣本要遠遠多于另一類樣本,即N+?N-或者N+?N-。
為了更好地理解情感分類中的不平衡現(xiàn)象,我們從卓越網(wǎng)*http://www.amazon.cn/上收集來自四個領域的中文評論語料并統(tǒng)計它們在兩個類別里面的分布情況。這四個領域分別是箱包、化妝品、相機和軟件。
表1 各領域正類樣本和負類樣本分布情況
表1給出了四個領域的類別分布情況。從表中可以看出,各個領域不平衡比(N+/N-)介于2和4。顯而易見,在每個領域中,負類樣本數(shù)目都要明顯少于正類樣本數(shù)目。
集成學習是組合多個基分類器的一種學習機制。為了產生多個不同的基分類器,一種常用的方式是通過訓練不同的數(shù)據(jù)集合產生不同的基分類器,稱之為基于樣本融合的集成學習。針對不平衡分類問題,可以在多類樣本中進行多次欠采樣并將每一次采樣的樣本同少類樣本訓練獲得一個基分類器。
獲得基分類器后,組合分類器方法需要特別的融合方法去融合這些結果。融合方法可以分為兩種,固定的融合方法(Fixed Rules)和可訓練的融合方法 (Trained Rules)。本文選擇基于固定融合方法的貝葉斯規(guī)則融合基分類器的結果。貝葉斯規(guī)則可以描述為式(1)[17]:
assigny→cj
(1)
總體來說,基于欠采樣的集成學習的實現(xiàn)步驟如下:(1)通過在多類樣本中進行多次欠采樣的方式和少類樣本組成多個訓練樣本集合;(2)對于每個訓練樣本集合訓練一個基分類器;(3)通過貝葉斯規(guī)則融合各個基分類器的結果。
在構建集成學習系統(tǒng)中除了可以通過訓練不同的樣本集合產生不同的分類器之外,還可以通過不同的分類方法產生不同的分類器。由于很多分類方法是基于不同的原理的,如k-近鄰(k-NN)方法是基于記憶的方法,支持向量機方法(SVM)是基于結構風險最小理論的方法等。因此,不同的分類方法實現(xiàn)的分類器實現(xiàn)分類的效果往往是不一樣的[2]。所以通過為不同的訓練樣本集合隨機分配不同的分類算法,可以減少由于存在相同的少類樣本造成的樣本冗余現(xiàn)象,從而進一步提高集成學習的效果。因此,我們提出一種基于欠采樣和多分類算法的集成方法。具體實現(xiàn)步驟如下:(1)通過在多類樣本中進行n次欠采樣的方式和少類樣本組成多個訓練樣本集合(n的值為多類樣本和少類樣本的比率,即不平衡比);(2)對于每個訓練樣本集合隨機分配一個分類算法組成基分類器;(3)通過貝葉斯規(guī)則融合各個基分類器的結果。
基于欠采樣和多分類算法的集成學習系統(tǒng)需要使用多種分類算法用來構建基分類器,本文采用三種不同的分類方法,分別為樸素貝葉斯、最大熵和支持向量機。
我們在卓越網(wǎng)上收集了來自四個領域的中文評論語料。這四個領域分別是箱包、化妝品、相機和軟件。3.1節(jié)已經分析了每個領域的不平衡情況,具體分布可參考表1。實驗過程中,我們選擇 80%的樣本作為訓練樣本,剩余的20%樣本作為測試樣本。分類算法包括最大熵、SVM和樸素貝葉斯。其中,SVM是使用標準工具light-SVM*http://svmlight.joachims.org/,樸素貝葉斯和最大熵是使用MALLET機器學習工具包*http://mallet.cs.umass.edu/。在使用過程中,這些工具的所有參數(shù)都設置為它們的默認值。
在進行分類之前首先采用中國科學院計算技術研究所的分詞軟件ICTCLAS*http://ictclas.org/對中文文本進行分詞操作。給定分好詞的文本后,我們選取詞的Unigram作為特征,用以獲得文本向量的表示。
在平衡數(shù)據(jù)的情感分類中,通常使用準確率(Accuracy,acc.)作為分類效果的衡量標準。 而在不平衡分類中,由于分類結果很容易偏向多類,所以使用準確率作為分類效果的衡量標準對于少類變得非常不公平。因此,一般使用幾何平均數(shù)(G-mean)作為衡量分類效果的標準。幾何平均數(shù)的計算方法為式(2):
(2)
其中:TPrate和TNrate分別代表了正類樣本的召回率和負類樣本的召回率[6]。
表2和表3分別是各個分類算法基于欠采樣以及基于欠采樣集成學習的分類的分類結果(G-mean值)。從結果中可以看出:(1)最大熵,SVM和樸素貝葉斯在分類結果上的差別不明顯,這一點同文獻[1]中的結果一致;(2)雖然不同的分類算法在實現(xiàn)上有很大的不同,但是基于欠采樣集成學習的分類效果都比基于欠采樣的分類有很大的提升,充分顯示了基于欠采樣集成學習的分類在不平衡中文情感分類中的優(yōu)勢。
表2 基于欠采樣的分類的分類結果
表3 基于欠采樣集成學習的分類結果
為了進行充分的比較,我們實現(xiàn)了多種主流的不平衡分類方法。
1)完全訓練(FullTraining,F(xiàn)ullT),直接將所有訓練樣本進行訓練。
2)隨機過采樣(RandomOver-sampling,OverS),在少類樣本中使用過采樣技術隨機選擇樣本。
3)隨機欠采樣(RandomUnder-sampling,UnderS),在多類樣本中使用采樣技術隨機選擇樣本。
4)基于聚類的欠采樣(Clustering-basedUnder-sampling,ClusterU),我們根據(jù)文獻[16]的方法實現(xiàn)了基于聚類的欠采樣。
5)基于最鄰近的欠采樣(Neighbor-basedUnder-sampling,Neighbor),在多類樣本中進行隨機欠采樣,只是在欠采樣時,每次選擇一個樣本需要在樣本集合中去除和它最鄰近的k個樣本(k-NN)[18]。在我們的實驗中,該方法通過在多類樣本中去除“多余的”,“邊界的”樣本從而提高欠采樣的效果。
6)單類別分類(One-classClassification,OneClass),我們根據(jù)文獻[8]的描述,利用libSVM*http://www.csie.ntu.edu.tw/~cjlin/libsvm/實現(xiàn)單類別分類。
7)代價敏感分類(Cost-sensitiveClassification,CostSensitive),我們根據(jù)文獻[9]的描述,利用libSVM實現(xiàn)代價敏感分類。在這里代價的權重根據(jù)每個領域中訓練樣本集合中多類樣本和少類樣本的比例進行調整。
8)基于欠采樣和多分類算法的集成學習(OurApproach),在基于欠采樣的集成學習的基礎上為每組訓練樣本隨機分類不同的分類器,也就是本文提出的方法。
從上一節(jié)結果可以看出,三個分類算法的分類性能差異不大,我們關于不平衡學習方法的比較研究中僅以最大熵分類算法作為基準系統(tǒng)實現(xiàn)前四種不平衡分類方法。表4是各種不平衡分類方法在基于不平衡數(shù)據(jù)的中文情感分類中的分類效果。從表中可以看出,單類別分類方法表現(xiàn)最差,可能的原因是單類別分類適合不平衡程度非常大的不平衡分類問題(例如,正負或者負正樣本比例超過1 000),而中文情感分類的正負比例僅僅介于2到4之間。完全訓練(FullT)方法表現(xiàn)也不理想,主要原因就是分類算法嚴重趨向多類,使得少類的召回率非常低。從幾種采樣方法的比較中可以發(fā)現(xiàn),欠采樣方法優(yōu)于過采樣方法,但是幾種欠采樣的方法的性能基本類似。代價敏感分類方法(CostSensitive)相對于其他方法有明顯優(yōu)勢,能夠比隨機欠采樣方法有明顯提升。我們的基于欠采樣和多分類算法的集成方法明顯優(yōu)于其他各種不平衡分類方法,平均比代價敏感分類方法提高超過兩個百分點。
表4 不同不平衡分類的結果
本文研究中文情感文本分類任務中的不平衡數(shù)據(jù)分類問題,提出一種基于欠采樣和多分類算法的集成學習方法。實驗結果表明,該方法能夠很好地解決中文情感分類任務中的不平衡分類問題。比較研究發(fā)現(xiàn),我們的方法明顯優(yōu)于傳統(tǒng)的采樣方法、單類別分類和代價敏感分類方法。
情感文本分類任務中的不平衡數(shù)據(jù)分類問題才剛剛起步,有許多問題還有待進一步深入研究。例如,不平衡情感分類問題中的特征選擇是明顯區(qū)別于傳統(tǒng)特征提取方法[19],如果更有效地進行不平衡數(shù)據(jù)分類問題中的特征提取是一個值得探討的問題。另外,情感分類領域適應(Domain Adaptation)[3]中的不平衡數(shù)據(jù)分類問題也是一個急需解決的問題。在實際應用中,存在目標領域里面的樣本分布不平衡的情況。這些問題將作為我們下一步的研究方向。
[1] Pang B. ,Lee L., Vaithyanathan S. Thumbs up?: Sentiment Classification using Machine Learning Techniques[C]//Proceedings of EMNLP. 2002.
[2] 李壽山, 黃居仁. 基于 Stacking組合分類方法的中文情感分類研究[J]. 中文信息學報, 2010, 24(5):56-61.
[3] Blitzer J., Dredze M., Pereira F. Biographies. Bollywood, Boom-boxes and Blenders: Domain Adaptation for Sentiment Classification[C]//Proceedings of ACL. 2007.
[4] Li S., Huang C., Zhou G., et al. Employing Personal/Impersonal Views in Supervised and Semi-supervised Sentiment Classification[C]//Proceedings of ACL. 2010.
[5] Barandela R., Sánchez J.S., García V., et al. Strategies for Learning in Class Imbalance Problems[J]. Pattern Recognition, 2003, 36:849-851.
[6] Kubat M., Matwin S. Addressing the Curse of Imbalanced Training Sets: One-Sided Selection[C]//Proceedings of ICML.1997.
[7] Chawla N., Bowyer K., Hall L., et al. SMOTE: Synthetic Minority Over-Sampling Technique[J]. Journal of Artificial Intelligence Research, 2002,16:321-357.
[8] Juszczak P., Duin R. Uncertainty Sampling Methods for One-Class Classifiers[C]//Proceedings of ICML, Workshop on Learning with Imbalanced Data Sets II. 2003.
[9] Zhou Z., Liu X. Training Cost-Sensitive Neural Networks with Methods Addressing the Class Imbalance Problem[C]//IEEE Transaction on Knowledge and Data Engineering, 2006, 18:63-77.
[10] Liu X., Wu J.,, Zhou Z. Exploratory under-sampling for class-imbalance learning[J]. IEEE Transactions on Systems, Man, and Cybernetics, Part B: Cybernetics, 2009, 39(2): 539-550.
[11] Kittler J., Hatef M., Duin R., et al. On Combining Classifiers[J]. IEEE Trans. PAMI, 1998,20: 226-239.
[12] Turney P. Thumbs up or Thumbs down? Semantic Orientation Applied to Unsupervised Classification of reviews[C]//Proceedings of ACL. 2002.
[13] Riloff E., Patwardhan S., Wiebe J. Feature Subsumption for Opinion Analysis[C]//Proceedings of EMNLP. 2006.
[14] McDonald R., Hannan K., Neylon T., et al. Structured Models for Fine-to-coarse Sentiment Analysis[C]//Proceedings of ACL. 2007.
[15] Li S., Lee S., Chen Y., et al. Sentiment Classification and Polarity Shifting[C]//Proceedings of COLING. 2010.
[16] Yen S., Lee Y. Cluster-Based Under-Sampling Approaches for Imbalanced Data Distributions[J]. Expert Systems with Applications,2009,36:5718-5727.
[17] Kittler J., Hatef M., Duin R. P.W., et al. On combining classifiers[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence,1998,20: 226-239.
[18] Laurikkala J. Improving Identification of Difficult Small Classes by Balancing Class Distribution[C]// Proceeding of 8th Conference on artificial intelligence in medicine in Europe, 2001.
[19] Li S., Xia R., Zong C. et al. A Framework of Feature Selection Methods for Text Categorization[C]//Proceedings ACL-IJCNLP. 2009.
[20] Somasundaran S., G. Namata, J. Wiebe. Supervised and Unsupervised Methods in Employing Discourse Relations for Improving Opinion Polarity Classification[C]//Proceedings of EMNLP.2009.
[21] Nakagawa T.,Inui K., Kurohashi S. Dependency Tree-based Sentiment Classification using CRFs with Hidden[C]//Proceedings of NAACL. 2010.
[22] 翟云,楊炳儒,曲武.不平衡類數(shù)據(jù)挖掘研究綜述[J].計算機科學, 2010, 37: 27-32.
[23] Vilalta R., Drissi Y. A perspective view and survey of meta-learning[J]. Artificial Intelligence Review, 2002, 18(2): 77-95.