廖 健, 王素格,2, 李德玉,2, 王 杰
(1.山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院 山西 太原030006; 2. 山西大學(xué) 計(jì)算智能與中文信息處理教育部重點(diǎn)實(shí)驗(yàn)室 山西 太原030006)
基于增強(qiáng)字向量的微博觀點(diǎn)句情感極性分類(lèi)方法
廖 健1, 王素格1,2, 李德玉1,2, 王 杰1
(1.山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院 山西 太原030006; 2. 山西大學(xué) 計(jì)算智能與中文信息處理教育部重點(diǎn)實(shí)驗(yàn)室 山西 太原030006)
針對(duì)微博觀點(diǎn)句識(shí)別及情感極性分類(lèi)任務(wù),提出了基于增強(qiáng)字向量的微博觀點(diǎn)句情感極性分類(lèi)方法.使用單字作為句子表示的基本單元,同時(shí)在單字中嵌入了該字所在的詞信息以及該詞的詞性信息,以此訓(xùn)練得到字向量替代傳統(tǒng)的詞向量融合的句子表示方法.使用基于K-means的方法對(duì)向量化的句子進(jìn)行情感判別,僅需要對(duì)文本進(jìn)行分詞和詞性標(biāo)注,無(wú)需額外的語(yǔ)言學(xué)資源.在COAE2015任務(wù)2的微博句子數(shù)據(jù)集上進(jìn)行測(cè)試,取得了較好的結(jié)果.
增強(qiáng)字向量; 觀點(diǎn)句分類(lèi); 深度學(xué)習(xí)
以微博為代表的社交網(wǎng)絡(luò)的興起使得每一個(gè)網(wǎng)民都能自由地表達(dá)自身的觀點(diǎn)、態(tài)度、情感等主觀性信息.截至2015年12月,我國(guó)微博用戶(hù)規(guī)模為2.04億.分析和監(jiān)測(cè)微博所包含的情感信息,能夠了解廣大網(wǎng)民對(duì)某產(chǎn)品、人物或者事件的關(guān)注程度和情感變化,為決策者提供實(shí)時(shí)科學(xué)的理論依據(jù),具有巨大的商業(yè)價(jià)值和社會(huì)價(jià)值,也給自然語(yǔ)言處理(NLP)帶來(lái)了新的機(jī)遇和挑戰(zhàn).
微博觀點(diǎn)句情感分析的主要目的就是從用戶(hù)發(fā)布的微博中識(shí)別含有觀點(diǎn)的句子,并判斷其情感極性.目前研究主要集中于基于人工特征工程和基于機(jī)器學(xué)習(xí)的方法.基于人工特征工程的方法通常采用情感詞典和規(guī)則相結(jié)合,通過(guò)在已有的詞典或知識(shí)庫(kù)資源進(jìn)行一定的擴(kuò)展生成情感傾向詞典,或是預(yù)先建立一個(gè)傾向性語(yǔ)義規(guī)則集,進(jìn)而實(shí)現(xiàn)對(duì)文本的情感識(shí)別.例如,文獻(xiàn)[1]提出一種整合語(yǔ)言學(xué)現(xiàn)象、常識(shí)推理的概念層的情感分析方法.基于機(jī)器學(xué)習(xí)的方法通常是將情感分析問(wèn)題看作是一個(gè)分類(lèi)問(wèn)題,標(biāo)注好的訓(xùn)練集通過(guò)機(jī)器學(xué)習(xí)算法,以情感詞、主題相關(guān)特征等作為分類(lèi)特征訓(xùn)練得到分類(lèi)模型,用于以后的情感分類(lèi).例如,文獻(xiàn)[2]在Twitter數(shù)據(jù)集上實(shí)現(xiàn)了基于樸素貝葉斯、支持向量機(jī)和條件隨機(jī)場(chǎng)的情感分類(lèi)器,取得了良好的效果.
近年來(lái),深度學(xué)習(xí)成為NLP領(lǐng)域最熱門(mén)的研究之一.對(duì)于句子的表示學(xué)習(xí),主要有使用詞表示的組合和直接學(xué)習(xí)句子的分布兩種方法.卷積神經(jīng)網(wǎng)絡(luò)(CNN)[3-4]是一種有效的對(duì)句子進(jìn)行建模的方法,其核心就是對(duì)語(yǔ)言片段中出現(xiàn)的詞進(jìn)行窗口平滑,利用平滑后句子向量進(jìn)行后續(xù)的NLP相關(guān)研究.文獻(xiàn)[5]使用遞歸循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)訓(xùn)練句子表示,RNN剔除了窗口限制,可以充分利用所有上文信息來(lái)預(yù)測(cè)下一個(gè)詞.文獻(xiàn)[6]通過(guò)將句子ID號(hào)作為一個(gè)輸入單元訓(xùn)練,以學(xué)習(xí)到的向量作為該句子的表示.文獻(xiàn)[7]使用深度置信網(wǎng),從自動(dòng)標(biāo)注的語(yǔ)料集中學(xué)習(xí)句向量作為獨(dú)立的補(bǔ)充特征,可用于微博情緒分類(lèi).針對(duì)傳統(tǒng)以詞為基本單元的方法在對(duì)語(yǔ)言表達(dá)建模上存在精度刻畫(huà)不足的問(wèn)題,文獻(xiàn)[8-9]在英文字符級(jí)粒度上進(jìn)行語(yǔ)言建模,這類(lèi)工作使用字符級(jí)的n-gram,并使用CNN學(xué)習(xí)其特征表示,提高了在語(yǔ)音識(shí)別和文本分類(lèi)上的效果.文獻(xiàn)[10]在詞向量的基礎(chǔ)上,聯(lián)合學(xué)習(xí)了漢字向量,并設(shè)計(jì)了基于位置和基于聚類(lèi)的字向量學(xué)習(xí)方法,將字向量作為詞向量的額外補(bǔ)充信息.這類(lèi)方法仍是以詞作為主要建模對(duì)象,字符表示僅僅作為詞的補(bǔ)充信息.
本文提出了基于增強(qiáng)字向量的微博觀點(diǎn)句情感極性分類(lèi)方法,使用單字作為句子表示的基本單元,同時(shí)在單字中嵌入了該字所在的詞信息以及該詞的詞性信息,以此訓(xùn)練得到字向量替代傳統(tǒng)的詞向量融合的句子表示方法.利用給定的樣例集信息,使用K-means聚類(lèi)對(duì)向量化的句子進(jìn)行情感判定.該方法僅需要對(duì)文本進(jìn)行分詞和詞性標(biāo)注,無(wú)需額外的語(yǔ)言學(xué)資源.
使用合適的句子表示方法是句子級(jí)情感分析的核心.傳統(tǒng)基于詞袋模型或詞向量的方法以詞為基本單元進(jìn)行建模,忽略了更細(xì)粒度的字之間含有的語(yǔ)言信息.本文提出了基于增強(qiáng)字向量(enhanced-character vector, ECV)的微博觀點(diǎn)句情感極性分類(lèi)方法.
1.1 增強(qiáng)字向量訓(xùn)練
借助Google的Word2vec開(kāi)源詞向量工具,選用基于霍夫曼編碼的Skip-gram神經(jīng)網(wǎng)絡(luò)模型[11-12]為基礎(chǔ)進(jìn)行改造,提出了基于ECV的訓(xùn)練框架,該框架與Skip-gram模型的關(guān)系如圖1所示.
給定一個(gè)詞wi,Skip-gram模型首先將其映射成一個(gè)連續(xù)向量ei,使用該映射來(lái)預(yù)測(cè)詞wi的上下文窗口內(nèi)的詞語(yǔ)wi-n,…,wi-1, wi+1,…, wi+n,2n為窗口大小.優(yōu)化目標(biāo)是最大化如下的對(duì)數(shù)似然:
(1)
其中:
(2)
(3)
式中:σ為Sigmoid函數(shù).在Word2vec的代碼實(shí)現(xiàn)中,由輸入向量v(wi)→e(wi)的映射采用的是恒等映射,即v(wi)=e(wi),因此(2)式可以等價(jià)為
(4)
為使該模型適應(yīng)以字向量為基本單元的需要,文本的輸入為三元組ti=〈ci,wi,posi〉, 映射函數(shù)設(shè)置為
e(ti)=concatenate(Vci,Vwi,Vposi).
(5)
將式(3)、(5)代入式(2)并展開(kāi),得
整個(gè)模型的對(duì)數(shù)似然函數(shù)為
(7)
使用梯度上升法計(jì)算該對(duì)數(shù)似然的優(yōu)化,有
(8)
因此,參數(shù)更新公式為
(9)
(10)
因?yàn)檩斎胂蛄咳Mti分別由字向量、詞向量和詞性向量拼接而成,每次迭代完成后,對(duì)于得到的上下文向量V(u)也是ti的上下文三元組向量.可以通過(guò)將V(u)分別與一個(gè)對(duì)應(yīng)位置為1,其余為0的0-1向量作內(nèi)積截取得到ti中的字、詞、詞性向量表示.而在實(shí)際實(shí)驗(yàn)中,因?yàn)橹恍枋褂萌Mti拼接后的向量表示信息,同時(shí)也為了加快模型的訓(xùn)練速度,在初始對(duì)每個(gè)三元組單元ti隨機(jī)賦值后,在模型迭代過(guò)程中將直接使用三元組ti的向量作為下一次迭代的輸入,不再進(jìn)行拼接與截取操作.
1.2 基于boostrapping的主題詞擴(kuò)展算法
由于微博文本具有開(kāi)放性,利用給定小規(guī)模樣例中的對(duì)象詞作為種子集,使用bootstrapping算法擴(kuò)展主題詞集合,以濾除主題無(wú)關(guān)的句子.擴(kuò)展算法(算法1)如下:
Input: 初始種子主題詞集Sseed,全語(yǔ)料詞集Sall;
Output: 擴(kuò)展主題詞集Swt.
1: Initialize Swt=Sseed
2: for each word wiin Sall
3: for each word wtjin Swt
4: if wi∈k-NN(wtj) and sim(wtj,wi)≥α
5: Swt=Swt∪{wi}
6: Sall=Sall/{wi}
7: end if
8: end for
9: end for
10:repeat steps 2~9 until Swtno longer change
算法1中k-NN(wtj) 為與種子詞wtj最相似的k詞集合,sim(wtj,wi)表示候選詞wi與種子詞wtj之間的相似度,α為給定閾值參數(shù).經(jīng)過(guò)擴(kuò)展的主題詞詞典可以有效過(guò)濾掉部分主題無(wú)關(guān)句子,同時(shí)可以為觀點(diǎn)句表示提供額外的主題信息.
1.3 觀點(diǎn)句表示
經(jīng)過(guò)1.1訓(xùn)練得到的字向量,需要對(duì)其進(jìn)行組合以表示句子向量.同時(shí),為了加強(qiáng)主題詞的權(quán)重,將主題詞的詞向量拼接到句向量中,句子的向量表示為
(11)
式中:{ck}、{wtk}分別為句子Sk中包含的字集和主題詞集.
1.4 基于K-means的觀點(diǎn)句極性判別算法
使用K-means聚類(lèi)方法判定觀點(diǎn)句的情感極性,用給定小規(guī)模樣例中的句子情感標(biāo)簽提供初始的情感信息,分別以各情感標(biāo)簽下句子向量的均值作為初始聚類(lèi)中心.基于K-means的觀點(diǎn)句極性判別算法(算法2)如下:
Input: 初始樣例句子向量集 Ssample, 待分類(lèi)句子向量集S;
2: for each sentence Siin S
3:if max(sim(VSj,VCi))≥β
5:{LLabel(Sj)}={LLabel(Sj)}∪{Sj}
6: S=S/{Sj}
7: end if
8: end for
算法2中Ssample-i表示樣例句子集中類(lèi)別標(biāo)簽為i的句子,AVG(·)為取向量均值函數(shù),K為類(lèi)別標(biāo)簽個(gè)數(shù),β為待測(cè)閾值參數(shù).
2.1 數(shù)據(jù)集
使用COAE2015任務(wù)2提供的微博句子語(yǔ)料[13]進(jìn)行實(shí)驗(yàn).該任務(wù)是給定較大規(guī)模的微博句子集,要求參賽系統(tǒng)識(shí)別其中的觀點(diǎn)句并判定觀點(diǎn)極性.語(yǔ)料規(guī)模共計(jì)文本50 000篇,133 202條句子,涉及手機(jī)、美食、汽車(chē)、新聞、娛樂(lè)等領(lǐng)域.
2.2 實(shí)驗(yàn)與結(jié)果分析
根據(jù)算法1和算法2可知,α和β取值越大,則識(shí)別出的觀點(diǎn)句精確率越高,反之召回率越高.經(jīng)過(guò)多次實(shí)驗(yàn)綜合考慮,將參數(shù)設(shè)為α=0.5,β=0.4.具體過(guò)程如下:
1) 使用ICTCLAS對(duì)所有句子進(jìn)行基礎(chǔ)分詞.
2) 以給定樣例中的對(duì)象詞為種子集,使用Word2vec學(xué)習(xí)得到種子集和待測(cè)數(shù)據(jù)中詞語(yǔ)的詞向量.為使訓(xùn)練的詞向量更加精確,在COAE2015任務(wù)2數(shù)據(jù)集的基礎(chǔ)上,額外加入了COAE2014任務(wù)3的1 000萬(wàn)條無(wú)標(biāo)簽微博數(shù)據(jù),合并進(jìn)行學(xué)習(xí).得到詞語(yǔ)的詞向量后,根據(jù)1.2節(jié)擴(kuò)展主題詞集Swt.
3) 利用Swt對(duì)任務(wù)數(shù)據(jù)集進(jìn)行篩選,得到63 716句.
4) 利用1.1節(jié)在全部任務(wù)數(shù)據(jù)上使用Word2vec學(xué)習(xí)增強(qiáng)字向量.
5) 利用1.3節(jié)得到3)中句子的向量表示.
6) 使用1.4節(jié)的算法對(duì)句子進(jìn)行情感極性判定.
本文方法參與了COAE2015任務(wù)2評(píng)測(cè),實(shí)驗(yàn)結(jié)果如表1所示.可以看出,本文方法在限定資源使用的提交答案中處于中上水平,其中宏平均F1值在全部18個(gè)run中排名第4.分析結(jié)果發(fā)現(xiàn):① 本文結(jié)果中召回率與最好值差距較大.原因是本次評(píng)測(cè)不限制各單位提交的結(jié)果數(shù),提交結(jié)果共計(jì)6萬(wàn)余條,相對(duì)其他單位提交結(jié)果較少,一定程度上使得本文召回率相對(duì)較低.② 對(duì)于混合情感極性的結(jié)果相對(duì)較差.一方面說(shuō)明基于字向量方法對(duì)于混合情感類(lèi)的句子相對(duì)欠缺,另一方面由于給定樣例中混合句子比例過(guò)少(占全部樣例的14%),使得初始聚類(lèi)中心并不準(zhǔn)確.③ 準(zhǔn)確率與最好值相比還有一些不足.主要是因?yàn)楸疚氖且詥巫譃榛A(chǔ)單元,相比詞匯級(jí)粒度其多義性問(wèn)題更加嚴(yán)重.在后續(xù)的實(shí)驗(yàn)中嘗試加入了單字所屬詞的情感極性特征,然而其分類(lèi)效果不升反降,是由于在單字組詞過(guò)程中,其有較高概率同時(shí)出現(xiàn)在褒義詞和貶義詞中,使得加入的情感特征對(duì)于單字表示產(chǎn)生了負(fù)面影響,特別是對(duì)混合情感的判定尤為明顯.此外,在實(shí)驗(yàn)中發(fā)現(xiàn),在全部句子中顯示含有限定情感詞典中的情感詞的句子只有約1萬(wàn)句,大部分句子無(wú)法通過(guò)情感詞典獲得有效的情感信息.
表1 實(shí)驗(yàn)結(jié)果
提出了基于增強(qiáng)字向量的微博觀點(diǎn)句情感極性分類(lèi)方法,使用單字作為句子表示的基本單元,同時(shí)在單字中嵌入了該字所在的詞信息以及該詞的詞性信息,以此訓(xùn)練得到字向量替代傳統(tǒng)的詞向量融合的句子表示方法.利用給定的樣例集信息,使用K-means聚類(lèi)對(duì)向量化的句子進(jìn)行情感判定.在COAE2015任務(wù)2數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,基于字向量的觀點(diǎn)句情感極性分類(lèi)具有一定的可行性.
在未來(lái)的工作中,針對(duì)性地解決單字的多義性問(wèn)題,將歸屬于不同語(yǔ)義、情感的單字分別學(xué)習(xí)其表示,而不僅僅以所屬詞匯進(jìn)行區(qū)分,以達(dá)到更精準(zhǔn)的表示效果.同時(shí),任務(wù)數(shù)據(jù)為開(kāi)放領(lǐng)域,而本文方法利用了給定的小規(guī)模樣例數(shù)據(jù)集提供初始主題種子和情感信息,樣例信息的不完備對(duì)最終結(jié)果有一定影響.此外,本次評(píng)測(cè)數(shù)據(jù)是以篇章-句子二級(jí)粒度的形式,在今后的工作中還需要充分考慮篇章內(nèi)的上下文信息,進(jìn)一步完善對(duì)于混合情感句的識(shí)別方法.
[1] PORIA S, CAMBRIA E, WINTERSTEIN G, et al. Sentic patterns: dependency-based rules for concept-level sentiment analysis[J]. Knowledge-based systems, 2014, 69(1): 45-63.
[2] PAK A, PAROUBEK P. Twitter as a corpus for sentiment analysis and opinion mining[C]// Proceedings of the International Conference on Language Resources and Evaluation. Stroudsburg,2010: 1320-1326.
[3] BLUNSOM P, GREFENSTETTE E, KALCHBRENNER N. A convolutional neural network for modelling sentences[C]// Proceedings of 52nd Annual Meeting of the Association for Computational Linguistics. Stroudsburg,2014:655-665.
[4] KIM Y. Convolutional neural networks for sentence classification[C]// Proceedings of the Conference on Empirical Methods in Natural Language Processing. Stroudsburg, 2014:1746-1751.
[5] MIKOLOV T, KARAFIT M, BURGET L, et al. Recurrent neural network based language model[C]// Proceedings of 11th Annual Conference of the International Speech Communication Association.Chiba, 2010: 1045-1048.
[6] LE Q V, MIKOLOV T. Distributed representations of sentences and documents[C]// Proceedings of the 31st International Conference on Machine Learning. New York, 2014: 1188-1196.
[7] TANG D, QIN B, LIU T, et al. Learning sentence representation for emotion classification on microblogs[C]// Proceedings of Natural Language Processing and Chinese Computing. Berlin, 2013: 212-223.
[8] SANTOS C N D, ZADROZNY B. Learning character-level representations for part-of-speech tagging[C]// Proceedings of the 31st International Conference on Machine Learning. New York, 2014: 1818-1826.
[9] ZHANG X, ZHAO J, LECUN Y. Character-level convolutional networks for text classification[C]// Proceedings of the Advances in Neural Information Processing Systems. Montreal,2015: 649-657.
[10]CHEN X X, XU L, LIU Z Y,et al. Joint learning of character and word embeddings[C]// Proceedings of International Joint Conference on Artificial Intelligence. San Francisco, 2015:1236-1242.
[11]MIKOLOV T, CHEN K, CORRADO G, et al. Efficient estimation of word representations in vector space[J].Computer science,2013:1-12.
[12]MIKOLOV T, SUTSKEVER I, CHEN K, et al. Distributed representations of words and phrases and their compositionality[C]// Proceedings of the Advances in Neural Information Processing Systems. South Lake Tahoe,2013: 3111-3119.
[13]JIAN L, YANG L, SUGE W. The constitution of a fine-grained opinion annotated corpus on Weibo[C]//15th China National Conference on Computational Linguistics.Yantai, 2016: 227-240.
MinistryofEducation,ShanxiUniversity,Taiyuan030006,China)
(責(zé)任編輯:孔 薇)
Sentiment Classification of Weibo Opinion Sentences Based on Enhanced-character Vector
LIAO Jian1, WANG Suge1,2, LI Deyu1,2, WANG Jie1
(1.SchoolofComputerandInformationTechnology,ShanxiUniversity,Taiyuan030006,China; 2.KeyLaboratoryofComputationalIntelligenceandChineseInformationProcessingof
A method based on enhanced-character vector was proposed for the identification and classification of Weibo opinion sentences. The characters, which embedded the corresponding information of words and part-of-speech, were used as the basic unit for sentence representation instead of words. Then a method based on K-means was adopted for sentence polarity classification. The proposed method was almost free of linguistic resources (except POS tags), and required no elaborated linguistic rules. Experiment on the data of COAE2015 task 2 showed that this method achieved good results.
enhanced-character vector; opinion sentence classification; deep learning
2016-11-24
國(guó)家自然科學(xué)基金項(xiàng)目(61632011,61573231,61672331,61432011);山西省科技基礎(chǔ)條件平臺(tái)計(jì)劃項(xiàng)目(2015091001-0102);山西省回國(guó)留學(xué)人員科研項(xiàng)目(2013-014).
廖健(1990—),男,湖北鄂州人,博士研究生,主要從事細(xì)粒度情感分析研究,E-mail:liaojian_iter@163.com;通訊作者:王素格(1964—),女,河北定州人,教授,主要從事自然語(yǔ)言處理研究,E-mail:wsg@sxu.edu.cn.
TP391
A
1671-6841(2017)01-0039-06
10.13705/j.issn.1671-6841.2016327