陳 杰,周梓豪,吳軍輝
(同濟(jì)大學(xué) 電子與信息工程學(xué)院,上海 201804)
隨著電子商務(wù)的普及,更多的消費(fèi)者通過(guò)在線平臺(tái)購(gòu)買(mǎi)農(nóng)產(chǎn)品,例如京東生鮮、天貓超市、每日優(yōu)鮮等,并持續(xù)地產(chǎn)生海量的評(píng)價(jià)信息。觀點(diǎn)挖掘作為NLP領(lǐng)域的分支,是典型的文本數(shù)據(jù)挖掘技術(shù),能夠發(fā)揮大數(shù)據(jù)的“4V”特征優(yōu)勢(shì)[1]。將該方法運(yùn)用于農(nóng)產(chǎn)品評(píng)價(jià)分析中,有助于消費(fèi)者了解產(chǎn)品畫(huà)像,經(jīng)銷商和電商平臺(tái)掌握消費(fèi)者的需求,監(jiān)管部門(mén)及時(shí)發(fā)現(xiàn)產(chǎn)品的問(wèn)題。
觀點(diǎn)挖掘被定義為判斷作者對(duì)特定實(shí)體發(fā)表意見(jiàn)的情感傾向的任務(wù)[2]。按照面向?qū)ο蟮牟煌梢詣澐譃榇至6群图?xì)粒度目標(biāo)[3]。先前的研究主要集中在對(duì)評(píng)價(jià)整體進(jìn)行粗粒度的分析[4]。細(xì)粒度任務(wù)是一個(gè)新興的方向,目前已被應(yīng)用在旅游景點(diǎn)、在線論壇等領(lǐng)域[5-6],其主要分為方面觀點(diǎn)目標(biāo)提取和目標(biāo)情感識(shí)別兩個(gè)子任務(wù)[7]。在模型的選用上可以分為基于知識(shí)的方法和學(xué)習(xí)的方法[8]。在基于學(xué)習(xí)的方法中,先前研究通常使用支持向量機(jī)、隱馬爾可夫模型等統(tǒng)計(jì)學(xué)習(xí)方法[9]。隨后,基于目標(biāo)依賴和關(guān)聯(lián)的長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)和注意力機(jī)制運(yùn)用于該任務(wù)中[10]。但基于學(xué)習(xí)的方法需要大量人工標(biāo)注的領(lǐng)域數(shù)據(jù)集進(jìn)行訓(xùn)練,且對(duì)于結(jié)構(gòu)復(fù)雜句子的擬合效果不佳。在基于知識(shí)的方法中,Qin等[5]根據(jù)外部知識(shí)庫(kù)提煉出游客關(guān)心的旅游景點(diǎn)屬性,構(gòu)建三級(jí)評(píng)價(jià)體系的決策系統(tǒng)進(jìn)行觀點(diǎn)挖掘。萬(wàn)巖等[11]在微博評(píng)論分析中構(gòu)建了融合情感詞典和語(yǔ)義規(guī)則的模型。上述方法能夠較好地提取并識(shí)別顯式觀點(diǎn),但忽略了評(píng)價(jià)語(yǔ)法表達(dá)的多樣性而導(dǎo)致隱式觀點(diǎn)的遺漏,在短評(píng)價(jià)觀點(diǎn)挖掘任務(wù)中最為常見(jiàn)[12]。目前已有通過(guò)有監(jiān)督、半監(jiān)督和無(wú)監(jiān)督學(xué)習(xí)的方法識(shí)別隱式觀點(diǎn)的研究。Li等[13]從領(lǐng)域內(nèi)語(yǔ)料庫(kù)中檢索出帶情感標(biāo)注的數(shù)據(jù)集進(jìn)行有監(jiān)督的對(duì)比預(yù)訓(xùn)練,通過(guò)將隱含情感特征表示和具有相同標(biāo)簽的情感表達(dá)對(duì)齊,來(lái)捕捉評(píng)價(jià)中的隱式觀點(diǎn)特征。Xu等[12]構(gòu)建融合SVM和主題模型的半監(jiān)督方法提取隱含觀點(diǎn)。相比之下,無(wú)監(jiān)督方法具有無(wú)需人工標(biāo)注訓(xùn)練集的優(yōu)勢(shì),在該方法中往往使用包括層次結(jié)構(gòu)、本體識(shí)別、主題建模、共現(xiàn)、依存關(guān)系分析、關(guān)聯(lián)規(guī)則挖掘和聚類等各種NLP模型[14]。Hu等[15]根據(jù)近鄰關(guān)系將評(píng)價(jià)中的屬性詞與情感詞對(duì)應(yīng),但忽略了語(yǔ)法元素的依賴而造成抽取觀點(diǎn)的效果較差。在此基礎(chǔ)上,Sun等[16]提出屬性詞和情感詞之間的上下文語(yǔ)境關(guān)系對(duì)識(shí)別隱式觀點(diǎn)具有一定幫助。也有研究將詞對(duì)依存規(guī)則與詞法分析結(jié)合,以更精確地抽取方面觀點(diǎn)[17]。
目前的觀點(diǎn)挖掘技術(shù)已取得較多應(yīng)用成果,但少有在農(nóng)產(chǎn)品領(lǐng)域開(kāi)展應(yīng)用的文獻(xiàn)和開(kāi)源數(shù)據(jù)集。為解決上述問(wèn)題,該文結(jié)合爬蟲(chóng)技術(shù)獲取多源電商農(nóng)產(chǎn)品評(píng)價(jià)數(shù)據(jù),構(gòu)建了一種基于無(wú)監(jiān)督學(xué)習(xí)框架的評(píng)價(jià)觀點(diǎn)抽取和情感識(shí)別系統(tǒng)。在算法層面,對(duì)傳統(tǒng)單一模型進(jìn)行改進(jìn),組合了LDA主題模型、SO-PMI算法、依存句法規(guī)則和詞嵌入相似度計(jì)算的NLP技術(shù),以更好地識(shí)別隱式的方面觀點(diǎn)并進(jìn)行情感識(shí)別。在應(yīng)用層面,根據(jù)分析結(jié)果構(gòu)建可視化平臺(tái),從品類、品種、品牌和店鋪的不同角度挖掘消費(fèi)者偏好,通過(guò)詞頻統(tǒng)計(jì)比較產(chǎn)品的優(yōu)勢(shì)和缺陷,以期服務(wù)于消費(fèi)者、經(jīng)銷商、電商平臺(tái)和監(jiān)管部門(mén)四個(gè)主體。
該文構(gòu)建無(wú)監(jiān)督學(xué)習(xí)框架的觀點(diǎn)抽取和情感識(shí)別方法,如圖1所示,包括了數(shù)據(jù)采集和預(yù)處理、主題識(shí)別和詞典構(gòu)建、方面觀點(diǎn)抽取和情感識(shí)別算法以及可視化平臺(tái)搭建應(yīng)用四個(gè)模塊。以下將詳細(xì)介紹上述流程運(yùn)用的技術(shù)。
圖1 基于無(wú)監(jiān)督學(xué)習(xí)的分析技術(shù)框架
該文采用Python語(yǔ)言的Selenium框架爬蟲(chóng)技術(shù),分別從京東生鮮和天貓商城網(wǎng)站獲取多源農(nóng)產(chǎn)品評(píng)價(jià)數(shù)據(jù)。根據(jù)產(chǎn)品銷量排序分別獲得包括花生、玉米、蘋(píng)果、梨、獼猴桃、橘子、芒果、竹筍、茶葉、茶油的10個(gè)農(nóng)產(chǎn)品品類商品的評(píng)價(jià)數(shù)據(jù)。在進(jìn)行數(shù)據(jù)融合的同時(shí)進(jìn)行數(shù)據(jù)清洗,首先去除重復(fù)評(píng)價(jià)和空評(píng)價(jià),然后運(yùn)用正則化表達(dá)式去除評(píng)價(jià)中的數(shù)字和表情符號(hào),導(dǎo)入停用詞典去除評(píng)價(jià)中的無(wú)效信息,并去除字符數(shù)量少于3的過(guò)短評(píng)價(jià)和大于200的過(guò)長(zhǎng)評(píng)價(jià),最終得到1 147 861條評(píng)價(jià)作為該文的數(shù)據(jù)集,并附帶有評(píng)價(jià)對(duì)應(yīng)的商品鏈接、店鋪、品牌和品種信息,采集結(jié)果寫(xiě)入MySQL中。
1.2.1 基于LDA模型的領(lǐng)域主題識(shí)別
為確定消費(fèi)者所關(guān)注的電商農(nóng)產(chǎn)品主題屬性,該文根據(jù)獲取的評(píng)價(jià)數(shù)據(jù)使用LDA模型進(jìn)行主題挖掘,通過(guò)調(diào)用Gensim庫(kù)下的LdaModel方法完成上述任務(wù)。在構(gòu)建LDA模型的過(guò)程中,采用基于困惑度的方式確定最優(yōu)主題數(shù)K的取值,困惑度取值越小說(shuō)明生成模型效果越好[18]。其計(jì)算方法如公式(1)所示:
(1)
1.2.2 領(lǐng)域?qū)傩栽~典和情感詞典構(gòu)建
篩選出LDA模型輸出結(jié)果中每個(gè)主題的名詞、動(dòng)詞關(guān)鍵詞作為核心屬性詞,在此基礎(chǔ)上,引入中文工具包Synonyms對(duì)每個(gè)核心屬性詞進(jìn)行近義詞擴(kuò)充,對(duì)部分沒(méi)有主題意義的噪聲詞進(jìn)行過(guò)濾,最終形成包含275個(gè)詞匯的領(lǐng)域?qū)傩栽~典,示例如表1所示。
表1 領(lǐng)域?qū)傩栽~典構(gòu)建結(jié)果
另一方面,需要構(gòu)建的情感詞典包括基礎(chǔ)情感詞典、領(lǐng)域情感詞典和情感修飾詞典。首先選用HowNet發(fā)布的“情感分析用詞語(yǔ)集”中的中文正負(fù)面評(píng)價(jià)詞典作為基礎(chǔ)情感詞典 ,包含3 730個(gè)正面情感詞和3 116個(gè)負(fù)面情感詞。為了識(shí)別評(píng)價(jià)中未與屬性詞搭配的情感詞,即隱式方面觀點(diǎn),構(gòu)建有效的領(lǐng)域情感詞典是必要的。根據(jù)領(lǐng)域?qū)傩栽~典,運(yùn)用分句和字符串匹配將農(nóng)產(chǎn)品評(píng)價(jià)按照8個(gè)主題屬性切分形成子句集,使用TF-IDF算法識(shí)別各屬性下的詞頻排序前100的形容詞和名詞,公式如式(2)所示:
(2)
式中,TFw,Di表示詞匯w在文檔Di中出現(xiàn)的頻率,IDFw表示其逆文檔頻率,count(w)統(tǒng)計(jì)詞匯w出現(xiàn)的頻次,|Di|為Di中所有詞的頻數(shù),N為文檔總數(shù),I(w,Di)表示Di中是否包含詞匯的0/1變量。剔除在多種屬性下共同出現(xiàn)的高頻詞匯,得到相應(yīng)屬性的候選情感詞集。然后根據(jù)基礎(chǔ)情感詞典判斷詞匯的情感傾向,篩選出對(duì)應(yīng)屬性的種子情感詞。針對(duì)部分未被基礎(chǔ)情感詞典收錄的詞匯,結(jié)合種子情感詞運(yùn)用SO-PMI算法確定情感極性[19]。基礎(chǔ)SO-PMI公式如式(3)(4)所示:
(3)
(4)
式(3)中,P(word1)和P(word2)分別表示候選情感詞匯和種子情感詞出現(xiàn)的概率,P(word1&word2)表示它們共現(xiàn)的概率,式(4)中pwords和nwords分別表示正面和負(fù)面的種子情感詞集。先前普遍認(rèn)為SO-PMI算法得到的SO_PMI值大于0標(biāo)注詞匯為正面情感,小于0標(biāo)注為負(fù)面情感,但實(shí)際情況中存在大量情感值接近于0的中性情感詞,因此對(duì)SO_PMI值進(jìn)行Min-Max標(biāo)準(zhǔn)化線性轉(zhuǎn)換,公式如式(5)所示:
(5)
表2 領(lǐng)域情感詞典構(gòu)建結(jié)果
情感修飾詞包含程度副詞和否定詞,其作用是影響評(píng)價(jià)情感語(yǔ)義強(qiáng)度[20]。例如程度副詞“非?!蹦軌蚣訌?qiáng)情感詞的強(qiáng)度,“略微”對(duì)情感詞強(qiáng)度起減弱作用,而否定詞“沒(méi)有”逆轉(zhuǎn)了情感詞的語(yǔ)義。該文以HowNet詞匯為基礎(chǔ),選取了220個(gè)程度副詞和58個(gè)否定詞構(gòu)成情感修飾詞典,根據(jù)各個(gè)情感修飾詞對(duì)情感表達(dá)的加強(qiáng)、減弱或逆轉(zhuǎn)的作用,將詞典劃分為7個(gè)等級(jí)并賦予從-1到2不等的情感權(quán)重。例如“非?!薄皹O其”“極度”等69個(gè)詞的情感權(quán)重設(shè)定為2,“很”“太”“特別”等42個(gè)詞的情感權(quán)重設(shè)定為1.5,“稍微”“相當(dāng)”“有點(diǎn)”等29個(gè)詞的情感權(quán)重設(shè)定為0.6,“不”“沒(méi)有”“并非”等58個(gè)詞的情感權(quán)重設(shè)定為-1。
1.3.1 基于依存句法規(guī)則的方面觀點(diǎn)抽取
方面觀點(diǎn)是評(píng)價(jià)中針對(duì)領(lǐng)域?qū)傩缘那楦刑卣鞅硎?一般由屬性詞、情感詞和情感修飾詞組成。先前研究總結(jié)方面觀點(diǎn)表達(dá)通常存在于主謂關(guān)系、動(dòng)賓關(guān)系、定中關(guān)系、并列關(guān)系、動(dòng)補(bǔ)結(jié)構(gòu)、狀中結(jié)構(gòu)的依存句法關(guān)系中[21],該文額外地補(bǔ)充了省略屬性詞的隱式觀點(diǎn)表達(dá)和同義轉(zhuǎn)述的潛在觀點(diǎn)表達(dá)兩種情況,示例如表3所示。
表3 方面觀點(diǎn)表達(dá)形式舉例
該文使用哈工大語(yǔ)言技術(shù)平臺(tái)(LTP)提供的功能,首先將評(píng)價(jià)按照標(biāo)點(diǎn)符號(hào)劃分為子句后進(jìn)行分詞和詞性標(biāo)注,通過(guò)識(shí)別句子的核心詞成分和句法結(jié)構(gòu)來(lái)分析詞匯之間的語(yǔ)法依賴關(guān)系。然后融合領(lǐng)域?qū)傩栽~典和情感詞典制定了7條依存句法規(guī)則,分別對(duì)顯式方面觀點(diǎn)、隱式方面觀點(diǎn)、潛在方面觀點(diǎn)和情感修飾詞進(jìn)行抽取,盡可能地挖掘評(píng)價(jià)中的情感信息。
規(guī)則1:當(dāng)評(píng)價(jià)同時(shí)存在屬性詞和情感詞時(shí),若滿足SBV、ATT或CMP,提取<屬性詞,情感詞>作為顯式方面觀點(diǎn)。若有多個(gè)滿足條件則按照最近鄰關(guān)系搭配。
規(guī)則2:當(dāng)評(píng)價(jià)中僅存在領(lǐng)域情感詞典中的詞匯,而沒(méi)有關(guān)聯(lián)的屬性詞時(shí),將所有的領(lǐng)域情感詞分別抽取出來(lái),形成
規(guī)則3:識(shí)別未被屬性詞典概括的未登錄詞。當(dāng)核心詞詞性在[‘n’,‘v’,‘nz’]中,提取作為屬性詞。然后抽取滿足VOB或CMP的形容詞作為情感詞,形成<屬性詞,情感詞>表達(dá)潛在方面觀點(diǎn),若匹配失敗則舍棄屬性詞。
規(guī)則4:識(shí)別未被情感詞典概括的未登錄詞。當(dāng)核心詞詞性在[‘a(chǎn)’,‘u’,‘d’]中,提取作為情感詞。然后抽取滿足SBV或ATT且詞性在[‘v’,‘n’, ‘j’,‘nz’]的詞匯作為屬性詞。若匹配失敗也將情感詞保留,形成<屬性詞,情感詞>或
規(guī)則5:識(shí)別核心詞周?chē)臐撛谇楦斜磉_(dá)。首先提取和核心詞滿足VOB且詞性在[‘v’,‘n’, ‘j’,‘nz’]的詞匯作為屬性詞,匹配和該詞關(guān)聯(lián)的形容詞作為情感詞,若匹配失敗則舍棄。然后提取和核心詞滿足VOB或CMP的形容詞作為情感詞,匹配和該詞關(guān)聯(lián)的詞性在[‘v’,‘n’,‘j’,‘nz’]的詞匯作為屬性詞,若匹配失敗也將其保留,形成<屬性詞,情感詞>或
規(guī)則6:在規(guī)則1到規(guī)則5的基礎(chǔ)上,尋找與方面觀點(diǎn)滿足COO的元素。抽取出的元素與屬性詞共享情感詞和情感修飾詞,或與情感詞共享屬性詞,形成新的方面觀點(diǎn)。
規(guī)則7:在規(guī)則1到規(guī)則6的基礎(chǔ)上,提取和情感詞滿足CMP或ADV的副詞作為情感修飾詞,最終的方面觀點(diǎn)列表以彈性三元組格式存儲(chǔ)。在該格式中,屬性詞可能不存在而情感詞必須存在,情感修飾詞可能不存在或存在多個(gè)。其表達(dá)方式有<屬性詞,情感修飾詞,情感詞><屬性詞,null,情感詞>
1.3.2 基于詞嵌入和情感值計(jì)算的情感識(shí)別
(1)詞嵌入模型。
抽取評(píng)價(jià)的方面觀點(diǎn)列表后,需要識(shí)別每個(gè)方面觀點(diǎn)表達(dá)的主題屬性和情感傾向。對(duì)于顯式和隱式的方面觀點(diǎn),可以通過(guò)詞典匹配得出識(shí)別結(jié)果。對(duì)于潛在方面觀點(diǎn),需要判斷屬性詞、情感詞與領(lǐng)域詞匯是否為同義詞,區(qū)分其是有效的情感表達(dá)還是噪聲。首先需要把文本數(shù)據(jù)轉(zhuǎn)化為詞向量表示,word2vec是一種經(jīng)典的詞嵌入方法,與one-hot編碼相比解決了維度災(zāi)難問(wèn)題[22],該文使用Gensim庫(kù)建立word2vec模型。將農(nóng)產(chǎn)品評(píng)價(jià)數(shù)據(jù)集與開(kāi)源的wiki百科語(yǔ)料庫(kù)合并對(duì)模型進(jìn)行預(yù)訓(xùn)練,設(shè)置參數(shù)size=250,min_count=5。然后導(dǎo)入模型將詞匯轉(zhuǎn)化成詞向量的形式,計(jì)算潛在方面觀點(diǎn)中屬性詞、情感詞與領(lǐng)域詞典詞匯的余弦相似度,計(jì)算方法如公式(6)所示。
(6)
式中,w1和w2表示兩個(gè)詞匯的詞向量,size表示維數(shù),cos(w1,w2)表示兩詞的余弦相似度。經(jīng)過(guò)反復(fù)實(shí)驗(yàn),設(shè)定相似度閾值為0.85,匹配相似度最大且大于0.85的領(lǐng)域?qū)傩栽~匯對(duì)應(yīng)的屬性作為潛在方面觀點(diǎn)屬性,若匹配失敗,進(jìn)一步選取相似度最大且大于0.85的領(lǐng)域情感詞匯對(duì)應(yīng)的屬性作為其屬性,若匹配失敗則將該潛在方面觀點(diǎn)判定為噪聲數(shù)據(jù)。
(2)情感強(qiáng)度計(jì)算。
實(shí)際情況中,方面觀點(diǎn)可能存在多個(gè)情感修飾詞同時(shí)搭配一個(gè)情感詞的情況,且“否定詞+程度副詞+情感詞(ne+dg+se)”與“程度副詞+否定詞+情感詞(dg+ne+se)”的情況表達(dá)不同的情感態(tài)度。例如評(píng)價(jià)句“口感不是很好”與“口感很不好”相比,后者的負(fù)面情感強(qiáng)度更大。針對(duì)單個(gè)方面觀點(diǎn)中5種不同搭配情況,情感強(qiáng)度的計(jì)算方法如公式(7)所示。
qi=
(7)
(8)
式中,Nb表示評(píng)價(jià)中提及屬性b的方面觀點(diǎn)個(gè)數(shù),qi_c表示第i個(gè)方面觀點(diǎn)的情感強(qiáng)度,Vb表示評(píng)價(jià)在屬性b的方面情感強(qiáng)度,若Vb大于0表示評(píng)價(jià)在屬性b的正面表達(dá),小于0表示負(fù)面表達(dá),等于0表示無(wú)情感表達(dá)。根據(jù)計(jì)算結(jié)果對(duì)每條評(píng)價(jià)進(jìn)行方面情感傾向標(biāo)注。
1.4.1 關(guān)注度分析
統(tǒng)計(jì)評(píng)價(jià)的觀點(diǎn)抽取和情感識(shí)別結(jié)果,可以反映消費(fèi)者的偏好。一方面,現(xiàn)有研究指出消費(fèi)者對(duì)不同主題屬性有不同的重視程度[23],該文引入關(guān)注度的概念衡量這方面的差異,計(jì)算方法如公式(9)所示。
(9)
1.4.2 滿意度分析
另一方面,現(xiàn)有研究集中在從評(píng)價(jià)中提取消費(fèi)者偏好信息衡量對(duì)產(chǎn)品的滿意度[24]。該文計(jì)算在每個(gè)領(lǐng)域主題屬性下的正面情感評(píng)價(jià)數(shù)量與評(píng)價(jià)總數(shù)的比率,量化消費(fèi)者對(duì)農(nóng)產(chǎn)品屬性滿意度差異,計(jì)算方法如公式(10)所示。
(10)
1.4.3 產(chǎn)品優(yōu)勢(shì)與缺陷分析
將方面觀點(diǎn)三元組的抽取結(jié)果按照主題屬性和情感值是否大于0進(jìn)行劃分,分別對(duì)屬性詞、情感詞與整體方面觀點(diǎn)表達(dá)進(jìn)行詞頻統(tǒng)計(jì),選取正面方面觀點(diǎn)的高頻表達(dá)作為農(nóng)產(chǎn)品的主題屬性優(yōu)勢(shì),選取負(fù)面方面觀點(diǎn)的高頻表達(dá)作為農(nóng)產(chǎn)品的主題屬性缺陷。
2.1.1 驗(yàn)證集來(lái)源
由于目前還沒(méi)有開(kāi)源的農(nóng)產(chǎn)品評(píng)價(jià)標(biāo)注數(shù)據(jù),該文從農(nóng)產(chǎn)品評(píng)價(jià)數(shù)據(jù)集中隨機(jī)抽取1 000條數(shù)據(jù),提取其中包含的方面觀點(diǎn)后,人工標(biāo)注每條評(píng)價(jià)的情感標(biāo)簽作為驗(yàn)證集,1表示正面情感,-1表示負(fù)面情感,-2表示無(wú)情感,驗(yàn)證集的示例如表4所示。
表4 驗(yàn)證集的示例
2.1.2 實(shí)驗(yàn)方案
中國(guó)改革開(kāi)放40年來(lái)取得的巨大減貧成就,既內(nèi)含著特定的時(shí)空因素和中國(guó)獨(dú)特的政治制度與治理體系的影響,也形成了一些可與其他國(guó)家分享的經(jīng)驗(yàn)。中國(guó)減貧經(jīng)驗(yàn)中可復(fù)制、可分享和可持續(xù)的部分,應(yīng)該成為中國(guó)未來(lái)減貧和世界減貧事業(yè)的重要知識(shí)財(cái)富。本文主要從扶貧者(政府)視角,基于官方公開(kāi)數(shù)據(jù),總結(jié)改革開(kāi)放40年來(lái)中國(guó)農(nóng)村扶貧開(kāi)發(fā)所取得的成就,討論和分析中國(guó)農(nóng)村減貧的基本經(jīng)驗(yàn)及其對(duì)世界減貧事業(yè)的意義。
一方面,將文中模型與傳統(tǒng)的無(wú)監(jiān)督識(shí)別方面級(jí)情感的方法進(jìn)行對(duì)比,對(duì)比模型選用Zhang等[25]提出的基于PMI統(tǒng)計(jì)方法模型(Baseline_pmi),Sun等[16]提出的基于共現(xiàn)矩陣相似度模型(Baseline_co_sim),以及張林[26]提出的基于Hanlp工具的依存句法規(guī)則和情感值計(jì)算的模型(Hanlp_model)。另一方面,通過(guò)消融試驗(yàn)驗(yàn)證文中模型中各個(gè)方法所起的作用。在依存句法規(guī)則的基礎(chǔ)上使用領(lǐng)域情感詞典和詞嵌入是關(guān)鍵的,前者側(cè)重于識(shí)別隱式觀點(diǎn),后者側(cè)重于識(shí)別潛在觀點(diǎn)。因此設(shè)定其它三種模型分別為:僅運(yùn)用依存句法規(guī)則的模型(Ltp_dp)、加入詞嵌入相似度判別的模型(Ltp_dp_vec)、加入SO-PMI構(gòu)建領(lǐng)域情感詞典的模型(Ltp_dp_sopmi),并與文中模型進(jìn)行對(duì)比。
2.1.3 驗(yàn)證指標(biāo)選取
選取機(jī)器學(xué)習(xí)驗(yàn)證指標(biāo)(查準(zhǔn)率、召回率和F1值)對(duì)模型進(jìn)行性能度量[27]。查準(zhǔn)率指正確識(shí)別情感標(biāo)簽占所有識(shí)別出情感標(biāo)簽數(shù)量的比例,召回率指正確識(shí)別情感標(biāo)簽占所有情感標(biāo)簽的比例。F1值是準(zhǔn)確率與召回率的平均值,并根據(jù)每類情感標(biāo)簽分類結(jié)果計(jì)算宏平均值反映模型整體性能。上述驗(yàn)證指標(biāo)的計(jì)算方法如公式(11)~(13)所示。
(11)
(12)
(13)
式中,P表示查準(zhǔn)率,R表示召回率,Macro_F1表示所有情感標(biāo)簽類別的宏平均F1值。
模型性能比較結(jié)果如表5所示。傳統(tǒng)Baseline_pmi和Baseline_co_sim模型查準(zhǔn)率和召回率較低,原因是基于統(tǒng)計(jì)或共現(xiàn)的方法忽略了詞匯句法關(guān)系造成大量噪聲,且無(wú)法較好地關(guān)注到低頻詞。單獨(dú)使用依存句法的模型Ltp_dp召回率較低,這是因?yàn)楹雎粤嗽u(píng)價(jià)中的隱式和潛在情感信息。加入詞嵌入相似度的模型Ltp_dp_vec與加入SO-PMI構(gòu)建領(lǐng)域情感詞典的模型Ltp_dp_sopmi,召回率和F1值均有所提高,前者召回了部分潛在情感信息,后者抽取了更多隱式情感信息。文中模型的查準(zhǔn)率、召回率和F1值分別為85.08%,78.50%和81.66%,尤其是召回率和F1值提升顯著,達(dá)到了最優(yōu)的模型性能。相比之下,基于Hanlp工具的模型在分詞和依存句法標(biāo)注上的精確性不如LTP,且忽略SO-PMI和詞嵌入相似度最優(yōu)閾值的設(shè)定也將降低模型性能。
表5 不同模型試驗(yàn)結(jié)果對(duì)比 %
基于該文設(shè)計(jì)的算法,使用Django后端+Booststrap前端框架作為主體框架進(jìn)行觀點(diǎn)抽取和情感識(shí)別系統(tǒng)的搭建,使用Layui和Echarts組件進(jìn)行分析結(jié)果可視化展現(xiàn)。在系統(tǒng)的前端部分,分別設(shè)計(jì)了文本輸入模塊與根據(jù)農(nóng)產(chǎn)品品類、品種、品牌、店鋪名稱進(jìn)行條件篩選模塊,用戶提交表單后實(shí)時(shí)返回查詢的結(jié)果。在系統(tǒng)的后端部分,設(shè)計(jì)了數(shù)據(jù)接收、數(shù)據(jù)處理和數(shù)據(jù)提交功能,前后端之間通過(guò)ajax進(jìn)行JSON數(shù)據(jù)的傳輸。根據(jù)系統(tǒng)功能的不同,可分為觀點(diǎn)抽取和情感識(shí)別功能、消費(fèi)者偏好挖掘功能兩類。
2.3.1 觀點(diǎn)抽取和情感識(shí)別功能
該功能可以分為在線分析與離線分析,在線分析功能的界面展示如圖2所示。系統(tǒng)用戶輸入需要判別的農(nóng)產(chǎn)品評(píng)價(jià)數(shù)據(jù)、選擇品類并點(diǎn)擊提交后,前端向服務(wù)器發(fā)送請(qǐng)求,Django后端實(shí)時(shí)調(diào)用該文的算法接口,返回面向農(nóng)產(chǎn)品主題屬性的有效方面觀點(diǎn)三元組抽取結(jié)果和對(duì)應(yīng)的情感強(qiáng)度得分結(jié)果。
圖2 在線分析功能界面展示
另一方面,系統(tǒng)啟動(dòng)時(shí)后端通過(guò)調(diào)用評(píng)價(jià)爬蟲(chóng)模塊、觀點(diǎn)抽取和情感識(shí)別模塊對(duì)MySQL中的評(píng)價(jià)數(shù)據(jù)進(jìn)行持續(xù)的增量更新。離線分析功能的界面展示如圖3所示,系統(tǒng)用戶可在前端通過(guò)下拉框篩選需要查詢的農(nóng)產(chǎn)品品類、來(lái)源、店鋪、品種、商品鏈接所對(duì)應(yīng)的評(píng)價(jià)數(shù)據(jù),每條評(píng)價(jià)都展現(xiàn)所抽取的方面觀點(diǎn)三元組和生成的方面情感傾向信息。
圖3 離線分析結(jié)果查詢界面展示
2.3.2 消費(fèi)者偏好挖掘功能
對(duì)農(nóng)產(chǎn)品評(píng)價(jià)語(yǔ)料進(jìn)行觀點(diǎn)抽取和情感識(shí)別后,可根據(jù)公式(9)和(10)分別計(jì)算不同農(nóng)產(chǎn)品品類、品種、品牌和店鋪下消費(fèi)者對(duì)領(lǐng)域主題屬性的關(guān)注度和滿意度差異。圖4以農(nóng)產(chǎn)品品類為例分析了上述區(qū)別。在關(guān)注度方面,與其它屬性相比,消費(fèi)者更側(cè)重于關(guān)注口感和價(jià)格屬性, 平均值分別達(dá)到0.29和0.26。但不同品類之間存在關(guān)注度的差異。例如,消費(fèi)者對(duì)于竹筍和花生的口感屬性關(guān)注度分別為0.40和0.26,顯著高于其它農(nóng)產(chǎn)品;對(duì)于獼猴桃的價(jià)格屬性關(guān)注度達(dá)到了0.30,與之相比消費(fèi)者對(duì)茶葉的價(jià)格屬性關(guān)注度較低,僅為0.19。在滿意度方面,在線農(nóng)產(chǎn)品的包裝和物流屬性被多數(shù)消費(fèi)者認(rèn)可,滿意度均值分別達(dá)到了0.84和0.86。在具體的口感屬性方面,花生品類得到了最多消費(fèi)者的喜愛(ài),滿意度達(dá)到了0.90,但獼猴桃的口感滿意度僅為0.61;在色澤屬性方面,茶葉品類的滿意度最高達(dá)到了0.89,但芒果和獼猴桃的滿意度較低,分別僅為0.54和0.57。
圖4 消費(fèi)者關(guān)注度和滿意度分析界面展示
另一方面,對(duì)海量評(píng)價(jià)數(shù)據(jù)抽取的有效方面觀點(diǎn)三元組進(jìn)行詞頻統(tǒng)計(jì)和排序,為平臺(tái)用戶提供產(chǎn)品的屬性級(jí)優(yōu)勢(shì)與缺陷分析,以售賣(mài)獼猴桃品類的店鋪“綠美生鮮專營(yíng)店”的口感屬性缺陷的高頻情感詞為例進(jìn)行分析,圖5展示了分析結(jié)果,可以看出該店鋪在口感方面的缺陷主要體現(xiàn)在“硬”“酸”“不甜”“難吃”等。
圖5 具體店鋪的口感屬性缺陷分析界面展示
該系統(tǒng)面向的用戶主要分為消費(fèi)者、經(jīng)銷商、平臺(tái)和監(jiān)管部分四個(gè)主體。消費(fèi)者可以通過(guò)歷史消費(fèi)者的評(píng)價(jià)觀點(diǎn)挖掘結(jié)果進(jìn)行購(gòu)買(mǎi)選擇,農(nóng)產(chǎn)品經(jīng)銷商和平臺(tái)可以根據(jù)消費(fèi)者偏好挖掘結(jié)果更有針對(duì)性地對(duì)產(chǎn)品進(jìn)行具體屬性的改進(jìn),監(jiān)管部門(mén)通過(guò)查詢具體店鋪的農(nóng)產(chǎn)品屬性級(jí)缺陷,及時(shí)發(fā)現(xiàn)問(wèn)題并進(jìn)行管控。該平臺(tái)上線后取得了良好的應(yīng)用效果。
針對(duì)如何在缺少標(biāo)注數(shù)據(jù)集的情況下對(duì)農(nóng)產(chǎn)品評(píng)價(jià)進(jìn)行觀點(diǎn)抽取和情感識(shí)別的問(wèn)題,提出了一種組合NLP方法的無(wú)監(jiān)督學(xué)習(xí)框架。采集多源評(píng)價(jià)數(shù)據(jù)后,首先采用LDA模型對(duì)領(lǐng)域主題進(jìn)行識(shí)別,運(yùn)用改進(jìn)的SO-PMI算法構(gòu)建領(lǐng)域詞典,然后結(jié)合依存句法規(guī)則和詞嵌入相似度對(duì)評(píng)價(jià)中的隱式和潛在方面觀點(diǎn)進(jìn)行更好地召回,并定義了情感強(qiáng)度的計(jì)算方法標(biāo)注方面級(jí)情感傾向。相較于傳統(tǒng)模型,該文的分析識(shí)別框架在性能上得到明顯的提升,在農(nóng)產(chǎn)品評(píng)價(jià)語(yǔ)料中查準(zhǔn)率、召回率和F1值分別達(dá)到85.08%、78.50%、81.66%?;谠撍惴蚣艽罱ǖ目梢暬到y(tǒng)具有在線、離線識(shí)別功能和基于不同角度的消費(fèi)者偏好分析功能,分析結(jié)果致力于為不同的主體提供信息價(jià)值。