原默晗 唐晉韜 王 挺
(國防科學技術(shù)大學計算機學院 長沙 410073)
?
一種高效的分布式相似短文本聚類算法*
原默晗唐晉韜王挺
(國防科學技術(shù)大學計算機學院長沙410073)
摘要近似重復在微博等網(wǎng)絡短文本中十分常見,查找和消除近似重復對于網(wǎng)絡信息的有效處理具有非常重要的意義。論文針對相似短文本聚類的特點,在改進shingling、最小哈希和局部敏感哈希算法相結(jié)合的文件相似檢測方法的基礎上,設計了一個高效的短文本聚類方法。該方法通過將文本表示成連續(xù)短字符串集合,并應用最小哈希將集合簡化成一組由數(shù)字組成的文本簽名,通過局部敏感哈希算法得到符合相似度條件的文本聚類。為了適應網(wǎng)絡信息規(guī)模大的特點,論文進一步利用Apache Spark集群計算框架對聚類算法進行了并行化,提高了數(shù)據(jù)處理的效率,并分析了影響算法性能的因素。
關鍵詞文本聚類; 最小哈希; 局部敏感哈希; shingling; Spark
Class NumberTP391.1
1引言
隨著互聯(lián)網(wǎng)和通信技術(shù)的快速進步,電子信息產(chǎn)生了爆炸性的增長。新浪自2009年8月推出微博產(chǎn)品以來,迅速成長為中國微博平臺代表。截止2014年底,微博用戶數(shù)量超5.3億,月活躍用戶數(shù)量達到1.76億,用戶每日發(fā)布微博數(shù)量超過1億條[1],這些微博及其轉(zhuǎn)發(fā)和評論信息產(chǎn)生了海量的短文本。
重復信息在微博短文本中很常見,發(fā)現(xiàn)這些重復或者相似的短文本,對于消除信息冗余,進一步開展觀點挖掘、主題發(fā)現(xiàn)、信息過濾等處理研究,都具有十分重要的意義。現(xiàn)在,已有一系列文本重復判斷的相關技術(shù)。Brin等提出一個叫做COPS(抄襲保護系統(tǒng))的原型系統(tǒng)用于保護電子文檔的知識產(chǎn)權(quán)[3]。Shivakumar等創(chuàng)建了作為斯坦福數(shù)字圖書館工程一部分的SCAM(標準抄襲分析技術(shù))[4]。Broder發(fā)現(xiàn)計算兩篇文檔由shingles組成的集合的相似度就足以代表它們之間的相似度[8]。Lyon等對自動識別抄襲進行了背景理論研究。他們發(fā)現(xiàn)獨立寫作的文檔僅有相對較少的重復三元組。Ferret抄襲系統(tǒng)計算兩篇文檔相同三元組的數(shù)量[5~6]。Shivakumar提出兩種同時計算所有文檔對的方法。這兩種方法假設兩篇文檔包含預設的閾值k個相同指紋時,可能為近似重復[7]。Manku等證明了Charikar[13]的最小哈希可以用于識別大規(guī)模網(wǎng)頁的近似重復[9]。最小哈希是一種當兩篇文檔近似重復時只有小部分位置的指紋不相同。如果兩篇文檔的最小哈希指紋相似,可以認為它們近似重復。不過這些算法在比較相似度時最終還是要進行一對一的比較,算法復雜度達到了n2(n為文檔數(shù)),對于海量微博短文本來說并不適用,應找到更高效的算法。
近年來,短文本聚類成為了一個新的研究熱點。對于重復檢測問題來說,短文本聚類能夠聚集相似文本,幫助研究者快速檢測到重復文本。文本聚類算法可以應用一些通用聚類算法,比如通過將文本表示為布爾向量,可直接應用各種層次聚類算法[2,10~11,19];或者可以結(jié)合詞頻信息,利用定量數(shù)據(jù)聚類算法[12~14,20]判斷在文本集最相關的對象集合。上述方法可以避免所有文檔對的一對一相似度比較帶來的性能開銷;然而,對于短文本重復檢測任務,這些通用聚類算法的效果并不是很好。這是因為文本數(shù)據(jù)有一系列特別的性質(zhì)需要特定算法來處理:如文本表示的維度很大,而需要表示的文本很稀疏;一個文本語料庫可能非常大,而其中的詞語往往與其他詞語具有相關性;不同文本中詞語的數(shù)量可能差別巨大。
本文旨在對存在大量重復和相似信息的短文本進行聚類,以剔除信息中的冗余。而文本相似性的度量成為應用文本聚類算法檢測重復文本的關鍵。本文以經(jīng)典的文本相似判斷算法為相似度計算基礎,針對短文本聚類問題的特點,從提升可能相似候選組精度,生成聚類這個方面進行了改進,實現(xiàn)了一種高效的短文本聚類算法。進一步,采用Apache Spark[16]框架,對算法進行并行化實現(xiàn),從而高效地實現(xiàn)海量短文本聚類。通過在真實大規(guī)模數(shù)據(jù)上的實驗,本文分析了在并行環(huán)境中影響算法效率的諸因素。
2Shingling、最小哈希和局部敏感哈希相結(jié)合的文本相似度計算方法
Shingling[8]技術(shù)將判斷文本之間的相似度的問題轉(zhuǎn)換為判斷文本特征集合之間是否有相對較大的交集的問題。為降低計算復雜度,使用最小哈希(minHashing)[17]對文本特征集合進行壓縮,使用壓縮后的結(jié)果(文本簽名)對集合之間的相似度進行估計;并通過局部敏感哈希(LSH)[9]減少比較次數(shù),只對有可能相似的文本對進行比較。
2.1Shingling
一段文本本質(zhì)上就是一個字符串。文本的k-shingle[8]是指文本中連續(xù)的k個字符的子串。那么,每個文本就可以表示成文本中出現(xiàn)的k-shingle的集合。相似的文本將會有大量的shingle是相同的。
下一步將各文本的shingle集合轉(zhuǎn)化叫做特征矩陣的布爾矩陣。這個矩陣的每行代表shingle全集中各shingle的序號,每列代表每個不同的文檔的shingle集合。當矩陣中元素是1時,代表行號相應的shingle在相應列號的文本集合中存在,不存在時為0。在實際的實現(xiàn)過程中,因為特征矩陣是稀疏矩陣,為了節(jié)約儲存空間,對各個文本可以只保存矩陣中元素為1的行號(shingle在全集中的序號)。
2.2最小哈希
定義最小哈希函數(shù)h(C)等于特征矩陣在某種行排列順序之下特征矩陣中列C中第一次出現(xiàn)1的行號。代表兩個文本的shingle集合的特征矩陣中的兩列,經(jīng)過對行的隨機排列之后得到的兩個最小哈希值相等的概率等于兩集合的Jaccard相似度[18]:
SIM(C1,C2)=|C1∩C2|/|C1∪C2|
即兩個集合交集的大小與并集大小的比值。
基于該結(jié)論,可以利用最小哈希算法生成文本簽名,模擬文本特征集合的相似度運算。最小哈希算法描述如下:
輸入:文本集生成的特征矩陣cm,簽名長度n
輸出:文本集生成的簽名矩陣sm
算法描述:
hashCache=生成n個哈希函數(shù)
for(cm的每行數(shù)據(jù))
for(該行的每個數(shù)據(jù))
for(每個hashCache中的函數(shù))
計算cm中相應行列元素的minHashing值
保存該值到sm以哈希函數(shù)編號為行號,cm列號為列號的元素
隨機選擇n個排列轉(zhuǎn)換特征矩陣的行順序,使用這n次排列對特征矩陣的每列可以得到n個最小哈希值,這些最小哈希值組成了對該列代表的文本的一個簽名。對于達到一定相似度的文本,因為簽名中相應位置的最小哈希值相等的概率等于簽名相應shingle集合的Jaccard相似度,所以它們的簽名的相似度期望也應該是文本相似度。以這些簽名作為列,以不同的排列作為行構(gòu)成一個簽名矩陣。
2.3局部敏感哈希(LSH)
用最小哈希將文本壓縮成簽名同時還保持文本之間的預期相似度。但在任意文檔對之間進行相似度計算,對于海量文本來說計算復雜度仍然太高。而對于文本聚類算法來說,只有相似度較高的文本對才會影響聚類結(jié)果,因此只需要通過局部敏感哈希算法(Locality-Sensitive Hashing,LSH)找出相似度有可能超過閾值簽名對,而不需關注所有文本對,從而減少對比次數(shù)。
LSH算法描述如下:
輸入:文本集生成的簽名矩陣sm,列分組數(shù)b,組內(nèi)簽名數(shù)r
輸出:一個包含所有相似度超過閾值的文本對編號的集合p
算法描述:
p=空集合
for(iin range(b))
取sm中i*r到(i+1)*r行的子矩陣
子矩陣列相同的列號放入同一個候選組
一對一比較組內(nèi)文本相似度,超過閾值的并入p內(nèi)
將簽名矩陣劃分成b個組,每組由r行組成,對于一組中部分簽名完全相同的文本合成一個候選組。將文本之間的Jaccard相似度閾值設定為s,那么簽名相似度的期望也是s,對應位置的最小哈希值相等的概率也是s。要選擇r和b,在簽名矩陣中某組中所有行(對應位置的最小哈希值)相等的概率是sr,至少有一行不相同的概率是1-sr,任何組中都至少有一行的簽名不相同的概率為(1-sr)b,至少有一組中所以簽名都相同的概率,也就是相似度超過閾值的文本,將會被放入同一個候選組中的概率為1-(1-sr)b。在通過對b和r的選擇,使同一候選組中非相似文本比例(即偽正確)越低越好。同時,真正高于閾值相似度的文本會被至少一次進入候選組中,那些沒有一次進入候選組中而相似度還超過閾值的文本比例(即偽錯誤)越低越好。最后對在各候選組內(nèi)一對一進行文本相似度比較,輸出相似度超過閾值的文本對。
3大規(guī)模短文本聚類算法
第2節(jié)中介紹的方法已可以直接應用于文本重復檢測任務。雖然通過局部敏感哈希等方法降低了比較次數(shù),但是候選組內(nèi)部一對一的相似性比較對海量的短文本來說性能代價仍然太大。我們希望通過對文本簽名的聚類,將粗略的候選組轉(zhuǎn)化為精確的聚類組,避免組內(nèi)一對一相似性比較,從而大大降低比較次數(shù)。
由于在第2節(jié)中介紹的算法只要保證偽錯誤率很低,對偽正確還有進一步剔除的機會。所以候選組只是一個比較粗略的分組。通過同時增大簽名矩陣b和r的值,即增加文本對應簽名的長度,提取文本更多的最小哈希值;將簽名矩陣分成b組后,將組內(nèi)部分簽名相同的文本聚集在一起,得到b個精確的聚類組。最后將b個分組進行聚類,生成最終的相似文本集合。改進后算法的流程如圖1所示。

