曹春萍 楊青林
摘? 要: 針對現(xiàn)有方法無法有效、快速地識別出網(wǎng)絡中文新詞,且其生命周期比較短的問題,提出了一種基于信息傳播特性的新詞發(fā)現(xiàn)方法研究。利用N-gram算法得出候選詞串列表,基于詞頻和詞語靈活度對垃圾詞串進行過濾,實現(xiàn)基于信息傳播特性的微博新詞統(tǒng)計方法。實驗結(jié)果表明:提出的基于信息傳播特性的新詞發(fā)現(xiàn)方法在查準率、召回率都要比使用中文ICTCLAP9115分詞方法分詞更好,更具有優(yōu)勢。
關鍵詞: 信息傳播;新詞;發(fā)現(xiàn)方法;N-gram算法
中圖分類號: TP301? ? 文獻標識碼: A? ? DOI:10.3969/j.issn.1003-6970.2020.09.053
本文著錄格式:曹春萍,楊青林. 基于信息傳播特性的新詞發(fā)現(xiàn)方法研究[J]. 軟件,2020,41(09):201203
【Abstract】: In view of problem that existing methods can not identify Chinese new words on the Internet effectively and quickly, and their life cycle is relatively short, the paper proposes a new word discovery method based on characteristics of information dissemination. It obtains list of candidate word strings with N-gram algorithm, filters waste word strings based on word frequency and flexibility, realizes statistical method of new words in microblog based on characteristics of information dissemination. Experimental results show new word detection method based on characteristics of information dissemination has better precision and recall rate than the Chinese ICTCLAP9115segmentation method with advantages.
【Key words】: Information dissemination; New words; Discovery method; N-gram algorithm
0? 引言
自微博出現(xiàn)以后,其以實時性和方便性受到廣大網(wǎng)民的歡迎和熱愛,已經(jīng)發(fā)展為網(wǎng)絡應用的愛寵。同時微博上匯聚的龐大用戶以及比較自由的言論環(huán)境,又使微博發(fā)展為切實掌握社會熱點的重要工具。伴隨計算機信息技術和網(wǎng)絡技術的發(fā)展創(chuàng)新和應用,計算機網(wǎng)絡越發(fā)成為大眾信息發(fā)布與文化傳播交流的社會平臺,因此產(chǎn)生一大批全新的網(wǎng)絡用語和熱詞。一些普及度比較高的網(wǎng)絡新詞開始為眾人所認可,并被逐漸擴展到中文詞語庫之中[1]。因為在網(wǎng)絡世界中存在海量文本,而要想在文本中尋找到散落的網(wǎng)絡新詞單獨憑借人工查找、查閱和統(tǒng)計比較困難,因而怎樣在短時間內(nèi)快速有效地對網(wǎng)絡數(shù)據(jù)進行查閱并發(fā)現(xiàn)新詞,這就成為一項迫切需要解決的現(xiàn)實問題。但網(wǎng)絡文本數(shù)據(jù)龐大,因為其相關性比較差、組詞并無規(guī)律,這些就導致部分規(guī)律原理方法很難直接套用;而單條網(wǎng)絡文本因為其文本長度比較短,噪聲比較大[2],這就造成傳統(tǒng)的基于統(tǒng)計學的發(fā)現(xiàn)方法很難提高其最終準確率。因此,本文研究基于信息傳播特性的新詞發(fā)現(xiàn)方法。
1? 基于信息傳播特性的微博新詞發(fā)現(xiàn)方法
相比于常規(guī)的語料訓練,微博語料庫中包含的文本內(nèi)容由于身處網(wǎng)絡世界,要更為龐大復雜。除正常的文本信息以外,還會伴隨諸多無意義的干擾選項,比如說表情符號中的[doge]、[淚]、[微笑]等等;微博用戶或平臺發(fā)布的網(wǎng)頁鏈接,比如http://t.cn/8syl8qn等;符號“//@”用戶名用代表轉(zhuǎn)發(fā)用戶,符號“@”+表示語句中提到的特定用戶;由于絕大多數(shù)微博用戶名不是正式網(wǎng)名,因此所有微博用戶名稱都不具有實際意義;以及微博語料庫中的標點符號,由于文本的失真和非正式性,導致大量微博用戶濫用標點[3]。這幾種字符串并沒有產(chǎn)生新詞,因而能夠?qū)⑵鋸拇幚碚Z料庫中過濾,直接以“空格”來取代,如此可進一步提升語料庫的文本含量并有效降低后續(xù)操作的難度。
1.1? 利用N-gram算法得出候選詞串列表
N-gram模型主要是根據(jù)如下一種假設:第個詞語的出現(xiàn)只和前面?zhèn)€詞語有關系,而和其他詞語之間均無關聯(lián)。我們以來表示這個詞語,如此出現(xiàn)的概率就能夠以來表示,這里使用代表詞串。在保證大量訓練語料的基礎上,按照最大相似規(guī)則[4],就能夠獲取以下公式:
和分別代表詞串和在訓練語料中出現(xiàn)的具體次數(shù)。假設這個詞語可以有機組成一個句子,即,那么這句話的先驗概率就可以用公式代表,如下所示:
之所以將其稱之為N-gram算法下的模型,就因為其單獨反映出連續(xù)個詞語間的關聯(lián)。比較常見的分式模型就是時的Bigram模型和時的Trigram模型。
1.2? 基于詞頻和詞語靈活度過濾垃圾詞串
任何一個新詞的出現(xiàn),勢必會伴隨著絕大多數(shù)群眾的大規(guī)模使用,而使用次數(shù)越少的詞語并不具有發(fā)展為一個新詞的可能性;同時因為互聯(lián)網(wǎng)用戶在建立文檔的時候必然會出現(xiàn)輸入法錯誤的操作,錯別字等各式狀況的發(fā)生,在新詞候選集合中會出現(xiàn)諸多偶然性匹配,這種匹配在性質(zhì)上并不納入新詞考慮范圍內(nèi),絕大多數(shù)這種噪聲元組是沒有辦法通過閾值的篩選,可是依然會有一小部分的噪聲因為彼此之間信息閾值在計算方式上的不同,其統(tǒng)計記錄也會影響到詞語整體最終呈現(xiàn)的準確率[5]。本文利用詞頻和詞語靈活度的方法對上文形成詞串中的垃圾詞串進行過濾,以便有效提高之后新詞統(tǒng)計方法的工作效率。一個具備成為詞語的字符串,勢必會在社會得到廣泛推廣和使用,因而在訓練語料庫中也會頻繁出現(xiàn)。出現(xiàn)頻率較低的詞串在性質(zhì)上會被歸屬為不具備一定意義的有效詞串。通過統(tǒng)計分析得知,92.01%的候選詞串其出現(xiàn)次數(shù)基本上小于等于2,所以本文在詞頻過濾方法的閾值大小設置為2。
另外一方面,按照中文的形成和組詞規(guī)律,會存在一部分字符并不時常出現(xiàn)在詞首或詞尾,這些字符即為“停用字”,主要分為“詞首停用字”和“詞尾停用字”[6]。本文通過詞串的靈活度(代表每一個字符組成詞語的可能性和可行性)和設置閾值的比對,去有效發(fā)現(xiàn)“停用字”。本文以來代表待判字符,以·代表隨意一個字符,有可能會出現(xiàn)在詞首/詞尾,甚至是詞的任何一個位置,由此定義“詞首停用字”為:
上述公式中:代表詞串在訓練語料庫中出現(xiàn)的實際次數(shù);代表字符出現(xiàn)在詞首或詞尾的可能性閾值。實驗中設定閾值為2,共選取出大概200個停用字,如“是”“的”“了”“們”“你”等。對候選詞串完成垃圾過濾以后,本文以統(tǒng)計學方法獲取最終出現(xiàn)的新詞結(jié)果。
1.3? 基于信息傳播特性的微博新詞統(tǒng)計方法
微博新詞與普通詞語在組成結(jié)構(gòu)上有很大不同,如詞語構(gòu)成上相較來說較為自由不受限,并沒有遵循傳統(tǒng)的語法構(gòu)造[7]。由于單純的漢語組成規(guī)則方法,其規(guī)則的制定比較耗時,且可移植性較低;另外雖然單一的N-Gram模型其可移植性較為優(yōu)秀,可其在大規(guī)模數(shù)據(jù)的運作中涉及的計算量比較龐大,所以本文提出了基于信息傳播特性的新詞發(fā)現(xiàn)方法,利用N-Gram方法對新詞進行識別、統(tǒng)計。主要步驟如下所示:
步驟1:首先對文本信息語料庫中的分詞碎片進行預先處理,以便獲取到候選新詞集。在將其加入垃圾詞串庫的MC過程中需要把每一個文本連續(xù)編號以組建一個碎片子集FS,按照上述規(guī)則,F(xiàn)S主要是作為大于2個詞的詞子集而存在。比如:“第一次/大概/還/一知半解/不明覺厲”。按照剛剛的規(guī)則能夠獲得2個FS子集,即“第一次可能”和“不明覺厲”。在N-Gram模型詞串庫MC提取FS的候選語料算法的操作過程具體如下所示:
算法:N-gram中候選新詞提取算法。
輸入:MC//詞串語料庫集合;FS//碎片語料序列;
輸出:CS//候選新詞子集。
過程:
1)在詞串語料庫MC中,按照關鍵詞的提示,候選詞串按照運算規(guī)則提取到FS,將其作為三元的Bi-Gram和四元的Tri-Gram模型內(nèi)的計算對象;
2)對每一個FS中蘊含的詞語頻數(shù)進行統(tǒng)計,之后統(tǒng)一做歸一化處理,最后通過Bi-Gram模型公式(1)分別對FS的三元組、四元組和五元組字符出現(xiàn)的概率進行精準計算。之后將字符串連同其出現(xiàn)的概率值存儲至語料庫內(nèi);
3)按照公式(2)對每一組詞句的分詞結(jié)果出現(xiàn)概率進行比較,選擇最優(yōu)結(jié)果[8],換句話說就是通過公式(3)獲得概率的最大值,若是小概率則利用公式(4)對概率進行計算。得到結(jié)果后,將所有字符串出現(xiàn)的概率按大小關系進行排序,選擇較大的一組字符串作為候選字符串;
4)借助TriGram模型,重復上述過程2)和過程3),獲得候選字符串,最后抽取同時存在于與內(nèi)的相同字符串作為候選語料的新詞序列。
步驟2:通過相鄰熵對候選新詞子集進行成詞概率的過濾。候選新詞一般是三元組或五元組,計算左右相鄰熵均超過閾值,如此便加入新詞子集內(nèi)。候選新詞通常為四元組,首先對左邊鄰近熵進行計算,判斷其是否超過閾值[9-10];一旦超過閾值,繼續(xù)對右邊相鄰熵進行計算,將左右鄰近熵超過閾值的候選新詞納入新詞子集內(nèi)。如果候選新詞判斷為新詞,那么其在語料庫中勢必具備較高的出現(xiàn)頻率,必然“高富帥”肯定會比和它有關的垃圾詞串“富帥不”出現(xiàn)頻率要高。假設候選新詞用表示,那么我們使用詞頻代表在語料庫內(nèi)出現(xiàn)的頻率,一般越大,作為新詞的可能性就越大,二者成正比例關系。根據(jù)有關資料顯示,用來表示兩個事物之間的相關性或親密度。在新詞篩選的過程中,可以用來衡量多個字/詞組合成語句的可能性大小。對于候選新詞而言,其親密度可用以下公式表示:
其中,與分別代表和所指代的詞頻。為了綜合衡量候選新詞庫內(nèi)的詞頻與內(nèi)部的親密度,我們一般采取線性加權對候選新詞的可信度進行計算。用表示新詞的可信度,計算公式如下所示:
上述公式中,和分別代表詞頻與值的標準值。對于詞頻而言,我們一般以公式(7)進行推算:
上列公式中,與分別代表語料庫內(nèi)的新生詞頻最大值與最小值。值的標準推算和詞頻相似。代表權重,用以調(diào)整詞頻與的比值。當時,候選新詞的可信度由且僅有所決定,反之,則由詞頻單獨決定。在對每個候選新詞的可信度進行計算后,我們就可以根據(jù)其可信度對候選新詞進行統(tǒng)計發(fā)現(xiàn),實現(xiàn)新詞發(fā)現(xiàn)。
2? 實驗論證與分析
為保證本文設計的基于信息傳播特性的新詞發(fā)現(xiàn)方法的有效性,進行實驗論證分析。
2.1? 實驗準備
硬件環(huán)境:需要兩臺計算機,(1)配置:Intel Xeon E9-1331v5,4.50 GHz主頻,64 GB內(nèi)存,32位操作系統(tǒng);(2)配置:Intel Xeon E6-2929 v5,3.30 GHz主頻,256 GB內(nèi)存,64位操作系統(tǒng);軟件環(huán)境:(1)操作系統(tǒng)Windows10,(2)操作系統(tǒng)是Cent OS。算法采取JAVA與python雙結(jié)合,編輯工具以Eclipse和IDLE為主。
本次實驗選取9000條微博文本,分成三組作為輸入,分別利用本文方法和中文ICTCLAP9115分詞方法對其做相關處理,按照一系列的計算獲取最終結(jié)果。
2.2? 實驗結(jié)果分析
通過新浪微博APP,隨機抽選取新浪微博中粉絲數(shù)量比較多的微博賬號作為信息采集的起點,利用“滾雪球”的方式,采集到2019年4月1日至2020年4月1日這些微博賬號在微博上公開發(fā)布的每一條微博的網(wǎng)絡IP、信息發(fā)布者、信息發(fā)布時間、信息發(fā)布內(nèi)容等,在對垃圾微博進行過濾等處理后,建立了包括9000條微博的原始數(shù)據(jù)集合。
本文方法和中文ICTCLAP9115分詞方法的實驗對比結(jié)果如下表所示。
分析表1可知,本文提出的基于信息傳播特性的新詞發(fā)現(xiàn)方法在查準率、召回率都要比使用中文ICTCLAP9115分詞方法分詞更好,更具有優(yōu)勢。
3? 結(jié)束語
本文對基于信息傳播特性的新詞發(fā)現(xiàn)方法進行分析與設計,依托信息傳播的特性,收集并提取微博詞語數(shù)據(jù)的普遍特征,結(jié)合新詞出現(xiàn)規(guī)則,對新詞的出現(xiàn)進行統(tǒng)計分析,實現(xiàn)新詞發(fā)現(xiàn)法的創(chuàng)新。實驗論證結(jié)果表明,本文設計的基于信息傳播特性的新詞發(fā)現(xiàn)方法具備極高的有效性,在對微博新詞進行統(tǒng)計查找的過程中,可以有效節(jié)省計算時間,提高查找率和召回率。希望本文的研究能夠為我國新詞發(fā)現(xiàn)方法提供理論依據(jù)和參考。
參考文獻
[1]趙志濱, 石玉鑫, 李斌陽. 基于句法分析與詞向量的領域新詞發(fā)現(xiàn)方法[J]. 計算機科學, 2019, 46(6): 29-34.
[2]陳芬, 高小歡, 彭玥, 等. 融合文本傾向性分析的微博意見領袖識別[J]. 數(shù)據(jù)分析與知識發(fā)現(xiàn), 2019, 3(11): 120-128.
[3]賓晟, 孫更新. 基于多關系社交網(wǎng)絡的協(xié)同過濾推薦算法[J]. 計算機科學, 2019, 46(12): 56-62.
[4]李嘉興, 王晰巍, 常穎, 等. 社交網(wǎng)絡用戶行為國內(nèi)外研究動態(tài)及發(fā)展趨勢[J]. 現(xiàn)代情報, 2020, 40(4): 167-177.
[5]劉偉童, 劉培玉, 劉文鋒, 等. 基于互信息和鄰接熵的新詞發(fā)現(xiàn)算法[J]. 計算機應用研究, 2019, 36(5): 1293-1296.
[6]黃偉, 曹春萍.基于行為分析與傳播個體的微博傳播模型研究[J].軟件, 2019, 40(01): 127-131.
[7]汪文妃, 徐豪杰, 楊文珍, 等. 中文分詞算法研究綜述[J]. 成組技術與生產(chǎn)現(xiàn)代化, 2018, 35(3): 1-8.
[8]劉申凱, 周霽婷, 朱永華, 等. 融合知識圖譜和ESA方法的網(wǎng)絡新詞識別[J]. 計算機技術與發(fā)展, 2019, 29(3): 12-17.
[9]曾浩, 詹恩奇, 鄭建彬, 等. 基于擴展規(guī)則與統(tǒng)計特征的未登錄詞識別[J]. 計算機應用研究, 2019, 36(9): 2704- 2707+2711.
[10]李娟, 虞金中. 基于新詞的新聞命名實體識別研究[J]. 電腦知識與技術, 2018, 14(22): 153-154.
[11]陳海宇.“大數(shù)據(jù)”時代背景下計算機信息處理技術的探討[J].計算機產(chǎn)品與流通, 2020(05): 6.