鄭宇 賈如 沈軍 李茹
(內蒙古大學計算機學院 呼和浩特 010021)
隨著電子商務蓬勃發(fā)展,評論引起商家和用戶的關注,然而用戶沒有充足時間和精力或合適的語言對進行商品評論。針對該問題,平臺提供固定評論標簽供用戶選擇,如圖1[12]所示。但是單純根據(jù)商品分類形成的標簽,無法體現(xiàn)用戶不盡相同的評論觀點,不能產(chǎn)生多樣化、個性化的有效評論。本文根據(jù)用戶已有評論分析用戶需求,與商品特點融合形成評論標簽,幫助用戶對商品評價,進而生成更多有效的評論。
圖1 購物軟件評論頁面圖
評論標簽生成是一項具有挑戰(zhàn)的研究,國內外學者應用多種算法進行評論標簽提取,大致分為詞性和依存句法、主題模型、監(jiān)督學習三類[1]。單純利用詞性或依存句法提取深層語義的主題比較困難,基于主題模型進行標簽提取的方法可以對用戶評論進行總結和語義分析,可以體現(xiàn)用戶對商品的看法,但面對商品屬性不能夠詳細說明。而依據(jù)監(jiān)督學習提取標簽的準確率較高,缺點是對語料的依賴性過強。
本文研究評論標簽自動算法,為沒有充足時間或合適詞匯評論的網(wǎng)購用戶提供便捷的評論方式。應用K-means聚類算法,以用戶為單位聚類描述方向相似的評論語句?;赥extRank算法結合詞性-句法特征生成文本摘要,該算法對語料依賴性小,可以良好適應數(shù)據(jù)稀疏情況,生成摘要由詞性-句法特征清晰描述出商品屬性,又通過TextRank算法建立文本關聯(lián)體現(xiàn)評論語義。在京東商城中,隨機選取電子商品、洗護商品、食品類商品作為研究對象。該數(shù)據(jù)集平臺應用范圍廣,用戶類型各異,更適合本次實驗。本文依據(jù)評論文本內容相似性進行K-means聚類處理,將TextRank[2,6]算法生成摘要作詞性-句法分析,結合TextRank提取的評論關鍵詞制作標簽。
評論標簽提取方法復雜多樣,國內外眾多學者紛紛提出不同提取算法,可以分為三種。
Makadia[22]研究人工智能在商業(yè)鄰域的應用,運用自然語言處理的句法知識進行商品特征挖掘。李兆玉等[3]運用最大頻繁模式來提取出評論中頻率高的詞的集合,同時利用詞性標注形成搭配規(guī)則進行過濾提取標簽的算法。
在詞性標注和句法分析基礎上的主題標簽提取方法,僅僅可以提取出用戶在評論中可以顯式呈現(xiàn)的短語詞匯,對于具有隱藏意義的,較深意義的主旨的提取比較困難,在語義方面可以進行聚類的算法可以一定程度地對類似缺陷進行彌補[7]。
Samuel等[25]提出了基于LDA的局部主題模型,使用一種自動導出的方法構建一個無監(jiān)督的情感正負形容詞種子集實現(xiàn)主題情感的分析。Moghaddam等[23]以購物網(wǎng)站商品評論為數(shù)據(jù)集利用LDA模型設計了標簽生成算法,基于LDA的局部主題模型[5]生成主題詞作為標簽。阮光冊[8]提出了進行主題發(fā)現(xiàn)的挖掘方法,在詞性標注的基礎上,結合主題模型進行評論的主題匯聚和標簽提取。
基于主題模型進行標簽提取的方法可以對用戶評論進行好的總結和語義分析,但在體現(xiàn)用戶對商品的情感的同時,對商品屬性的描述能力較低。
Hussam等[26]在中使用CRF(條件隨機場)和logistic回歸提取主題目標并做情感極性分析來最終構成評論標簽。Hu Xu等[24]應用卷積神經(jīng)網(wǎng)絡CNN在一定標記數(shù)據(jù)訓練基礎上,得到了較好效果的標簽。劉曉玲等[4]同樣運用神經(jīng)網(wǎng)絡模型對用戶需求進行意見挖掘,進而構成標簽。
基于機器學習形成評論標簽的方法相對于利用詞性規(guī)則提取標簽的方法準確率會大幅度提高,但依舊存在對語料的依賴性太強,面對冷啟動和數(shù)據(jù)稀疏情況,不能良好適應[9]需要大量人工標注這樣的缺點。
對比來看,本文實驗以用戶為單位,融合TextRank算法和詞性-句法特征來提取標簽,對只有少量已有評論的用戶也可以提供有一定準確率的標簽,對語料的依賴性適中,通過TextRank抽取的評論摘要設計不同的詞性句法規(guī)則可以較好地體現(xiàn)商品屬性特點,還可以一定程度上體現(xiàn)用戶對商品情感,彌補提取具有隱藏較深意義和隱藏意義主旨的缺陷,達到語義方面的要求[13]。
3.1.1 TextRank算法
Textrank算法是抽取式摘要算法,該算法可以將文本內容進行“降維”處理,將評論內容提取成簡短的關鍵詞摘要[18]。構建詞圖G=(V,E),V為節(jié)點,由分詞后詞集合所生成的詞組成,生成詞圖后根據(jù)下面的Textrank算法核心公式(1)迭代計算節(jié)點V的權重,直到收斂,其中用ωji來表示兩個節(jié)點之間的邊的鏈接具有不同的重要程度。
以106份樣本的13個形態(tài)性狀為指標,采用Bray-Curtis距離系數(shù)和離差平方和法聚類策略,建立缺齒蓑蘚的形態(tài)聚類圖。原始數(shù)據(jù)用最大值標準化處理,同時以平均形態(tài)性狀為指標,建立11個地理居群的形態(tài)距離系數(shù)矩陣。同時計算蘚類枝葉的連續(xù)變量性狀在106份樣本間的變異系數(shù)。
Textrank算法建立有向無環(huán)圖處理長句,將長句分成單詞,載入詞向量,對單詞構建詞圖。構成映射的詞向量,由此得到每個單詞的權重,權重高的單詞可以作為關鍵詞,生成文本摘要[21]。
3.1.2 依存句法
依存句法分析(Dependency Parsing,DP)通過分析語言單位內成分之間的依存關系揭示其句法結構[27]。句法分析是自然語言處理中一個重要的任務,其目標是分析句子的語法結構并將其表示為容易理解的結構(通常是樹形結構)[10]。依存句法樹關注的是句子中詞語之間的語法聯(lián)系,并且將其約束為樹形結構[11]。在句子中,如果一個詞修飾另一個詞,則稱修飾詞為從屬詞(dependent),被修飾的詞語稱為支配詞(head),兩者之間的語法關系稱為依存關系(dependency relation)[12]。
3.1.3 K-means聚類
根據(jù)單個評論數(shù)據(jù)集的大小,先設定初始的K值,將評論分為K個聚類[14~16],后續(xù)根據(jù)聚類效果調整K值數(shù)量。算法將隨機抽取評論放在K個聚類中,作為初始的中心點,每一條評論都代表一個聚類中心。數(shù)據(jù)集中的其他評論,會通過歐幾里得距離計算公式判斷它們與這些聚類中心的距離,再根據(jù)距離遠近分配所屬類[17,20]。
多數(shù)購物軟件只是對不同類別商品進行評論標簽區(qū)分,沒有考慮到各個用戶評論觀點和語言習慣的差異,面向用戶提供一致標簽。針對該問題,本文以用戶為單位對評論數(shù)據(jù)進行K-means聚類,聚類算法將具有同類關鍵字的評論聚集到了一個新的文檔中。將用戶評論分類處理后使用TextRank算法抽取關鍵詞與摘要,能夠更加清晰地發(fā)現(xiàn)用戶對同一商品在不同方面的評價,更加全面地概括商品特性。
結合TextRank算法生成的關鍵詞,本文進一步對算法抽取的摘要使用詞性規(guī)則和依存句法制作標簽,加入了用戶個性化這一因素,彌補只能提取評論中顯式出現(xiàn)的詞匯這一缺陷。具體標簽生成算法見表1。
表1 標簽提取算法表
在京東商城爬取200位用戶、1500條評論數(shù)據(jù)。以用戶為單位對其評論數(shù)據(jù)進行聚類,聚類分別提取評論摘要得到權重排名靠前的評論摘要及關鍵詞。接下來利用Textrank算法抽取關鍵詞與摘要,不只統(tǒng)計單詞出現(xiàn)的頻率,同時通過詞與詞的連接關系,來判斷該詞語是否是文段中的關鍵性詞語,優(yōu)化了關鍵詞的提取。用Stanford CoreNLP工具包對TextRank算法摘要進行詞性標注和依存句法關系表示來制定詞性句法規(guī)則,進而提取出一定數(shù)量的標簽,結合已經(jīng)提取的關鍵詞,形成最終標簽。
本文采用京東中文數(shù)據(jù)集,使用python中的jieba分詞工具,選用默認模式進行分割,每個詞只出現(xiàn)一次,不會列出全部可能分詞。去除部分指代意義的復合名詞和大量標點符號[12],避免語義不明的部分無效標簽的生成。
使用Textrank算法對文本內容進行“降維”處理,將大量已被聚類的評論內容提取成簡短的關鍵詞與摘要。對生成摘要的詞性進行標注,依存關系依據(jù)句法分類表示,利用復雜的詞性和句法關系設計標簽提取規(guī)則。
游戲效果聚類中,表2為聚類效果,提取出的權重最高的關鍵詞除去“游戲”和“效果”后,為“流暢”、“散熱”和“運行”。外形外觀聚類中,提取出的關鍵詞為“好看”、“大氣”、“質感”,表3、4展現(xiàn)摘要效果。實驗進一步依據(jù)評論的依存句法樹設置提取標簽的詞性-句法特征。標簽如表5所示。
表2 聚類效果示例
表3 摘要效果示例
表4 摘要效果示例
表5 標簽效果示例
本文結合Textrank算法與詞性-語法特征提取標簽,以用戶為單位目的是提取符合用戶需求,體現(xiàn)商品特征的個性化標簽,數(shù)據(jù)稀疏情況下也可聯(lián)系評論語義生成體現(xiàn)商品特點的標簽。
為了體現(xiàn)評論標簽的“廣度”與“深度”,本文以Textrank、LDA、TF-IDF算法為對比實驗,基于關鍵算法與本文設計方法進行對比實驗分析,結果表明,提取方式在關鍵描述層面明顯優(yōu)于傳統(tǒng)關鍵詞算法,標簽提取效果顯著。
本文將用戶最終標簽作為結果集標簽,京東評論數(shù)據(jù)集中用戶評論總結分詞去停得到該用戶的系統(tǒng)標簽集。評價指標包括覆蓋率(DT),準確率(ACC),見式(2)、(3),其中TP+FP為結果集標簽的數(shù)目,N為系統(tǒng)標簽集數(shù)目,TP為結果集標簽與系統(tǒng)標簽集重合數(shù)目,F(xiàn)P為兩標簽集不重合數(shù)目。
根據(jù)用戶已有評論數(shù)量劃分間隔不同的評論數(shù)據(jù)段,統(tǒng)計評論數(shù)量在一定間隔內的用戶個數(shù),評論標簽覆蓋率、準確率之和除以這一間隔評論數(shù)量段中的用戶個數(shù),得到覆蓋率和準確率均值,表6為各評論數(shù)據(jù)段覆蓋率準確率均值。
表6 覆蓋率準確率均值
圖2算法對比覆蓋率均值
圖2 、3分別展現(xiàn)了在不同評論數(shù)據(jù)段,本文算法與三個對比算法的覆蓋率、準確率均值差異。隨著用戶已有評論數(shù)量增多,本文覆蓋率均值有明顯上升,用戶已有評論越多,覆蓋率越高。準確率均值數(shù)值相對穩(wěn)定,說明實驗設計的標簽提取規(guī)則受用戶已有評論數(shù)量的影響小,對購買同類商品次數(shù)少的用戶也能提供有效評論標簽。最終得到關于50名用戶標簽識別算法的覆蓋率和準確率均值為48.5%和59.5%。
圖3 算法對比準確率均值
本文在TextRank模型處理用戶評論基礎上,分析各個用戶已有評論中詞性和句法特征。根據(jù)一定的詞性句法規(guī)則形成的標簽生成算法一定程度上體現(xiàn)了用戶之間的語言描述差異,反映出用戶需求與商品特點。但是在用戶個性化標簽的提取算法構建上做的還遠遠不夠,并且對研究的用戶選取有一定條件,對已有評論數(shù)量越多的用戶所形成的的個性化標簽在用戶的語言特點呈現(xiàn)才能更全面。