圖1 短文本聚類流程
本文選擇r=12,b=56作為局部敏感哈希的參數(shù),為了提高輸出精確的聚類組,度量了文本相似度對偽正確率和偽錯誤率的影響。圖2表明,當文本相似度低于0.8時,sr接近0,偽正確的概率也就很低。圖3表明當文本相似度超過0.8時,1-(1-sr)b接近1,就是說,偽錯誤的概率很低。因此,選擇了0.8作為文本相似度閾值。
4基于Apache Spark框架的算法并行化
第3節(jié)中介紹的方法需要對文本計算更長的簽名,以達到精確聚類的效果。需要的簽名長度是一對一相似度比較的幾倍,甚至是十倍,因此需要更大的內(nèi)存空間,單機一般很難滿足性能需求,操作系統(tǒng)會使用磁盤作為虛擬內(nèi)存將嚴重降低算法效率。為了提高效率,就需要使用提供了更多物理內(nèi)存和計算核心的集群運算框架來實現(xiàn)這個算法。

圖2 簽名中一組相等的概率

圖3 至少放入一組聚類的概率
在上節(jié)的例子中,當r=12,b=56時,每個文本的簽名長度是672。如果要對1000萬個文本進行聚類,那么整個簽名矩陣就需要超過50G的儲存空間,再加上其它的臨時數(shù)據(jù)對象可能就要超過60G的物理儲存空間。
Apache Spark是一個開源集群運算框架。相對于Hadoop的MapReduce會在運行完工作后將臨時數(shù)據(jù)存放到磁盤中,Spark使用了內(nèi)存內(nèi)運算技術(shù),能在數(shù)據(jù)尚未寫入硬盤時即在內(nèi)存內(nèi)分析運算[15]。
首先把實驗數(shù)據(jù)集中的文本劃分到各節(jié)點中進行預處理,生成一些Spark中分配到各節(jié)點的broadcast變量,然后通過一系列mapReduce操作實現(xiàn)第3節(jié)中的聚類算法,最后輸出包含相似文本編號的總的聚類。算法具體的流程如圖4所示。
Spark并不提供數(shù)組下標的方法,只能把數(shù)組中每項數(shù)據(jù)與下標保存在一起,因此需要新舊編號的對應字典和文本集shingle全集與其中shingle編號對應字典。后續(xù)的算法中每個節(jié)點中的每個核心都需要查詢其中的數(shù)據(jù),所以這兩個數(shù)據(jù)要保存成Spark框架下的broadcast變量。用索引生成的字典來保存數(shù)據(jù)也會提高后續(xù)查詢的效率。

