郭放
摘要:本文主要研究針對(duì)手機(jī)網(wǎng)絡(luò)評(píng)論的意見挖掘技術(shù)。為實(shí)現(xiàn)手機(jī)網(wǎng)絡(luò)評(píng)論的主題提取,本文首先構(gòu)建了手機(jī)領(lǐng)域本體;在領(lǐng)域本體的基礎(chǔ)上,選取多個(gè)TF-IDF值作為閾值,每個(gè)閾值可構(gòu)成一個(gè)簡單的分類器,利用集成的思想將訓(xùn)練得到的單個(gè)分類器組合為最終的分類器,在此過程中獲得文本的主題。隨后對(duì)主題與手機(jī)相關(guān)的文本進(jìn)行情感分析,利用FP-growth頻繁項(xiàng)集發(fā)現(xiàn)算法,創(chuàng)建一個(gè)手機(jī)領(lǐng)域相關(guān)的情感詞典,最終計(jì)算整體的好評(píng)率和差評(píng)率。
關(guān)鍵詞:意見挖掘;領(lǐng)域本體;主題提??;情感分析
中圖分類號(hào):TP391.1 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2018)07-0111-04
1 綜述
網(wǎng)絡(luò)評(píng)論文本是消費(fèi)者對(duì)相關(guān)產(chǎn)品的評(píng)價(jià),包含正面或負(fù)面的情感傾向,反映出商品的外觀、功能性價(jià)比等信息。但這些網(wǎng)絡(luò)評(píng)論數(shù)量龐大、內(nèi)容復(fù)雜、結(jié)構(gòu)隨意,需要對(duì)它們進(jìn)行整理并分類,以滿足不同群體和商家的需求。面對(duì)網(wǎng)絡(luò)上海量、復(fù)雜的評(píng)論文本,采用人工查詢和分類的方法顯然不符合實(shí)際,人們希望能有一種快速高效的方法對(duì)這些信息進(jìn)行分類統(tǒng)計(jì)。
意見挖掘(Opinion mining)技術(shù)的出現(xiàn)滿足了這一要求[1]。根據(jù)Soo-Min Kim和Eduard Hovy提出的意見的定義,將意見描述為四元組:[Topic,Holder,Claim,Sentiment][2]。其中Topic表示意見評(píng)論的對(duì)象;Holder表示意見的發(fā)表者;Claim表示意見的內(nèi)容;Sentiment表示意見的情感傾向。意見挖掘的過程就是識(shí)別網(wǎng)絡(luò)評(píng)論文本中以上四部分內(nèi)容,分析意見主觀傾向性[3],過程可概括如下:(1)抓取網(wǎng)絡(luò)上的產(chǎn)品評(píng)論文本,輸入分詞器進(jìn)行分詞,并過濾掉文本中的停用詞;(2)對(duì)分詞后的網(wǎng)絡(luò)評(píng)論文本進(jìn)行主題提取,方法主要包括基于語義分析的方法、基于統(tǒng)計(jì)的方法,以及基于領(lǐng)域本體的方法;(3)識(shí)別出評(píng)論文本中帶有情感傾向的主觀性表述,過濾無關(guān)內(nèi)容;(4)對(duì)網(wǎng)絡(luò)評(píng)論文本進(jìn)行情感分析。本文主要對(duì)主題提取和情感分析兩個(gè)方面進(jìn)行了改進(jìn)。以下進(jìn)行詳細(xì)說明。
2 面向手機(jī)網(wǎng)絡(luò)評(píng)論的主題提取
2.1 方法概述
本文意見挖掘的對(duì)象,是手機(jī)領(lǐng)域的用戶評(píng)論文本。在這些評(píng)論文本中,存在大量的手機(jī)領(lǐng)域的相關(guān)術(shù)語或概念描述,本文利用領(lǐng)域本體的概念構(gòu)建針對(duì)手機(jī)領(lǐng)域的本體樹,在領(lǐng)域本體的基礎(chǔ)上,利用TF-IDF原理計(jì)算文本樣本集中各樣本的本體相關(guān)度。選取多個(gè)TF-IDF值作為閾值,每個(gè)閾值可構(gòu)成一個(gè)簡單的分類器,通過閾值將樣本集合中文本定義為兩類:判定大于閾值的為主題相關(guān)文本,小于閾值的為非相關(guān)文本,根據(jù)分類結(jié)果的錯(cuò)誤率確定每個(gè)分類器的權(quán)重,最后將訓(xùn)練得到的單個(gè)分類器組合為最終的分類器,同時(shí)在此過程中獲得文本的主題。
2.2 手機(jī)領(lǐng)域本體構(gòu)建
在計(jì)算機(jī)科學(xué)與信息科學(xué)領(lǐng)域中,本體是指一種形式化的,對(duì)于共享概念體系的明確而又詳細(xì)的說明[4]。常見的本體構(gòu)成要素包括:個(gè)體、類、屬性及其關(guān)系。個(gè)體或稱為實(shí)體,指基礎(chǔ)的或 “底層的”對(duì)象;類,指集合、概念、對(duì)象類型或者說事物的種類;屬性,指對(duì)象和類可能具有的屬性、特征、特性、特點(diǎn)和參數(shù);關(guān)系,指類與個(gè)體之間的彼此關(guān)聯(lián)所可能具有的方式。常用的構(gòu)建方法有七步法、骨架法、、、法等。
本文基于上述本體一般結(jié)構(gòu)以及構(gòu)建方法,人工構(gòu)建手機(jī)領(lǐng)域本體的術(shù)語集合或稱為詞表。手機(jī)領(lǐng)域本體部分如圖1所示。
2.3 TF-IDF集成算法設(shè)計(jì)
是一種統(tǒng)計(jì)方法,用以評(píng)估詞條對(duì)于文本集合中某篇文本的重要性。詞條的重要性隨著它在文本中出現(xiàn)的頻率(Term Frequency)的增大而升高,隨著它在語料庫中出現(xiàn)頻率(Inverse Document Frequency)的增大而降低。
根據(jù)上文中給定的本體概念集合,可以分為四個(gè)關(guān)鍵詞:“三星”“電池”“的”“待機(jī)時(shí)間”。假如某篇網(wǎng)絡(luò)評(píng)論文本d的總詞數(shù)為50個(gè),其中“三星”出現(xiàn)1次,“電池”出現(xiàn)2次,“的”出現(xiàn)10次,“待機(jī)時(shí)間”出現(xiàn)2次,那么它們的詞頻分別為0.02,0.04,0.2,0.04。那么指定短語“電池的待機(jī)時(shí)間”在文本d中的詞頻就是0.3(四個(gè)詞的詞頻之和)。在四個(gè)詞中,“的”所含的信息量最低,但詞頻最高,所以在實(shí)際應(yīng)用中應(yīng)當(dāng)忽略這類停用詞,過濾干擾后指定短語的詞頻為0.1。而在剩余的三個(gè)詞中,“三星”與本文所涉及的手機(jī)領(lǐng)域相關(guān)性最大,因此在判斷文本主題時(shí),應(yīng)當(dāng)給每個(gè)詞賦予權(quán)重信息,權(quán)重越大,表示相關(guān)性越大。在相關(guān)研究中,使用最多的權(quán)重是逆向文本頻率IDF。
逆向文件頻率IDF(Inverse Document Frequency)計(jì)算公式為,其中,為文檔總數(shù),為含有詞語t的文檔數(shù)目。例如,設(shè)集合中文本總數(shù)為=100,手機(jī)領(lǐng)域品牌名稱“三星”在其中10個(gè)網(wǎng)頁中出現(xiàn)過,即=10,則它的權(quán)重為 =log10=1,又假設(shè)“電池”在30個(gè)網(wǎng)頁中出現(xiàn)過,“待機(jī)時(shí)間”在15個(gè)網(wǎng)頁中出現(xiàn),它們的權(quán)重分別為和;對(duì)于停用詞“的”,因?yàn)槊總€(gè)文本中都會(huì)出現(xiàn),所以其權(quán)重為。即詞語“的”與指定文本的主題無關(guān),詞語“三星”對(duì)指定文本的重要性最高。
結(jié)合詞頻TF和文檔頻率IDF,短語“三星電池的待機(jī)時(shí)間”重要性度量公式為:
本文中算法過程如下:
設(shè)在準(zhǔn)備階段爬取到的文本集合大小為M,上一小節(jié)中構(gòu)建的本體概念集合為N,
(1)計(jì)算本體概念集合中每個(gè)詞條(n=1,2,···,N)在文本集合中的TF*IDF值,并存儲(chǔ);(2)順序讀取文本集某條評(píng)論文本(m=1,2,···,M)中所有詞,判斷是否包含本體概念集合中的詞條;(3)若包含,則計(jì)算的在文本中的詞頻TF,并計(jì)算TF*IDF值;(4)讀取結(jié)束時(shí)計(jì)算與本文構(gòu)建的手機(jī)領(lǐng)域本體的相關(guān)性:
在進(jìn)行以上運(yùn)算時(shí),應(yīng)當(dāng)考慮三個(gè)方面:首先,對(duì)于評(píng)論文本,標(biāo)題位置的詞語所占權(quán)重理論上應(yīng)大于正文的權(quán)重,可在原有權(quán)重的基礎(chǔ)上,對(duì)標(biāo)題權(quán)重乘以1.5,即標(biāo)題權(quán)重為正文權(quán)重的1.5倍;其次,手機(jī)產(chǎn)品名稱或手機(jī)系列名稱能夠作為文本的確定主題,而手機(jī)組件或產(chǎn)品屬性,只有在產(chǎn)品或系列名稱出現(xiàn)的條件下,才能夠作為確定的主題,如上述例7所描述。因此,手機(jī)品牌或系列名稱的權(quán)重應(yīng)當(dāng)是其組件或?qū)傩缘?.5倍;最后,公式(3.2)的計(jì)算結(jié)果表明了文本與本體概念集合的相關(guān)性,但不能明確表示是否相關(guān),一般的方法是確定一個(gè)閾值x,當(dāng)公式(3.2)的結(jié)果大于或等于閾值時(shí),判定文本與給定的領(lǐng)域本體相關(guān),若小于閾值,則無關(guān)。這種方式的局限性表現(xiàn)在,相關(guān)性得分小于閾值的文本,也有可能是需提取的與領(lǐng)域相關(guān)的評(píng)論文本??梢赃x取多個(gè)閾值,每個(gè)閾值可構(gòu)成一個(gè)簡單的分類器:判定大于閾值的為主題相關(guān)文本,小于閾值的為非相關(guān)文本,根據(jù)分類結(jié)果的錯(cuò)誤率確定每個(gè)分類器的權(quán)重,最后將訓(xùn)練得到的單個(gè)分類器組合為最終的分類器。
以下為具體算法:
本文采用分類器集成算法的思想,給定已分類的文本樣本集,計(jì)算每個(gè)文本的TF-IDF值,給定閾值的初始值為,設(shè)樣本集合大小為M,每個(gè)樣本權(quán)重D的初始值為[5],計(jì)算過程如下(接上文第(4)步):(5)計(jì)算樣本集中文本的TF-IDF值,按照降序排列后存儲(chǔ)在數(shù)組中,設(shè)初始閾值=;(6)對(duì)樣本集中的文本進(jìn)行分類:閾值,則屬于主題相關(guān)文本集合(+1類);閾值,則屬于非主題相關(guān)文本集合(-1類);(7)驗(yàn)證分類結(jié)果,并計(jì)算錯(cuò)誤率:,當(dāng)=0時(shí)可直接退出計(jì)算[6];(8)根據(jù)錯(cuò)誤率為當(dāng)前分類器重新分配權(quán)重:[5],錯(cuò)誤率越大,分類器的權(quán)重越小,可以理解為性能越差的分類器,話語權(quán)越?。唬?)更新每個(gè)樣本的權(quán)重D:對(duì)分類正確的樣本降低權(quán)重:;對(duì)未正確分類的樣本增加其權(quán)重:,以此改變數(shù)據(jù)分布[5];(10)依次取得數(shù)組中的元素作為閾值,計(jì)算分類錯(cuò)誤率,如果當(dāng)前錯(cuò)誤率較小,則存儲(chǔ)此次運(yùn)算結(jié)果并重復(fù)(8)(9);
最后,當(dāng)錯(cuò)誤率小于0或循環(huán)結(jié)束后得到n個(gè)分類器,按權(quán)重疊加獲得最終結(jié)果:,其中,為符號(hào)函數(shù),即;+1或-1,+1表示屬于主題相關(guān)文本集合,-1表示屬于非主題相關(guān)文本集合;為最終結(jié)果。
3 面向手機(jī)網(wǎng)絡(luò)評(píng)論的情感分析
情感分析(Sentiment analysis),又稱傾向性分析,它是對(duì)帶有情感色彩的主觀性文本進(jìn)行分析、處理、歸納和推理的過程[7],如從評(píng)論文本中分析用戶對(duì)“手機(jī)”的“機(jī)身厚度、像素、待機(jī)時(shí)間、屏幕大小、價(jià)格、運(yùn)行速度”等屬性的情感傾向。意見挖掘中情感分析任務(wù)的主要目的就是識(shí)別網(wǎng)絡(luò)評(píng)論文本的情感傾向。它有三個(gè)方面的要求:(1)判斷評(píng)論文本的主客觀性;(2)判斷篇章、句子、詞語的情感極性;(3)分析情感傾向性強(qiáng)弱。本文主要討論情感極性的判斷,提出了基于領(lǐng)域本體情感詞典情感極性分類算法。
頻繁項(xiàng)集是指那些通常在一起出現(xiàn)的實(shí)物集合[8],可解釋為經(jīng)常在手機(jī)領(lǐng)域評(píng)論文本集合M中出現(xiàn)的詞典N中詞語的集合。頻繁項(xiàng)集可以用支持度來解釋:支持度定義為查找項(xiàng)在數(shù)據(jù)集所有集合中所占比例,如在10條記錄中,有2條包含{手機(jī),耐用},則{手機(jī),耐用}的支持度為1/5。在實(shí)際操作中,要找到大于預(yù)設(shè)支持度(假設(shè)為0.5)的所有項(xiàng)集,需列舉出事物所有的組合,然后對(duì)所有組合統(tǒng)計(jì)它們出現(xiàn)的次數(shù),當(dāng)事物集合很大時(shí),上述方法非常慢。于是學(xué)者們提出了Apriori原理,其主要思想可簡化為頻繁項(xiàng)集的子集也是頻繁的,反過來也是成立的,即某個(gè)項(xiàng)集是非頻繁的(如{手機(jī),和藹可親}),那么所有包含它的項(xiàng)集也是非頻繁的(如{電池,手機(jī),和藹可親})。Apriori原理在一定程度上縮減了頻繁項(xiàng)集查找時(shí)間,但在計(jì)算過程中每增加一個(gè)頻繁項(xiàng)都需遍歷整個(gè)數(shù)據(jù)集,于是研究人員提出算法:基于Apriori原理,將數(shù)據(jù)集合中的各個(gè)元素項(xiàng)按照支持度排序后,把每個(gè)支持度大于預(yù)設(shè)值的元素項(xiàng)插入到一棵以為根結(jié)點(diǎn)的樹中,稱為頻繁模式樹(Frequent Pattern Tree,),同時(shí)在每個(gè)結(jié)點(diǎn)處記錄該結(jié)點(diǎn)的支持度[9]。
本文基于領(lǐng)域情感詞典的情感極性分類算法具體過程如下:
(1)對(duì)第三章中獲得的手機(jī)領(lǐng)域相關(guān)文本進(jìn)行分詞處理,過濾掉停用詞和重復(fù)的詞,剩余的詞在計(jì)算機(jī)中以字典的形式存放。如表1所示。
(2)計(jì)算每個(gè)字典里詞語出現(xiàn)的頻率,去掉不滿足最小支持度的元素項(xiàng)。過濾后,對(duì)余下的詞語進(jìn)行重新排列,排列的基礎(chǔ)是詞語出現(xiàn)的頻率。如表2所示。
(3)構(gòu)建樹,抽取頻繁項(xiàng)集:定義一棵樹,和存儲(chǔ)單個(gè)頻繁項(xiàng)集的頭指針字典headList:def FPTree(numTimes,minSupport=2): headList={},樹的參數(shù)為詞語出現(xiàn)的次數(shù)numTimes和最小支持度minSupport;循環(huán)執(zhí)行headList[item]=headList.get(item,0) +numTimes[trans],錄入每一項(xiàng)出現(xiàn)的次數(shù);錄入完成后,刪除支持度小于最小支持度minSupport=2的元素:for k in headList.keys():if headList[k] (4)對(duì)每一個(gè)頻繁項(xiàng)集,根據(jù)其前綴路徑,以相同的方式構(gòu)建它的條件樹。如:構(gòu)建頻繁項(xiàng)集“像素”的條件樹:條件模式基:{手機(jī),電池,耐用}:1,{手機(jī)}:1最小支持度:2(手機(jī)),過濾掉:電池,耐用,重復(fù)第(3)步,構(gòu)建“像素”的條件樹。 (5)重復(fù)步驟(3)(4),直到所構(gòu)建的條件樹中沒有元素為止。 (6)獲得與手機(jī)領(lǐng)域本體概念集合中的名詞經(jīng)常一起出現(xiàn)的評(píng)價(jià)詞集合,通過與基礎(chǔ)情感詞典和評(píng)價(jià)詞典比較,判斷中詞語的極性。 實(shí)驗(yàn)中發(fā)現(xiàn)通過情感詞典或評(píng)價(jià)詞典對(duì)手機(jī)領(lǐng)域常用詞進(jìn)行極性分類,不能覆蓋全部的詞語,如“耗電”“少”在基礎(chǔ)詞典中沒有出現(xiàn),需要對(duì)分類后剩余的詞進(jìn)行人工標(biāo)注。其次,雖然在有了手機(jī)領(lǐng)域的情感詞典后,能夠較準(zhǔn)確的計(jì)算文本情感極性,但對(duì)于情感極性與上下文關(guān)聯(lián)度高的詞語,仍不能進(jìn)行準(zhǔn)確計(jì)算,例如把上文中兩個(gè)詞“耗電”和“少”歸為負(fù)面評(píng)價(jià)詞典,那么“手機(jī)耗電量少”這句話的情感得分為(-1)+(-1)=-2,顯然結(jié)果錯(cuò)誤。因此需要對(duì)算法一進(jìn)行改進(jìn):當(dāng)兩個(gè)情感詞連續(xù)出現(xiàn)時(shí)看做整體,將兩個(gè)詞的極性相乘后,判斷極性分類,再進(jìn)行同類累加,如:例句“手機(jī)耗電量少”的情感得分在改進(jìn)后為(-1)*(-1)=1,為正面評(píng)價(jià),是正確的。 4 總結(jié)和展望 4.1 工作總結(jié) 本文主要研究意見挖掘技術(shù)在手機(jī)網(wǎng)絡(luò)評(píng)論中的應(yīng)用,重點(diǎn)工作包括主題提取和情感分析。本文工作過程如下:(1)利用Python的urllib2模塊抓取淘寶、京東等電子商城的用戶評(píng)論以及各手機(jī)論壇的留言和帖子,以抓取到的文本為輸入,經(jīng)分詞器進(jìn)行分詞。(2)在分詞的基礎(chǔ)上,對(duì)手機(jī)網(wǎng)絡(luò)評(píng)論文本進(jìn)行主題提取。本文引入領(lǐng)域本體的概念,人工構(gòu)建手機(jī)領(lǐng)域本體,采用TF-IDF算法,計(jì)算每個(gè)評(píng)論樣本與手機(jī)領(lǐng)域本體的相關(guān)度,并選取多個(gè)文本的TF-IDF值作為閾值,每個(gè)閾值可構(gòu)成一個(gè)簡單的分類器,結(jié)合集成思想將訓(xùn)練得到的單個(gè)分類器組合為最終的分類器。(3)隨后對(duì)主題與手機(jī)相關(guān)的文本進(jìn)行情感分析,抽取出對(duì)產(chǎn)品手機(jī)整體、某組成部分或?qū)傩缘闹饔^評(píng)價(jià),并判斷感情極性。本文在已有的基礎(chǔ)評(píng)價(jià)詞典和情感極性詞典的基礎(chǔ)上,利用FP-growth頻繁項(xiàng)集發(fā)現(xiàn)算法,創(chuàng)建一個(gè)手機(jī)領(lǐng)域相關(guān)的情感詞典。在此手機(jī)領(lǐng)域情感詞典的基礎(chǔ)上,計(jì)算每個(gè)情感詞的情感極性得分,分別得出正面評(píng)價(jià)和負(fù)面評(píng)價(jià)的分值,最終計(jì)算整體的好評(píng)率和差評(píng)率。
通過實(shí)驗(yàn)統(tǒng)計(jì)得出,領(lǐng)域本體概念的引入能有效的提高主題提取的準(zhǔn)確率,為用戶提供更有價(jià)值的信息,同時(shí)采用TF-IDF與集成思想結(jié)合的方法能夠降低閾值選擇局限性所帶來的主題提取錯(cuò)誤概率,使得相關(guān)性得分較少的文本,正確提取主題的概率增大,提高了整體的正確率;采用基于領(lǐng)域本體情感詞典的情感極性分類算法,可以有效提高針對(duì)手機(jī)組件或?qū)傩缘脑u(píng)論文本的情感分類準(zhǔn)確率和查全率。
4.2 工作展望
綜合目前意見挖掘的研究及方法,本文工作可以在以下方面進(jìn)行改進(jìn):在主題提取任務(wù)中,其主要難點(diǎn)有:主題提取需處理各種不規(guī)范的、復(fù)雜的評(píng)論內(nèi)容,如網(wǎng)絡(luò)熱詞、中英文混用以及各種同義詞的使用,同時(shí)實(shí)體的命名方式也在不斷的改變中;其次,同一評(píng)論文本可能包含多個(gè)主題。因此有效的主題提取方法,不應(yīng)存在主題遺漏,對(duì)于針對(duì)不同產(chǎn)品或同一產(chǎn)品不同型號(hào)間比較的文本,進(jìn)行主題提取時(shí),應(yīng)注意比較特征詞,從而為同類產(chǎn)品不同品牌間對(duì)比或相同品牌不同系列間對(duì)比做準(zhǔn)備;另外,評(píng)論文本可能存在歧義性描述。因此,應(yīng)先定義相關(guān)領(lǐng)域的命名實(shí)體詞典,以便在主題提取前的文本分詞階段,能夠識(shí)別出漢字、英文、數(shù)字混合的命名實(shí)體,從而能有效提高主題提取的準(zhǔn)確度,如本文中引入領(lǐng)域本體的概念,人工構(gòu)造手機(jī)領(lǐng)域的本體概念集合,消除命名實(shí)體中的歧義性;最后,應(yīng)當(dāng)注意評(píng)論的實(shí)效性問題:抓取的文本源應(yīng)在不斷更新中,能緊隨特定產(chǎn)品更新?lián)Q代的頻率。
因此,處理好產(chǎn)品間的比較、評(píng)論實(shí)效性問題以及復(fù)雜多變的評(píng)論內(nèi)容陳述方式,對(duì)于改善主題提取的效果有很大幫助。
參考文獻(xiàn)
[1]姚天昉,程希文,徐飛玉,等.文本意見挖掘綜述[J].中文信息學(xué)報(bào),2008,22(3),72-80.
[2]Kim S, Hovy E. Determining the Sentiment of Opinions[A].In: Proceedings of COLING conference (COLING 2004)[C].Geneva, 2004:1376-1373.
[3]沈陵峰.網(wǎng)上產(chǎn)品評(píng)價(jià)的意見挖掘模型研究[D].中國科學(xué)技術(shù)大學(xué),2010.
[4]Gruber T R. A Translation Approach to Portable Ontology Specifications[J].Knowledge Acquisition,1993,5(2):199-221.
[5]Freund Y, Schapire R E. A decision-theoretic generalization of on-line learning and an application to boosting[D].1996:1-35.
[6]胡文靜.基于語義理解與PLSA的文本情感分類研究[D].天津:天津師范大學(xué),2012:1-59.
[7]樊興華,吳昊.意見領(lǐng)袖識(shí)別中的文本傾向性研究[J].計(jì)算機(jī)應(yīng)用研究,2013,(09):2613-2615+2636.
[8]李銳,李鵬,曲亞東,王斌,譯.Harrington P. Machine Learning[M].北京:人民郵電出版社,2013:200-239.
[9]楊云,羅艷霞.FP-Growth 算法的改進(jìn)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(7):1506-1509.