摘 要:關(guān)鍵詞抽取技術(shù)能從海量產(chǎn)品評論文本中挖掘出用戶關(guān)注的焦點,方便后續(xù)為用戶推薦合適的產(chǎn)品。經(jīng)典關(guān)鍵詞抽取算法TextRank在迭代計算詞匯節(jié)點的重要性得分時,忽略了鄰近詞匯節(jié)點的影響力差異。為此,提出一種融合TFIDF與TextRank算法(簡稱TFTR)抽取評論中的關(guān)鍵詞。首先,通過引入用戶瀏覽評論后給出的評論有用性反饋,提高有效評論中出現(xiàn)的重要詞語權(quán)重,對TFIDF算法進行改進。然后將改進后的詞頻逆文檔頻率作為詞節(jié)點特征權(quán)重引入到TextRank算法中,以改進詞匯節(jié)點的重要性得分分配過程。實驗結(jié)果表明,相比傳統(tǒng)的TextRank算法,TFTR算法提取出的產(chǎn)品評論關(guān)鍵詞準確性在P@10標準下提高了15.70-/0,證明了該算法的有效性。
關(guān)鍵詞:關(guān)鍵詞抽取;TFIDF;TextRank;TFTR;評論有用性反饋
DOI: 10. 11907/rjdk.191810
開放科學(資源服務(wù))標識碼(OSID):
中圖分類號:TP393
文獻標識碼:A
文章編號:1672-7800( 2020)004-0229-05
0 引言
在個性化推薦領(lǐng)域,互聯(lián)網(wǎng)的盛行導致數(shù)據(jù)量激增,人們很難從龐大的數(shù)據(jù)中直接獲取到有用信息。評論文本不僅描述了產(chǎn)品的真實特點,還包含了豐富的用戶觀點信息,反映出個人偏好。如果從評論文本中挖掘出用戶偏好信息,即可將具有相似偏好特征的用戶所喜愛的項目推薦給該用戶。此外,商家面對過載的評論信息,亟需快速、精確地掌握用戶態(tài)度,再針對性地作出應(yīng)對以完善項目。因此,利用關(guān)鍵詞提取技術(shù)準確、高效地從海量評論文本中挖掘出用戶關(guān)注的焦點,具有很高的實用價值。作為NLP(自然語言處理)領(lǐng)域一個重要的子任務(wù),它也是信息檢索、文本分類、對話系統(tǒng)等熱門學術(shù)研究的基礎(chǔ),應(yīng)用范圍非常廣,例如圖書情報[1]、生物醫(yī)學文獻[2]、新聞媒體[3]等。
關(guān)鍵詞提取方法可以分為監(jiān)督性和無監(jiān)督性兩類。前者將關(guān)鍵詞抽取任務(wù)轉(zhuǎn)化為分類問題,通過人工標注詞匯,訓練分類模型實現(xiàn)關(guān)鍵詞的0/1分類[4]。然而,由于監(jiān)督性方法面臨人工標注工作量大、數(shù)據(jù)量爆增且內(nèi)容實時性強等問題,無監(jiān)督性方法逐漸成為學者們研究的熱點,并有取代監(jiān)督性方法的趨勢。常用的無監(jiān)督性關(guān)鍵詞抽取算法包括以下3種:TFIDF算法[5]、LDA主題模型[6]和TextRank算法[7]。大量相關(guān)研究都是在以上3種算法基礎(chǔ)上融合新的算法,或者將這3種算法本身進行融合。
張瑾[8]將特征詞位置及詞跨度權(quán)值引入到TFIDF中,并在提取新聞情報關(guān)鍵詞實驗中證明了算法的有效性;YI等[9]針對TFIDF的不足,運用類別間離散和類別內(nèi)信息熵理論,引入類別判別定義,考慮特征項的類別內(nèi)和類別間分布,并在復(fù)旦大學語料庫實驗中驗證了算法的有效性;張震等[10]分別從用戶和商家視角定義了有效關(guān)鍵詞,提出基于語言模型的關(guān)鍵詞抽取方法,通過實驗證明所提模型挖掘出的關(guān)鍵詞在推薦系統(tǒng)中有著很好的推薦效果;謝瑋等[11]在詞語位置加權(quán)TextRank基礎(chǔ)上引入詞頻逆文本頻率,實現(xiàn)關(guān)鍵詞抽取并將其應(yīng)用于論文審稿自動推薦中;劉竹辰等[12]將特征詞在文檔內(nèi)的詞距和位置分布信息融入到TextRank模型中,改進了關(guān)鍵詞提取效果;寧建飛等[13]主要通過word2vec計算詞匯間的相似度,并改進Tex-tRank算法中圖節(jié)點間的權(quán)重分配,以改善關(guān)鍵詞抽取效果;夏天[14]利用word2Vec模型將維基百科中文數(shù)據(jù)生成詞向量模型,對TextRank詞節(jié)點的詞向量進行加權(quán)聚類,實現(xiàn)關(guān)鍵詞抽取;He等[15]提取關(guān)鍵短語的控制詞匯及其先驗概率作為先驗知識,然后利用監(jiān)督學習算法對TFIDF、Tex-tRank和先驗概率等特征進行學習,并在Inspec、Krapivin、NUS和Ke20K 4個公共數(shù)據(jù)集上驗證了先驗知識對關(guān)鍵詞提取的有效性;劉嘯劍等[16]提出一種結(jié)合LDA與Tex-tRank的關(guān)鍵詞抽取模型,并在Huth200和DUC2001數(shù)據(jù)集上進行實驗,結(jié)果表明了該方法的有效性;魏赟等[2]在TextRank算法基礎(chǔ)上,引入TFIDF計算詞語之間的權(quán)重得分,但該方法對權(quán)重的賦值仍存在缺陷。
本文在文獻[2]的基礎(chǔ)上引入瀏覽用戶對評論的有用性反饋,以提高有效評論中關(guān)鍵詞的權(quán)重,對TFIDF進行改進,然后結(jié)合TextRank算法挖掘評論中的關(guān)鍵詞。
1 改進關(guān)鍵詞抽取方法
1.1 傳統(tǒng)TFIDF與TextRank
TFIDF(詞頻逆文本頻率)是計算特征權(quán)重最常用的方法[17],用來評估指定詞匯在整個文本或語料庫中的重要程度。TF表示特征詞匯在整個文檔中出現(xiàn)的頻率,文檔中出現(xiàn)頻率越高的詞語重要性越強。對于某文本i中的詞語j,TF計算方式如式(1)所示。
1.3 基于改進TFIDF的TextRank算法
傳統(tǒng)TextRank給每個節(jié)點賦予的初始權(quán)重都是一樣的。對于指定節(jié)點,在迭代計算鄰近節(jié)點重要性得分過程中,源節(jié)點將自身得分均分給鄰近節(jié)點,而未考慮節(jié)點之間的重要性差異,顯然是不符合實際情況的。因此,將改進TFIDF算法引入到TextRank中,將其作為詞節(jié)點之間的特征權(quán)重,調(diào)整詞節(jié)點間的影響力。
如圖1所示,{v1,v2,v3,v4}5個詞構(gòu)成一個圖,根據(jù)改進TFIDF算法計算出4個相鄰詞節(jié)點的詞匯特征權(quán)重依次為tfidj1、tfidf2、tfidf3和tfidf4。因此,對于指定詞節(jié)點v,指向該節(jié)點的權(quán)重分別為相鄰節(jié)點的詞特征權(quán)重,從而有效區(qū)分不同重要性詞節(jié)點對節(jié)點v的影響。
(4)融合評論的helpful反饋,根據(jù)式(6)計算候選關(guān)鍵詞的tfidf權(quán)重。
(5)構(gòu)建候選關(guān)鍵詞圖G=(V,E,其中V為節(jié)點集,由步驟(3)生成的候選關(guān)鍵詞組成,若詞匯在長度為L(原文本中的距離)的窗口中共現(xiàn),則兩個詞匯節(jié)點之間通過邊相連。
(6)將所有候選關(guān)鍵詞節(jié)點重要性得分初始化為1,根據(jù)式(8)迭代計算新一輪節(jié)點重要性得分。如果節(jié)點誤差率小于0.000 l,或達到指定的迭代次數(shù),則算法停止迭代。
(7)根據(jù)節(jié)點的重要性得分從大到小排序,選取前S個單詞作為關(guān)鍵詞。
(8)將步驟(7)得到的關(guān)鍵詞在原始文本中一一尋找標記。如果關(guān)鍵詞位置相鄰,則將這兩個相鄰詞匯合并作為多詞關(guān)鍵詞。
2 實驗
實驗在Windows 10系統(tǒng)下進行,硬件配置為Intel( R)Core(TM)i7 CPU,內(nèi)存大小為8CB,硬盤大小為500GB,所用編程語言為Python語言。
2.1實驗數(shù)據(jù)
本文選擇亞馬遜數(shù)據(jù)集的Kindle Store子集[19]研究關(guān)鍵詞抽取算法,該數(shù)據(jù)集是與電子書相關(guān)的數(shù)據(jù)集。原始數(shù)據(jù)集中包含評論者ID、產(chǎn)品ID、評論者名字、評分、評論文本、評論概述summary、評論有用性反饋、發(fā)表評論的Unix時間和評論時間戳共9個字段。Kindle Store原始數(shù)據(jù)集中不同電子書的受歡迎程度存在巨大差異,許多冷門電子書的評論數(shù)據(jù)數(shù)量過少,不利于進行評論短文本挖掘。為了驗證本文所提算法對電子書評論關(guān)鍵詞抽取的效果,特將用戶評論數(shù)超過100的電子書采樣出來,同時保留產(chǎn)品ID、評論文本和評論有用性反饋3個字段。該數(shù)據(jù)集采樣前后具體情況如表1所示。
將不同電子書的評論信息存儲到*.csv文件中,以產(chǎn)品ID作為文件名。文件每一行是評論有用性反饋及某一用戶對電子書的評論。利用Python的nltk自然語言處理包對每個文件中的用戶評論文本進行文本預(yù)處理。首先進行分詞與詞性標注,然后去除評論文本中的停用詞,保留名詞、動詞和形容詞,接著進行詞干還原。經(jīng)過文本預(yù)處理之后,評論文本挖掘才進入下一步驟——關(guān)鍵詞抽取。
2.2 對比算法及評估指標
(1)評估指標。所用亞馬遜數(shù)據(jù)集的Kindle Store子集不存在人工標注的關(guān)鍵詞,對于算法自動抽取出的關(guān)鍵詞,根據(jù)一定規(guī)則人工判別是否為有用關(guān)鍵詞。人工判別規(guī)則具體分為兩條:①是否與書籍的情節(jié)、人物、作者等組成元素相關(guān),能否反映電子書特點;②是否有利于對其他用戶進行推薦。
為了驗證算法對關(guān)鍵詞的抽取效果,采用信息檢索領(lǐng)域常用的P@k指標作為算法性能評估指標。P@k[20]是將算法自動抽取前k個關(guān)鍵詞與人工標注結(jié)果比較得到的查準率,如式(9)所示。
P@k=N(k)/k
(9)
其中,分子N(k)表示抽取出k個關(guān)鍵詞中人工判別為有用的關(guān)鍵詞數(shù)目。
(2)對比算法。將改進算法與3種經(jīng)典算法TFIDF[5]、TextRank[7]和TFIDF+TextRank[2]進行比較。其中,TFIDF無參數(shù)設(shè)置,后兩種算法中d=0.85,詞共現(xiàn)窗口size=5。
2.3 實驗結(jié)果與分析
實驗一:詞共現(xiàn)窗口對改進TextRank算法的影響。
TFTR作為非監(jiān)督性的關(guān)鍵詞抽取算法,詞共現(xiàn)窗口大小作為唯一參數(shù),影響著算法抽取關(guān)鍵詞效果。當詞共現(xiàn)窗口取size={3,5,7},任意取100本電子書,利用TFTR算法對每本Kindle電子書的所有評論抽取候選關(guān)鍵詞,然后在重要性得分排名前10的詞匯中人工判斷并標注有用關(guān)鍵詞,最后計算不同電子書抽取關(guān)鍵詞的查準率情況并取平均值。TFTR算法計算得到的P@10如表2所示。
根據(jù)表2可知,當窗口的size=5時,算法的P@10指標最大。換言之,算法得到重要性得分排名前10關(guān)鍵詞中被人工標注為有用關(guān)鍵詞的數(shù)目最多。所以為了使TFTR達到較為滿意的抽取效果,取size=5。
實驗二:不同算法關(guān)鍵詞抽取結(jié)果比較。
首先利用4種算法對624本Kindle電子書的所有評論抽取候選關(guān)鍵詞,然后在重要性得分排名前5/10/15/20的詞匯中人工判斷并標注有用關(guān)鍵詞,最后計算不同電子書抽取關(guān)鍵詞的查準率情況,并對其求算數(shù)平均作為算法抽取關(guān)鍵詞的P@k指標,具體結(jié)果如表3所示。需要注意的是,TextRank、TFIDF+TextRank以及TFTR的詞共現(xiàn)窗口大小固定為5。
為了更清晰地對比算法間的差異,將表3中的數(shù)據(jù)繪成直方統(tǒng)計圖,如圖2所示。
分析圖2可得出以下結(jié)論:
(1)TFIDF算法在抽取電子書評論關(guān)鍵詞時效果最差,這是因為該算法僅考慮了詞頻和逆文檔頻率特征計算詞匯的重要性得分。
(2)TextRank算法相比于TFIDF算法,查準率略有提高,可能是因為算法通過詞匯共現(xiàn)窗口構(gòu)建詞匯聯(lián)系圖,本質(zhì)上利用了詞匯短語間的語義信息。
( 3)TFIDF+TextRank算法相比于前兩種單一算法,算法抽取查準率明顯提高,說明對TextRank算法引入TFIDF特征能彌補相關(guān)不足。
(4)TFTR算法的P@k指標是4種算法中最高的。相比于TFIDF算法、TextRank算法和TFIDF+TextRank算法,TFTR算法提取出的產(chǎn)品評論關(guān)鍵詞在P@10標準下的準確性分別提高了19.4%、15.7%和2.3%。
(5)隨著k值的增加,4種算法的P@k指標都有一定程度降低,說明隨著候選關(guān)鍵詞排序的靠后,算法抽取出的關(guān)鍵詞中引入了更多噪聲數(shù)據(jù)。為此,未來需要融入更多文檔內(nèi)部或外部信息以改善算法性能。
為了更清晰地觀察各個算法自動抽取關(guān)鍵詞的效果,現(xiàn)隨機挑選出一本電子書,對其全部評論進行挖掘。算法自動抽取出的前20個候選關(guān)鍵詞結(jié)果如表4所示。
通過分析表4中從TFIDF算法抽取得到的結(jié)果,可以大致推斷出該電子書內(nèi)容是與科幻相關(guān)的,同時也包含了浪漫、打斗元素。然而與其它3種算法相比,由于抽取出的詞匯是一元詞匯,一些信息會變得模糊。例如對于plot(情節(jié)),從TFIDF算法抽取出的結(jié)果中并不能明確知道情節(jié)如何,而TextRank算法抽取出的候選關(guān)鍵詞可以是二元詞匯。從結(jié)果中可以發(fā)現(xiàn),有些評論者想表達的是“fictionplot”,也即科幻情節(jié)。TFIDF+TextRank算法和TFTR算法沿襲了TextRank算法的優(yōu)點,即從評論中抽取出雙詞詞匯,從而使候選關(guān)鍵詞中包含更多評論信息。此外,相比于其它3種算法,TFTR算法抽取結(jié)果中人工標注為有用關(guān)鍵詞的數(shù)目更多。同時,TFTR算法提取出的候選關(guān)鍵詞更加準確、可靠,能更好地抓住不同評論者關(guān)注的焦點。
3 結(jié)語
產(chǎn)品評論關(guān)鍵詞抽取對產(chǎn)品推薦具有重要作用,關(guān)鍵詞抽取質(zhì)量對后續(xù)產(chǎn)品推薦有著直接影響。然而,產(chǎn)品評論因其具有文本短小、詞匯少及詞匯質(zhì)量參差不齊等特征,增大了關(guān)鍵詞提取難度。本文將評論的helpful反饋引入TFIDF中,以提高重要關(guān)鍵詞特征權(quán)重,并結(jié)合Tex-tRank算法,挖掘出評論文本中的產(chǎn)品關(guān)鍵特征。實驗結(jié)果表明,相比于TFIDF算法、TextRank算法和TFID F+Tex-tRank算法,本文提出的TFTR算法挖掘出的產(chǎn)品特征關(guān)鍵詞在P@10標準下的準確性分別提高了19.4%、15.7qe和2.3%。同時,提取出的候選關(guān)鍵詞更能抓住不同評論者關(guān)注的焦點,從而有利于將產(chǎn)品關(guān)鍵詞用于后續(xù)產(chǎn)品推薦。然而,TFTR算法自動抽取出的關(guān)鍵詞中仍含有噪聲詞匯,人工識別剔除工作量大,未來可考慮選取可靠的“種子”詞匯,利用訓練模型對自動抽取出的關(guān)鍵詞作進一步分類。
參考文獻:
[1] 邱小花,李國俊,肖明.基于Sci-2的國外圖書館學情報學研究主題演變分析——以共詞分析為例[J].情報雜志,2013,32(12):110-118.
[2]魏贇,孫先朋.融合統(tǒng)計學和TextRank的生物醫(yī)學文獻關(guān)鍵短語抽取[J].計算機應(yīng)用與軟件,2017,34(6):27-30.
[3]胡學鋼,李星華,謝飛,等.基于詞匯鏈的中文新聞網(wǎng)頁關(guān)鍵詞抽取方法[J].模式識別與人工智能,2010,23(1):45-51.
[4]趙京勝,朱巧明,周國棟,等.自動關(guān)鍵詞抽取研究綜述[J].軟件學報,2017, 28(9):2431-2449.
[5]SPARCK J K.A statistical interpretation of term specificity and its ap-plication in retrieval [J]. Journal of Documentation, 1972, 28(1):11-21.
[6]BLEI D M, NG A Y, JORDAN M I.Latent dirichlet allocation [J].Journal of Machine Learning Research. 2003,3:993-1022.
[7]MIHALCEA R, TARAU P. Textrank: bringing order into text[C]. Pro-ceedings of the 2004 Conference on Empirical Methods in Natural Lan-guage Processing. Association for Computational Linguistics, 2004:404-411.
[8] 張瑾.基于改進TF-IDF算法的情報關(guān)鍵詞提取方法[J].情報雜志,2014, 33(4):153-155.
[9]YI J K, YANC G,WanJ. Category discrimination based feature selec-tion algorithm in Chinese text classification[J].Journal of InformationScience and Engineering, 2016, 32(5):1145-1159.
[10] 張震,曾金.面向用戶評論的關(guān)鍵詞抽取研究——以美團為例[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2019,3(3):36-44.
[11]謝瑋,沈一,馬永征.基于圖計算的論文審稿自動推薦系統(tǒng)[Jl.計算機應(yīng)用研究,2016,33(3):798-801.
[12] 劉竹辰,陳浩,于艷華,等.詞位置分布加權(quán)TextRank的關(guān)鍵詞提取[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2018,2(9):74-79.
[13] 寧建飛,劉降珍.融合Word2vec與TextRank的關(guān)鍵詞抽取研究[J].現(xiàn)代圖書情報技術(shù),2016(6):20-27.
[14] 夏天詞向量聚類加權(quán)TextRank的關(guān)鍵詞抽取[J].數(shù)據(jù)分析與知識發(fā)現(xiàn),2017(2):28-34.
[15]HE G X. FANC J W. CUI H R, et al. Keyphrase extraction based onprior knowledge[C].JCDL, 2018: 341-342.
[16] 劉嘯劍,謝飛,吳信東.基于圖和LDA主題模型的關(guān)鍵詞抽取算法[J].情報學報,2016,35(6):664-672.
[17]SOUCY P,MINEAU G W. Beyond TFIDF weighting for text categori-zation in the vector space model[ C]. IJCAI. 2005,5:1130-1135.
[18] 周錦章,崔曉暉.基于詞向量與TextRank的關(guān)鍵詞提取方法[J].計算機應(yīng)用研究,2019,36(4):1051-1054.
[19]HE R, MCAULEY J. Ups and downs: modeling the visual evolutionof fashion trends with one-class collaborative filtering[C].Proceed-ings of the 25th International Conference on World Wide Web. Inter-national World Wide Weh Conferences Steering Committee, 2016:507-517.
[20] DAVIS J,GOADRICH M. The relationship between Precision-Re-call and ROC curves[C].Proceedings of the 23rd International Con-ference on Machine Learning. ACM, 2006: 233-240.
(責任編輯:黃?。?/p>
作者簡介:尤苡名(1993-),女,浙江理工大學信息學院碩士研究生,研究方向為數(shù)據(jù)挖掘、中文信息處理。