圖4 Apache Spark實現(xiàn)框架
Spark框架下使用RDD(彈性分布式數(shù)據(jù)集)數(shù)據(jù)結(jié)構(gòu)實現(xiàn)特征矩陣、簽名矩陣。由于生成這些矩陣時,每個文本是獨立生成,按行保存在RDD數(shù)組中,分布在不同的節(jié)點中,而算法的最后步驟,文本聚類劃分要按照列對比簽名,因此要對分布保存的矩陣進行一次轉(zhuǎn)置。通過對每個矩陣中元素編號,對列數(shù)取余數(shù),再合并余數(shù)相同的元素,可以生成按照列保存的轉(zhuǎn)置矩陣。
5實驗與分析
本文的主要目標是實現(xiàn)相似文本的高效聚類,主要關注算法在大規(guī)模數(shù)據(jù)處理下的效率問題。而對于聚類算法的準確率的分析,將是下一步的工作。因此,本文使用一個包含1500萬條微博評論(1.5GB)的短文本數(shù)據(jù)庫作為實驗數(shù)據(jù)集,以評估和分析本文方法在大規(guī)模短文本數(shù)據(jù)上的表現(xiàn)。在進行文本聚類之前,先對微博評論進行預處理。通過引用符號和@符號,去掉評論中的引用、用戶提及和表情符號,然后只保留微博評論中的漢字,最后去掉長度小于6的評論,長度過短的評論是無法表達實際意義的。經(jīng)過預處理后大概2/3的微博評論(1000萬條)符合長度要求。
在上述數(shù)據(jù)中,70.11%的評論信息在預處理之后都是20字以下的文本,文本長度相對較短,因此選擇2-shingle的字串為文本的shingle集合,既可以進行相似度比較,又可以保持一定的文本差異。過高的相似度對于微博評論這種短文本,就幾乎相當于查找完全重復了。由于我們的目標是進行相似文本聚類,在相似度過低的情況下,文本相似經(jīng)過傳遞后,不太相似的文本會被劃分為一類,造成誤差。因此實驗中,將文本之間的Jaccard相似度s設定在80%。
本文的實驗環(huán)境為四臺服務器形成Spark集群,服務器配置為Intel Xeon CPU E5-1620v2@3.70GHz×8,64GB的內(nèi)存,其中一臺作為主節(jié)點(master),三臺作為工作節(jié)點(worker),操作系統(tǒng)為CentOS 6.5,節(jié)點間網(wǎng)絡通信使用千兆交換機。
5.1聚類算法的實現(xiàn)效果評估
實現(xiàn)第3節(jié)中短文本聚類算法后,分別選取實驗數(shù)據(jù)集中不同數(shù)量的微博評論進行聚類效率評估。對不同的評論數(shù)目,效率的比較見圖5。這種實現(xiàn)只是在單核中運行,在對150萬條評論聚類時已經(jīng)需要超過7小時,效率非常低。對1500萬條評論聚類時,由于物理內(nèi)存不足使用虛擬內(nèi)存,沒有完成算法運行。因此在單機單核的運行環(huán)境下,不足以完成對大量數(shù)據(jù)的高效聚類,在集群中并行化實現(xiàn)是很必要的。

