蘇 艷,居勝峰,王中卿,李壽山,周國棟
(蘇州大學(xué) 自然語言處理實驗室,江蘇 蘇州 215006)
隨著www的高速發(fā)展,互聯(lián)網(wǎng)上產(chǎn)生了大量對于人物、事件、產(chǎn)品等進(jìn)行評論的文本信息。為了處理和分析這些海量的評論信息,情感分析(sentiment analysis)正漸漸發(fā)展成為自然語言處理中一項越來越受關(guān)注的研究課題[1-3]。目前情感分類的主流研究方法—基于機器學(xué)習(xí)的方法,大致可以分為三種類型: 無監(jiān)督學(xué)習(xí)、監(jiān)督學(xué)習(xí)和半監(jiān)督學(xué)習(xí)。盡管監(jiān)督學(xué)習(xí)方法在情感分類中取得了非常好的效果[4-5],但是監(jiān)督學(xué)習(xí)依賴大量的標(biāo)注樣本,而獲得大量標(biāo)注樣本的成本代價很高;無監(jiān)督學(xué)習(xí)雖然不需要標(biāo)注樣本,但分類效果與監(jiān)督學(xué)習(xí)相比還存在一定差距[6-7]。相對而言,半監(jiān)督學(xué)習(xí)方法,一種結(jié)合少量標(biāo)注樣本和大量未標(biāo)注樣本進(jìn)行學(xué)習(xí)的方法[8-10],是前面兩種方法的一種折衷。該方法既能有效地減少標(biāo)注樣本帶來的開銷,又可以避免完全沒有標(biāo)注樣本帶來的分類效果損失。因此,半監(jiān)督學(xué)習(xí)漸漸受到廣大研究者的密切關(guān)注。
眾所周知,協(xié)同訓(xùn)練(Co-training)是由Blum和Mitchell[11]提出的一種非常有效的半監(jiān)督學(xué)習(xí)方法。該方法的成功運用需滿足兩個條件: (1)樣本可以由兩個冗余的條件獨立視圖表示;(2)每一個視圖都能從訓(xùn)練樣本中學(xué)習(xí)到一個強分類器。例如,在網(wǎng)頁分類中,網(wǎng)頁的正文信息構(gòu)成一個視圖,而網(wǎng)頁中超鏈接信息構(gòu)成另一個視圖[11]。然而,不同于網(wǎng)頁文本,普通情感評論文本并沒有天然存在的多個視圖??紤]到情感文本中特征數(shù)量非常龐大,本文首先利用隨機特征子空間生成的方式將文本特征空間分為多個部分作為多個視圖;然后基于協(xié)同訓(xùn)練在每個視圖中挑選置信度高的未標(biāo)注樣本;最后利用這些挑選出的樣本更新訓(xùn)練模型,文中稱這種方式為基于隨機特征子空間生成的協(xié)同訓(xùn)練。
基于隨機特征子空間生成的協(xié)同訓(xùn)練存在以下問題。由于每個視圖是隨機產(chǎn)生的,很可能存在一個視圖不包含對分類有幫助的特征,從而導(dǎo)致該視圖無法構(gòu)建一個強分類器(不能滿足上述的第二個條件)。為了解決上述問題,本文提出了一種新的基于動態(tài)隨機特征子空間生成的協(xié)同訓(xùn)練,即在每一個迭代過程都產(chǎn)生一組不同的特征子空間。相對于靜態(tài)方式(僅產(chǎn)生一次特征子空間),動態(tài)方式可以避免產(chǎn)生的子空間沒有足夠分類能力*我們相信在動態(tài)產(chǎn)生過程中,存在某個子空間構(gòu)建的分類器分類能力不強的情況,但是這種情況不可能始終發(fā)生,所以最終的協(xié)同訓(xùn)練過程還是能夠成功進(jìn)行。。實驗結(jié)果表明此方法明顯優(yōu)于靜態(tài)子空間產(chǎn)生方式及其他半監(jiān)督學(xué)習(xí)方法。另外,在已有的協(xié)同訓(xùn)練算法的研究中通常將特征空間分為兩個子空間[9-10],然而這并不一定是最佳的劃分方式,因此本文還探索了特征子空間的劃分?jǐn)?shù)目問題,實驗表明特征空間分為四部分時能夠獲得最好的分類性能。
本文結(jié)構(gòu)組織如下: 第二節(jié)介紹情感分類的相關(guān)研究工作;第三節(jié)提出基于隨機特征子空間的動態(tài)的半監(jiān)督情感分類方法;第四節(jié)給出實驗結(jié)果及分析;第五節(jié)給出結(jié)論,并對下一步工作進(jìn)行展望。
情感分類方法主要分為無監(jiān)督學(xué)習(xí)和監(jiān)督學(xué)習(xí)方法。其中,無監(jiān)督學(xué)習(xí)方法是指不借助任何標(biāo)注樣本來構(gòu)建分類模型。已有的無監(jiān)督學(xué)習(xí)方法一般借助于一些已標(biāo)注的情感詞(又稱種子詞)。例如,Turney[12]通過計算文檔中單詞和種子詞(“excellent”,“poor”)之間的點互信息(PMI)來計算整個文檔的情感傾向。Kennedy和Inkpen[13]在種子集合上使用情感詞計數(shù)的方式(term-counting)獲得情感傾向。Zagibalov和Carroll[14]也采用了類似的分類算法,但是在情感種子詞的選擇上提出了一種更有效的方式。然而,由于無監(jiān)督學(xué)習(xí)不借助任何標(biāo)注樣本,所以在分類性能方面與監(jiān)督的方法還存在較大差距,在很多場合難以滿足實際需求。
監(jiān)督的學(xué)習(xí)方法是指通過訓(xùn)練大量標(biāo)注樣本來構(gòu)建分類模型,近年來也取得了一定的進(jìn)展。最早由Pang et al.[5]將監(jiān)督學(xué)習(xí)引入情感分類任務(wù)中,而后續(xù)的大量研究工作都致力于通過各種途徑來改善基于監(jiān)督學(xué)習(xí)情感分類的性能。例如,主觀句識別[15]、尋求更佳的文本特征[16]、使用文檔局部特征信息[17]等。相對無監(jiān)督學(xué)習(xí),基于監(jiān)督學(xué)習(xí)的性能通常較好,但是監(jiān)督學(xué)習(xí)需要有充足的標(biāo)注樣本。由于情感分類是一個領(lǐng)域相關(guān)問題,在實際應(yīng)用中,特別是牽涉到多個領(lǐng)域時,樣本的標(biāo)注工作會變得非常費時費力。因此監(jiān)督學(xué)習(xí)方法在滿足實際需求方面也存在不足。
近幾年來,基于半監(jiān)督學(xué)習(xí)的情感分類越來越受到重視。基于半監(jiān)督學(xué)習(xí)的情感分類是通過結(jié)合少量標(biāo)注樣本和大量未標(biāo)注樣本來構(gòu)建分類模型。Wan[9]將兩種不同語言(英語和漢語)作為兩個不同的視圖,采用協(xié)同訓(xùn)練方法進(jìn)行半監(jiān)督情感分類;Li et al.[10]則是把評價語句分為個人視圖(Personal View)和非個人視圖(Impersonal View)并同樣采用協(xié)同訓(xùn)練方法進(jìn)行半監(jiān)督情感分類。Zhou et al.[18]則提出基于貝葉斯置信網(wǎng)絡(luò)的主動學(xué)習(xí)和半監(jiān)督學(xué)習(xí)方法用于情感分類任務(wù)。雖然本文的方法也是基于協(xié)同訓(xùn)練,但是,相對于Wan[9]和Li et al.[10]中的視圖產(chǎn)生方式,我們提出的基于隨機特征子空間產(chǎn)生視圖的方式實現(xiàn)起來更加簡單和直觀,并且很容易移植到其他語言的情感分類任務(wù)(語言獨立性)。
除了上面的幾篇密切相關(guān)的研究工作以外,半監(jiān)督的情感分類方法還存在一種特殊的實現(xiàn)方式, 少量標(biāo)注樣本結(jié)合情感詞典的方法。例如,Sindhwani和Melville[19]提出了基于二部圖的半監(jiān)督學(xué)習(xí)方法同時實現(xiàn)了篇章級和詞語級的情感分類;Li et al.[20]則基于限制性非負(fù)矩陣分解(Constrained Non-negative Tri-factorization)的方法實現(xiàn)了這種方式的半監(jiān)督學(xué)習(xí)情感分類任務(wù)。值得指出的是,本文僅考慮存在少量標(biāo)注樣本的情況,并未加入任何情感詞典資源。
本文將每一個特征子空間作為文本的一個表示視圖,于是多個特征子空間可以對應(yīng)多個文本表示的不同視圖。有了這些視圖,就可以應(yīng)用協(xié)同訓(xùn)練算法進(jìn)行半監(jiān)督學(xué)習(xí)。具體來講,首先將標(biāo)注和未標(biāo)注樣本的所有特征分為m個子空間,然后使用每一個子空間特征和訓(xùn)練樣本一同訓(xùn)練一個子空間分類器,然后在協(xié)同訓(xùn)練(co-training)算法中分別使用上面產(chǎn)生的分類器選擇置信度高的樣本作為自動標(biāo)注樣本,以迭代的方式更新訓(xùn)練集。若在整個協(xié)同訓(xùn)練過程中每個子空間都是固定不變,則稱這種方式為基于靜態(tài)隨機子空間生成的協(xié)同訓(xùn)練。在引言部分已經(jīng)提出,這種靜態(tài)的方式在產(chǎn)生的子空間分類器分類能力不足的情況下會使整個學(xué)習(xí)過程失敗。因此,本文提出一種新的基于動態(tài)隨機子空間生成的協(xié)同訓(xùn)練算法。它與靜態(tài)子空間生成方式不同的是,在協(xié)同訓(xùn)練的每次迭代中動態(tài)生成兩個子空間分類器。這種方式有著明顯的優(yōu)勢: 由于在情感分類中有用的特征并不多,所以很有可能一個子空間分類器不包含這些有用的特征,造成這個子空間分類能力不足,而動態(tài)子空間生成的方法可以避免這個問題(即使失敗也僅僅是部分迭代,不會是整個過程的失敗)。圖1詳細(xì)介紹了基于動態(tài)特征子空間生成的協(xié)同訓(xùn)練算法流程。
圖1 基于動態(tài)特征子空間生成的協(xié)同訓(xùn)練算法
值得指出的是,動態(tài)特征子空間生成是每次迭代過程都重新生成子空間,而靜態(tài)的方法只生成一次子空間,整個協(xié)同訓(xùn)練過程中一直用這組子空間。兩種方法不同之處體現(xiàn)在步驟S2),只要把步驟S2)移到循環(huán)之前,動態(tài)方法即變成了靜態(tài)方法。
在已有的協(xié)同訓(xùn)練算法的研究中,通常將特征空間分為兩個子空間[9-10]。然而,在情感分類中,由于特征維度非常高,將特征空間分為兩個子空間(即:m=2)不一定是最佳的劃分方式,因此究竟將特征空間分為幾部分是一個很值得研究的問題。在后續(xù)的實驗環(huán)節(jié),我們將對在情感分類中特征子空間劃分的數(shù)目(m)進(jìn)行詳細(xì)地比較研究。
實驗數(shù)據(jù)來自Blitzer et al.[22]收集的多領(lǐng)域情感語料*http://www.seas.upenn.edu/~mdredze/datasets/sentiment/,包括四個領(lǐng)域: Book,DVD,Electronic,Kitchen。每個領(lǐng)域包含1 000篇正類和1 000篇負(fù)類評論。本實驗使用MALLET機器學(xué)習(xí)工具包*http://mallet.cs.umass.edu/中的最大熵分類器,分類算法的所有參數(shù)都設(shè)置為默認(rèn)值。分類選取詞的一元特征(unigram)作為特征,并使用它們的布爾權(quán)重作為文本向量里面的特征值。具體實驗時,選擇10%樣本作為初始標(biāo)注樣本,80%樣本作為未標(biāo)注樣本,剩下的10%樣本作為測試樣本。考慮到隨機特征子空間生成的隨機性問題,對于每一個實驗我們?nèi)∥宕螌嶒灲Y(jié)果的平均值作為最終結(jié)果。
在本小節(jié)中,將針對協(xié)同訓(xùn)練中動態(tài)生成子空
間和靜態(tài)生成子空間方法進(jìn)行比較研究。除此之外,還實現(xiàn)了一些其他常見的半監(jiān)督學(xué)習(xí)算法進(jìn)行比較研究。這些方法包括:
1)Baseline: 對未標(biāo)注樣本不做任何處理,直接使用標(biāo)注樣本訓(xùn)練分類模型;
2)Self-training: 利用整個特征空間構(gòu)建分類器,并用它迭代加入置信度最高的樣本擴充標(biāo)注樣本集合;
3)Personal/ImpersonalLearning: 將每篇文章的句子分為兩個視圖: 個人視圖(personal view)和非個人視圖(impersonal view)主要參考Li et al.[10]實現(xiàn);
4)StaticCo-training: 基于靜態(tài)隨機子空間生成的協(xié)同訓(xùn)練算法,設(shè)置m=2,即分成兩個特征子空間;
5)DynamicCo-training: 基于動態(tài)隨機子空間生成的協(xié)同訓(xùn)練算法,設(shè)置m=2,即分成兩個特征子空間。該方法就是本文提出的方法。
在實現(xiàn)以上算法過程中,置信度的大小是通過最大熵分類器提供的分類結(jié)果即樣本屬于每個類別的后驗概率的大小來決定的。
圖2給出了不同半監(jiān)督學(xué)習(xí)方法的性能比較。從圖中可以看出,基于特征子空間的半監(jiān)督學(xué)習(xí)方法要遠(yuǎn)遠(yuǎn)好于Baseline和Self-training?;趧討B(tài)子空間生成的協(xié)同訓(xùn)練要明顯優(yōu)于靜態(tài)的方式,四個領(lǐng)域平均提高幅度達(dá)2.6%。同時,本文提出的動態(tài)方法已經(jīng)超過現(xiàn)有的最好方法—基于Personal/Impersonal的半監(jiān)督情感分類方法[10],尤其是在DVD和Electronic領(lǐng)域,提高的幅度達(dá)到了1.6%和3.8%。我們的方法相對Baseline在四個領(lǐng)域都有一定幅度的提高,但由于Book和DVD領(lǐng)域本身的樣本信息噪音就比較大(存在大篇幅的介紹劇情)導(dǎo)致分類困難,所以獲得的分類效果并沒有其他兩個領(lǐng)域高。
圖2 不同半監(jiān)督分類方法情感分類性能比較
隨著未標(biāo)注樣本的添加,Self-training自動標(biāo)記中標(biāo)錯的樣本會不斷累積錯誤,其負(fù)作用越來越大。而在我們的方法中兩個特征子空間能相互補充有幫助的信息,更能充分利用對分類有幫助的特征,從而更新訓(xùn)練模型。Personal/Impersonal的方法需要滿足特定條件,但該方法與靜態(tài)產(chǎn)生視圖方式存在同樣的缺陷。即由于在情感分類中有用的特征并不多,所以很有可能一個子空間分類器不包含這些有用的特征,造成這個子空間分類能力不足。實驗結(jié)果表明動態(tài)子空間生成的方法可以避免這個問題,從而取得更好的分類性能。
4.2.1 不同特征子空間數(shù)目時動態(tài)/靜態(tài)方法的比較實驗
本實驗詳細(xì)比較在不同特征子空間數(shù)目時候,動態(tài)和靜態(tài)分類方法的性能。我們選擇特征空間數(shù)目,m=2,4,8,16。表1給出相應(yīng)的結(jié)果。實驗結(jié)果表明,將特征被劃分為不同數(shù)目子空間時,基于動態(tài)子空間生成的協(xié)同訓(xùn)練均要明顯優(yōu)于靜態(tài)的方式。
表1 不同特征子空間數(shù)目時動態(tài)/靜態(tài)方法分類性能比較
4.2.2 特征子空間數(shù)目的比較實驗
本實驗將討論比較研究協(xié)同訓(xùn)練中特征子空間劃分個數(shù)m的問題,劃分為幾個子空間能取得最佳分類性能。從4.2.1的實驗發(fā)現(xiàn),基于動態(tài)子空間生成的協(xié)同訓(xùn)練明顯優(yōu)于基于靜態(tài)子空間生成的協(xié)同訓(xùn)練,所以選用動態(tài)子空間生成的協(xié)同訓(xùn)練進(jìn)行下面的實驗。為了清楚起見,我們選擇m=2,4,8,16四種情況進(jìn)行比較實驗。
圖3 基于不同特征子空間數(shù)目的動態(tài)多視圖半監(jiān)督情感分類性能比較
從圖3可以看出,當(dāng)m=4時也即把特征空間分為四部分時能夠獲得最好的分類性能。隨著m的進(jìn)一步增加,每個子空間中包含的特征逐步減少,從而導(dǎo)致子空間分類器的性能下降。例如,當(dāng)m=16時,協(xié)同訓(xùn)練的分類效果明顯下降,比m=4時平均下降了3.2%。另外,當(dāng)m=4時,協(xié)同訓(xùn)練方法比Personal/Impersonal方法平均提高了4.5%
本文提出一種基于隨機特征子空間的半監(jiān)督情感分類方法,此方法在迭代過程中采用動態(tài)的方式生成特征子空間,能取得更佳的情感分類性能。實驗結(jié)果表明這種方法明顯優(yōu)于其他主流的半監(jiān)督情感分類方法,同時實驗結(jié)果顯示將特征空間分成四個視圖時能夠獲得最佳性能。
本文實驗中,所使用的特征是詞的一元特征(unigram),在下一步工作中,我們將嘗試把詞的二元特征(bigram)、依存關(guān)系特征、語義角色等特征用到半監(jiān)督情感分類中,用以提高分類的性能。另外,還可以嘗試將基于動態(tài)特征子空間的半監(jiān)督學(xué)習(xí)方法用到其他自然語言處理任務(wù)中。
[1] 黃萱菁, 趙軍. 中文文本情感分析[J]. 中國計算機學(xué)會通訊, 2008, 4(2).
[2] 趙軍, 許洪波, 黃萱菁, 等. 中文傾向性分析評測技術(shù)報告[A]. 第一屆中文傾向性分析評測會議, 2008.
[3] 劉鴻宇, 趙妍妍, 秦兵, 等. 評價對象抽取及其傾向性分析[J]. 中文信息學(xué)報, 2010, 24(1):84-88.
[4] 唐慧豐, 譚松波, 程學(xué)旗. 基于監(jiān)督學(xué)習(xí)的中文情感分類技術(shù)比較研究[J]. 中文信息學(xué)報, 2007, 6(2).
[5] Pang B., L. Lee, S. Vaithyanathan. Thumbs up? Sentiment Classification using Machine Learning Techniques. [C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP-02). 2002.
[6] Zagibalov T.,J. Carroll. Automatic Seed Word Selection for Unsupervised Sentiment Classification of Chinese Test. [C]//Proceedings of the 22nd International Conference on Computational Linguistics (COLING-08). 2008.
[7] Yarowsky D. Unsupervised Word Sense Disambiguation Rivaling Supervised Methods[C]//Proceedings of Annual Meeting on Association for Computational Linguistics(ACL-05). 1995.
[8] Dasgupta S.,V. Ng. Mine the Easy, Classify the Hard: A Semi-Supervised Approach to Automatic Sentiment Classification[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-09). 2009.
[9] Wan X. Co-Training for Cross-Lingual Sentiment Classification[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-09). 2009.
[10] Li S., C. Huang, G. Zhou, et al. Employing Personal/Impersonal Views in Supervised and Semi-supervised Sentiment Classification[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-10). 2010.
[11] Blum A., T. Mitchell. Combining Labeled and Unlabeled Data with Co-training[C]//Proceedings of the 11th Annual Conference on Computational Learning Theory (COLT-98).1998.
[12] Turney P. Thumbs up or Thumbs down? Semantic Orientation Applied to Unsupervised Classification of Reviews[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-02). 2002.
[13] Kennedy A., D. Inkpen. Sentiment Classification of Movie Reviews using Contextual Valence Shifters[J]. Computational Intelligence, 2006,22(2), 110-125.
[14] Zagibalov T., J. Carroll. Automatic Seed Word Selection for Unsupervised Sentiment Classification of Chinese Test[C]//Proceedings of the 22nd International Conference on Computational Linguistics (COLING-08). 2008.
[15] Pang B., L. Lee. A Sentimental Education: Sentiment Analysis using Subjectivity Summarization based on Minimum Cuts[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-04). 2004.
[16] Riloff E., S. Patwardhan, J. Wiebe. Feature Subsumption for Opinion Analysis[C]//Proceedings of the Conference on Empirical Methods in Natural Language Processing (EMNLP-06). 2006.
[17] McDonald R., K. Hannan, T. Neylon, et al. Structured Models for Fine-to-coarse Sentiment Analysis[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-07). 2007.
[18] Zhou S., Q. Chen, X. Wang. Active Deep Networks for Semi-Supervised Sentiment Classification[C]//Proceedings of the 23rd International Conference on Computational Linguistics(COLING-10). 2010.
[19] Sindhwani V., P. Melville. Document-Word Co-regularization for Semi-supervised Sentiment Analysis. [C]//Proceedings of 8th IEEE International Conference on Data Mining (ICDM-08). 2008.
[20] Li T., Y. Zhang, V. Sindhwani. A Non-negative Matrix Tri-factorization Approach to Sentiment Classification with Lexical Prior Knowledge[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-09). 2009.
[21] Ho T. The Random Subspace Method for Constructing Decision Forests[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1998, 20(8), 832-844.
[22] Blitzer J., M. Dredze, F. Pereira. Biographies, Bollywood, Boom-boxes and Blenders: Domain Adaptation for Sentiment Classification[C]//Proceedings of Annual Meeting on Association for Computational Linguistics (ACL-07). 2007.