圖5 在單核中聚類算法,不同條目數(shù)的運行時間對比
5.2算法并行化的相關實驗
將大規(guī)模對數(shù)據(jù)劃分成子任務,是本文所介紹的算法,并行化過程中對于算法性能的影響很大。對數(shù)據(jù)集進行劃分,分配到不同的進程中進行處理,Spark將這些劃分平均分配到各節(jié)點,各核心。劃分數(shù)量較少的情況下,每一份需要的執(zhí)行時間就會更多,而執(zhí)行一次map操作的總會有一兩個子進程拖到最后,子進程執(zhí)行時間很長的情況下,會延長這次map操作時間,使其他核心空閑起來。多次的map操作之后,會產(chǎn)生大量的核心空閑時間,嚴重影響效率。當劃分數(shù)較多時,情況恰恰相反,延遲到最后的子進程執(zhí)行時間很短,最后執(zhí)行的幾個子進程會很快完成,減少空閑時間。但是劃分過多的情況下,子進程之間的轉(zhuǎn)換又會消耗更多的時間同樣影響效率。
為了分析數(shù)據(jù)集劃分對算法性能的影響,本文比較了對數(shù)據(jù)集不同劃分數(shù)下算法的執(zhí)行時間,圖6表明了150萬條微博數(shù)據(jù)的在(1+3)×8個核心下的運行時間,可以看到320個子進程效率是最高的。

圖6 150萬條評論,在(1+3)×8個核心上,對不同劃分的用時對比
在集群環(huán)境中實現(xiàn)算法時,使用核心的數(shù)目對效率的影響也是很大的。為了分析核心數(shù)目對性能的影響,本文比較了在單機和集群中使用不同核心數(shù)目下,劃分都為320時算法的執(zhí)行時間。單機環(huán)境下不同核心數(shù),效率的比較見圖7,集群環(huán)境下不同核心數(shù),效率的比較見圖8。
可以看出,不論是在單機和集群環(huán)境下,核心數(shù)從兩個提升到四個效率都有顯著的提高,幾乎提高了一倍,而從四個核心增加到六個、八個,效率提升就不太明顯。產(chǎn)生這種情況的原因是在一個節(jié)點上八個核心可以在同一時刻運行八個進程,而在同一時刻訪問內(nèi)存的進程只有一個,造成同時運行的進程進行排隊,而同時運行四個進程,通過操作系統(tǒng)調(diào)度不需要過多的排隊。不過核心的多效率還是會有所提高的,要是綜合考慮能耗或者經(jīng)濟因素,四個核心應該是合適的選擇。
在集群環(huán)境中節(jié)點之間需要進行數(shù)據(jù)通信,由于網(wǎng)絡的帶寬遠小于內(nèi)存帶寬,跨節(jié)點間的reduce操作會對效率產(chǎn)生顯著的影響,因此需要比較核心數(shù)相同節(jié)點不同情況下的執(zhí)行時間。由于實驗資源有限,只能在核心數(shù)同為6,不同的機器數(shù),劃分為320個任務的環(huán)境下進行實驗。從圖9可以看出,因為本文介紹的聚類算法,不同的數(shù)據(jù)集劃分之間數(shù)據(jù)相關性不強,節(jié)點之間不需要過多的通信,一個節(jié)點中同時運行的進程會減少,訪問內(nèi)存不需過多的排隊,所以總核心數(shù)相同的情況下更多的節(jié)點,相對較少的節(jié)點內(nèi)核心數(shù)會有更高的效率。

圖7 單機多核,劃分為320個任務的用時

圖8 集群,劃分為320個任務的用時

圖9 核心數(shù)同為6,不同的機器數(shù),劃分為320個任務的用時
6結(jié)語
本文介紹了通過改進shingling、最小哈希和局部敏感哈希算法相結(jié)合的方法,以文本中文字相對位置為文本特征,應用Apache Spark框架并行高效地實現(xiàn)大規(guī)模短文本聚類的算法。本文還對算法進行一系列關于效率的分析,分析了Spark的環(huán)境參數(shù)對性能的影響。本文主要關注算法的效率問題,對于準確率的實驗與分析,將是下一步工作的重點。同時,擴大集群的規(guī)模,分析節(jié)點間數(shù)據(jù)通信對效率的影響,也是進一步提高數(shù)據(jù)處理性能的途徑。
參 考 文 獻
[1] Wikipedia. Sina Weibo[EB/OL]. en.wikipedia.org/wiki/Sina_Weibo.
[2] Andritsos P, Tsaparas P, Miller R J, et al. LIMBO: Scalable clustering of categorical data[C]//EDBT,2004:123-146.
[3] Brin S, Davis J, Garcia-Molina H. Copy detection mechanisms for digital documents[C]//ACM SIGMOD Record. ACM,1995,24(2):398-409.
[4] Lyon C, Barrett R, Malcolm J. A theoretical basis to the automated detection of copying between texts, and its practical implementation in the Ferret plagiarism and collusion detector[D]. Plagiarism: Prevention, Practice and Policies,2004.
[5] Lyon C, Barrett R, Malcolm J. Plagiarism is easy, but also easy to detect[M]. Ann Arbor, MI: Scholarly Publishing Office, University of Michigan Library,2006.
[6] Shivakumar N, Garcia-Molina H. Finding near-replicas of documents on the web[M]//The World Wide Web and Databases. Springer Berlin Heidelberg,1999:204-212.
[7] Broder A Z. Identifying and filtering near-duplicate documents[C]//Combinatorial pattern matching. Springer Berlin Heidelberg,2000:1-10.
[8] Manku G S, Jain A, Das Sarma A. Detecting near-duplicates for web crawling[C]//Proceedings of the 16th international conference on World Wide Web. ACM,2007:141-150.
[9] Henzinger M. Finding near-duplicate web pages: a large-scale evaluation of algorithms[C]//Proceedings of the 29th annual international ACM SIGIR conference on Research and development in information retrieval. ACM,2006:284-291.
[10] Gibson D, Kleinberg J, Raghavan P. Clustering categorical data: An approach based on dynamical systems[J]. The VLDB Journal,2000,8(3-4):222-236.
[11] Guha S, Rastogi R, Shim K. ROCK: A robust clustering algorithm for categorical attributes[C]//Data Engineering, 1999. Proceedings., 15th International Conference on. IEEE,1999:512-521.
[12] Guha S, Rastogi R, Shim K. Cure: an efficient clustering algorithm for large databases[J]. Information Systems,2001,26(1):35-58.
[13] Ng R T, Han J. Clarans: A method for clustering objects for spatial data mining[J]. Knowledge and Data Engineering, IEEE Transactions on,2002,14(5):1003-1016.
[14] Birch Z T. an efficient data clustering method for very large databases/T. Zhang, R. Ramakrishnan, M. Livny[C]//Proc. of the ACM SIGMOD Conf. on Management of Data.-Montreal: ACM Press,1996:103-114.
[15] Xin R S, Rosen J, Zaharia M, et al. Shark: SQL and rich analytics at scale[C]//Proceedings of the 2013 ACM SIGMOD International Conference on Management of data. ACM,2013:13-24.
[16] Apache Spark.[EB/OL]. spark.apache.org,2015.
[17] Broder A Z, Charikar M, Frieze A M, et al. Min-wise independent permutations[J]. Journal of Computer and System Sciences,2000,60(3):630-659.
[18] Broder A Z. On the resemblance and containment of documents[C]//Compression and Complexity of Sequences 1997. Proceedings. IEEE,1997:21-29.
[19] Karypis M S G, Kumar V, Steinbach M. A comparison of document clustering techniques[C]//KDD workshop on Text Mining,2000.
[20] Zhao Y, Karypis G. Empirical and theoretical comparisons of selected criterion functions for document clustering[J]. Machine Learning,2004,55(3):311-331.
An Efficient Distributed Similar Short Texts Clustering Algorithm
YUAN MohanTANG JintaoWANG Ting
(College of Computer, National University of Defense Technology, Changsha410073)
AbstractNear-duplicates are abundant in Weibo like short texts in the Internet. Detecting and eliminating them is important for effectively processing information from the web. According to the features of short text clustering, this paper improves the combination of the shingling algorithm, minHashing and locality sensitive hashing, generates an algorithm that does short texts clustering effectively. The paper accosicates with each text the set of shingles that appear within the text, and replace short texts by digits representations called signatures by minHashing to find text clusters that meet the similarity thresholdwith locality sensitive hashing. In order to process the huge amount of information from the Internet, this paper further uses Spark Apache clustering algorithm to improve the efficiency of data processing, and analyzes the factors that affect the performance of the algorithm.
Key Wordstext clustering, minHashing, LSH, shingling, Spark
* 收稿日期:2015年11月7日,修回日期:2015年12月25日
基金項目:國家自然科學基金項目(編號:61200337)資助。
作者簡介:原默晗,男,碩士研究生,研究方向:自然語言處理。唐晉韜,男,博士,講師,研究方向:社會網(wǎng)絡分析、自然語言處理。王挺,男,博士,教授,博士生導師,研究方向:自然語言處理。
中圖分類號TP391.1
DOI:10.3969/j.issn.1672-9722.2016.05.026