高盛祥,趙 瑤,余正濤,黃于欣
(昆明理工大學(xué) 信息工程與自動化學(xué)院,昆明 650500)
(昆明理工大學(xué) 云南省人工智能重點(diǎn)實(shí)驗(yàn)室,昆明 650500)
E-mail:huangyuxin2004@163.com
隨著互聯(lián)網(wǎng)的快速發(fā)展,案件發(fā)生后在短時(shí)間內(nèi)會產(chǎn)生大量的微博文本,為了使用戶充分了解案件的相關(guān)信息,掌握案件的發(fā)生發(fā)展脈絡(luò),通過時(shí)間順序來總結(jié)案件輿情生成時(shí)間線具有重要的研究意義.
輿情時(shí)間線生成可以看做在時(shí)間維度上對文本進(jìn)行內(nèi)容歸納和概要生成的任務(wù)[1,2].早期的時(shí)間線生成任務(wù)主要關(guān)注于如何確定事件發(fā)展過程中重要的日期節(jié)點(diǎn).例如,Kessler等人[3]提出一種根據(jù)日期下句子的數(shù)量判定日期的重要程度,根據(jù)搜索查詢自動構(gòu)建時(shí)間線.在此基礎(chǔ)上,Yan等人[4]通過摘要的方法生成一種進(jìn)化的跨時(shí)間摘要(ETTS)時(shí)間線,在不同的時(shí)間范圍內(nèi)生成局部和全局摘要,選擇得分最高的摘要句生成時(shí)間線.但是上述研究僅基于統(tǒng)計(jì)的方法來確定重要的時(shí)間節(jié)點(diǎn)而沒有考慮輿情新聞內(nèi)容的關(guān)聯(lián)性.Nguyen[5]等人提出一種集群間排名算法,該算法將來自多個(gè)集群的事件作為輸入,并根據(jù)事件的內(nèi)容相關(guān)性和顯著性對句子進(jìn)行排名,構(gòu)成事件主題時(shí)間線.Steen等人[6]將描述同一事件的句子表征到高維空間然后進(jìn)行聚類,生成摘要候選句,通過打分的方式選出最佳摘要句,最終生成事件時(shí)間線.
與傳統(tǒng)的時(shí)間線生成任務(wù)不同,案件輿情通常圍繞某一特定案件展開討論,這些輿情新聞通常會關(guān)注該案件相關(guān)的案件要素,如涉案人員、案發(fā)地點(diǎn)等信息.如表1列舉了杭州女子失蹤案相關(guān)的輿情新聞,可以看到所有的輿情文本均關(guān)注到了杭州(案發(fā)地點(diǎn))、女子和丈夫(涉案人員)等信息,這些相同的要素可能導(dǎo)致微博文本在高維的聚類空間中出現(xiàn)重疊.通過分析表1我們發(fā)現(xiàn),雖然這些微博文本都是描述杭州女子失蹤案的輿情新聞,但是微博文本(1)主要關(guān)注女子失蹤的事實(shí),而文本(2)則關(guān)注女子丈夫殺人分尸的過程,而文本(3)又關(guān)注了女兒的心理及撫養(yǎng)問題,每個(gè)微博文本雖然都有相同的要素(表1中的黑體字),但是也存在和當(dāng)前話題相關(guān)的差異性要素(表1中的仿宋體字).我們認(rèn)為可以通過從不同微博文本中抽取差異性的案件要素來增強(qiáng)微博文本的區(qū)分度.因此本文提出一種差異性案件要素增強(qiáng)的案件輿情時(shí)間線生成方法,在文本表征的過程中,將差異性案件要素和時(shí)間要素作為額外的增強(qiáng)信息來強(qiáng)調(diào)不同文本之間的差異性,最后基于K-Means聚類方法生成案件輿情時(shí)間線.
表1 “杭州女子失蹤案”數(shù)據(jù)集(部分)Table 1 Dataset of “Hangzhou Woman Missing Case”
基于上述思想,本文提出一種差異性案件要素增強(qiáng)的案件輿情時(shí)間線生成模型.該模型主要包括3個(gè)部分:1)抽取差異性要素和案件時(shí)間,并將它們與微博文本一起作為BERT(Bidirectional Encoder Representations from Transformers)[7]模型的輸入,生成文本的高維向量表征;2)利用自編碼器將高維向量表征經(jīng)過線性變換為低維特征向量,通過BOW(Bag of word)重構(gòu)文本提高上下文一致性;3)基于該低維特征向量和K-Means聚類的方法,并通過自編碼過程中的重構(gòu)損失和聚類損失不斷微調(diào)聚類中心,生成最終輿情案件時(shí)間線.所描述的模型圖結(jié)構(gòu)如圖1所示.
圖1 差異性案件要素增強(qiáng)的案件輿情時(shí)間線生成模型圖Fig.1 Timeline generation model diagram of case public opinion enhanced by different case elements
在編碼階段,本方法首先抽取差異性要素k和表示案件時(shí)間t,然后將差異性要素k、案件時(shí)間t和微博文本c作為BERT模型的輸入,進(jìn)行文本表征.
2.1.1 差異性要素
首先在涉案輿情時(shí)間線數(shù)據(jù)集中,根據(jù)數(shù)據(jù)集的微博文本數(shù)目,通過詞頻-逆文檔頻率(term frequency-inverse document frequency,TF-IDF)[8]算法抽取描述案件的10個(gè)案件要素,記作kdoc.然后在每條微博文本中,使用同樣的方法選擇詞頻最高的5個(gè)案件關(guān)鍵詞,則第i條微博文本的案件關(guān)鍵詞記作kconti.最后選取每條微博文本中非案件要素的案件關(guān)鍵詞作為差異性要素ki,如公式(1)所示:
ki=kconti-kdoc
(1)
其中,i表示第i條微博文本的差異性要素,-表示案件關(guān)鍵詞與案件要素做差值運(yùn)算.
2.1.2 案件時(shí)間
在案件輿情時(shí)間線生成過程中,案件時(shí)間是一個(gè)很重要的因素,在本文的數(shù)據(jù)集中,案件時(shí)間是從微博文本的發(fā)文時(shí)間中獲得的.從微博文本提取案件時(shí)間為YYYY-MM-DD,其中,YYYY表示年,MM表示月,DD表示日.然后,如文獻(xiàn)[9,10]提出的方法,將案件時(shí)間按日期從小到大排序,取最小的案件時(shí)間表示為時(shí)間標(biāo)簽0,然后將其他的案件時(shí)間與該最小的案件時(shí)間做差值,差值結(jié)果作為其他案件時(shí)間對應(yīng)的時(shí)間標(biāo)簽值t.
2.1.3 編碼層
在編碼層階段,本文與傳統(tǒng)的BERT模型不同,采用的BERT模型的輸入如圖1所示,BERT的輸入部分是個(gè)線性序列,每一條輸入文本si由差異性要素ki、時(shí)間標(biāo)簽ti和微博文本ci拼接得到,它們通過分隔符[SEP]分割,最前面和最后分別增加標(biāo)志符號[CLS]和[SEP],如公式(2)所示:
si=ki⊕ci⊕ti
(2)
其中,i表示第i條輸入文本,⊕表示拼接運(yùn)算.
然后,經(jīng)過BERT得到文本的高維表征vi,如公式(3)所示:
vi=BERT(si)
(3)
其中,BERT()表示BERT函數(shù),i表示第i條高維向量.
經(jīng)過BERT編碼之后得到文本通用特征向量,為了更好的捕獲文本間的關(guān)系,在解碼過程中,只使用自編碼器的解碼部分,本文將經(jīng)過解碼器得到的高維特征向量通過線性變換構(gòu)造低維特征向量,具體做法如下:
該高維表征vi經(jīng)過自編碼進(jìn)行線性降維(MLP),得到文本的低維表征vdi,如公式(4)所示:
vdi=MLP(vi)
(4)
其中,MLP()表示自編碼器中對高維表征vi進(jìn)行線性降維.
本文引入用于從BERT語言模型進(jìn)行預(yù)訓(xùn)練得到文本的向量表示,然后經(jīng)過非線性變換重構(gòu)此文本表示,在線性降維過程中,使用詞袋模型(BOW)重構(gòu)文本[11]提升聚類性能,在重構(gòu)文本表示過程中的重構(gòu)損失為Lossrec,如公式(5)所示:
(5)
其中,mi∈[1,2,…,|V|],θ是BERT中編碼部分的參數(shù),θ1是自編碼器中重構(gòu)之后的文本參數(shù),V是詞典的大小.
經(jīng)過線性降維之后得到壓縮數(shù)據(jù),本文選擇k-means算法作為聚類算法,但由于在k-means算法中,不同的聚類中心會導(dǎo)致不同的聚類結(jié)果,從而得到局部最優(yōu),而得不到全局最優(yōu),為了解決這一問題,本文引入軟聚類[12]算法,將文本以一定的概率分配到各個(gè)類別中.首先隨機(jī)初始化聚類中心,然后重復(fù)以下2兩個(gè)步驟.
步驟1.計(jì)算一個(gè)向量文本放入每個(gè)簇的概率;
步驟2.計(jì)算輔助的概率分布,作為編碼網(wǎng)絡(luò)的目標(biāo).網(wǎng)絡(luò)權(quán)重和聚類中心會迭代更新,直到滿足條件為止.
針對步驟1,向量zi放入uj簇的概率符合自由度為1的學(xué)生t-分布[13]Q,如公式(6)所示:
(6)
其中,qij表示使用學(xué)生t-分布作為函數(shù)衡量向量i的嵌入表示zi和類j的中心uj之間的相似性得分.
針對步驟2,本文使用一個(gè)輔助目標(biāo)分布P,與相似性得分qij相比,該概率的目的是提高聚類純度,定義如公式(7)所示,其定義依賴于qij的分布.
(7)
每次迭代需要更新的參數(shù)如公式(8)和公式(9)所示:
(8)
(9)
公式(8)是優(yōu)化自編碼中的編碼端參數(shù),公式(9)使優(yōu)化軟聚類中心.其中,α是學(xué)生t-分布的自由度,值為1.
聚類通過最小化軟聚類標(biāo)簽分布Q和輔助目標(biāo)分布P之間的KL散度來得到最優(yōu)的聚類結(jié)果,如公式(10)所示:
(10)
該公式也是該軟聚類過程中的損失函數(shù),最小化目標(biāo)函數(shù)Lossclu是自訓(xùn)練[14]的一種形式.
在軟聚類過程中,僅僅使用聚類損失會使嵌入特征空間被篡改[15],因此自編碼器的重構(gòu)損失也被加入到損失函數(shù)中,與聚類損失同時(shí)被優(yōu)化,最終得到的文本損失為Loss,如公式(11)所示,通過最終損失不斷微調(diào)BERT,優(yōu)化整個(gè)聚類過程:
Loss=Lossrec+Lossclu
(11)
其中,Lossrec為重構(gòu)損失,Lossclu為聚類損失.
本文從新浪微博中構(gòu)建兩種不同討論熱度的涉案輿情時(shí)間線數(shù)據(jù)集.涉案輿情時(shí)間線數(shù)據(jù)集的統(tǒng)計(jì)信息如表2所示,案件時(shí)間跨度描述的是微博文本中所包含的不同案件時(shí)間,它決定了聚類中心的數(shù)目.“杭州女子失蹤案”構(gòu)建的是從2020年7月18日~2020年7月27日共7420條數(shù)據(jù),其中,案件時(shí)間跨度是11天;“女子不堪家暴跳樓案”構(gòu)建的是2020年7月22日~2020年7月27日共2719條數(shù)據(jù),其中,案件時(shí)間跨度是6天.
表2 涉案輿情時(shí)間線數(shù)據(jù)集的統(tǒng)計(jì)信息Table 2 Statistical information of the public opinion timeline data set involved in the case
訓(xùn)練集與測試集的相關(guān)信息如表3所示,涉案輿情時(shí)間線數(shù)據(jù)集的訓(xùn)練集和測試集的比例劃分為9∶1.其中,“杭州女子失蹤案”的訓(xùn)練集是6677條,測試集是743條;“女子不堪家暴跳樓案”的訓(xùn)練集是2447條,測試集是272條.
表3 訓(xùn)練集與測試集的相關(guān)信息Table 3 Information about the training set and test set
在兩種不同的涉案輿情時(shí)間線數(shù)據(jù)集中的差異性要素的分布情況如圖2所示,其橫軸表示微博文本中的差異性要素的個(gè)數(shù),其縱軸表示微博文本中的差異性要素的個(gè)數(shù)在涉案輿情時(shí)間線數(shù)據(jù)集中的占比,當(dāng)差異性要素為0時(shí),本文在拼接文本時(shí)將不進(jìn)行拼接操作,此時(shí)BERT編碼器的輸入為微博文本和案件時(shí)間.
圖2 涉案輿情時(shí)間線數(shù)據(jù)集的差異性要素的分布情況Fig.2 Distribution of the different elements of the public opinion timeline data set involved in the case
本文使用的是Google提供中文訓(xùn)練的BERT模型,將模型BERT的CLS位置的輸出向量句子的向量表示,詞典為BERT中文預(yù)訓(xùn)練模型chinese_L-12_H-768_A-12中的vocab.txt文件.在實(shí)驗(yàn)過程中,批次大小設(shè)置為256,學(xué)習(xí)率為1e-4.在自編碼過程中,批次大小設(shè)置為64,以0.01的學(xué)習(xí)率和0.9的動量值初始化隨機(jī)梯度下降(SGD).在重構(gòu)過程中,V的大小與BERT詞典大小一致為30000條.在聚類過程中,為了減小初始中心對K-Means聚類性能的影響,本文重復(fù)100次隨機(jī)初始化聚類中心[16],并選擇最佳中心點(diǎn),最佳中心點(diǎn)到聚類中心的平方距離最小,實(shí)驗(yàn)結(jié)果取5次實(shí)驗(yàn)的平均值.
本文使用無監(jiān)督聚類的正確率(Accuracy,ACC)和標(biāo)準(zhǔn)化互信息(Normalized Mutual Information,NMI)[17]兩個(gè)常用的評價(jià)指標(biāo).
無監(jiān)督聚類的正確率定義如公式(12)所示:
(12)
其中,N表示文本總數(shù),yi代表指標(biāo)函數(shù),yi是xi真實(shí)的類標(biāo)簽,ci是算法預(yù)測xi的標(biāo)簽,map()表示預(yù)測類標(biāo)簽和真實(shí)類標(biāo)簽之間進(jìn)行所有可能的一對一映射.正確率度量會對所有預(yù)測標(biāo)簽在真實(shí)標(biāo)簽中找到一個(gè)最佳匹配[18].
標(biāo)準(zhǔn)化互信息定義如公式(13)所示:
(13)
本文的對比實(shí)驗(yàn)包括常用的無監(jiān)督文本聚類方法K-Means和深度聚類算法,詳細(xì)信息如下:
K-Means:一種基于聚類的無監(jiān)督機(jī)器學(xué)習(xí)算法,以空間中k個(gè)點(diǎn)為中心進(jìn)行聚類,對最靠近他們的對象歸類.通過迭代的方法,逐次更新各聚類中心的值,直至得到最好的聚類結(jié)果.
K-Means(Doc):由gensim工具包提供Doc2vec[19]算法,創(chuàng)建一個(gè)文檔的向量化表示,然后從自動編碼器和句子嵌入兩者中學(xué)習(xí)文本特征,然后使用k-Means聚類算法的分配作為監(jiān)督來更新編碼器網(wǎng)絡(luò)的權(quán)重.
SIF-Train:由Hadifar等人[20]提出,通過線性變換得到低維表征解決短文本稀疏向量的問題,然后使用K-Means算法實(shí)現(xiàn)短文本聚類.
K-Means(BERT):使用BERT語言模型進(jìn)行文本編碼,通過微調(diào)之后獲得句子級別的嵌入,然后從自動編碼器和句子嵌入兩者中學(xué)習(xí)文本特征,然后使用k-Means聚類算法的分配作為監(jiān)督來更新編碼器網(wǎng)絡(luò)的權(quán)重.
3.5.1 本文模型和基準(zhǔn)模型對比實(shí)驗(yàn)
為了驗(yàn)證本方法的有效性,表4列舉本文模型和3種基準(zhǔn)模型在涉案輿情時(shí)間線數(shù)據(jù)集上的ACC和NMI值.
表4 本文模型和基準(zhǔn)模型的對比實(shí)驗(yàn)結(jié)果Table 4 Comparison of experimental results between this model and the benchmark model
可以看出,1)K-Means、K-Means(Doc)和SIF-Train的實(shí)驗(yàn)效果不佳.因?yàn)閷τ贙-Means、K-Means(Doc)和SIF-Train方法,對涉案輿情時(shí)間線數(shù)據(jù)集使用的是離散稀疏的句向量表示方法,無法很好的捕捉句子的語義特征,造成實(shí)驗(yàn)效果不佳;2)K-Means(BERT)在基準(zhǔn)模型上具有相對比較大的提升.因?yàn)槭褂肂ERT對涉案輿情時(shí)間線數(shù)據(jù)集進(jìn)行表征時(shí),可以有效的捕捉文本的上下文信息,提升了模型的性能;3)實(shí)驗(yàn)結(jié)果驗(yàn)證了本文模型的優(yōu)越性.在本文模型中,加入了差異性要素和時(shí)間文本后,通過加大案件關(guān)鍵詞權(quán)重的方式,從而提升了聚類的性能.
3.5.2 驗(yàn)證差異性要素和案件時(shí)間的有效性實(shí)驗(yàn)
為了驗(yàn)證模型提出的差異性要素(k)和案件時(shí)間(t)的有效性,本文分別在基準(zhǔn)模型上做了進(jìn)一步實(shí)驗(yàn),分別使用K-Means(k,t):在K-Means算法的基礎(chǔ)上融入差異性要素(k)和案件時(shí)間(t)、K-Means(Doc;k,t):在K-Means(Doc)算法的基礎(chǔ)上融入差異性要素(k)和案件時(shí)間(t)、SIF-Train(k,t):在SIF-Train的基礎(chǔ)上融入差異性要素(k)和案件時(shí)間(t)和本文模型進(jìn)行比較,實(shí)驗(yàn)結(jié)果如表5所示.
表5 驗(yàn)證差異性要素和案件時(shí)間的有效性的實(shí)驗(yàn)結(jié)果Table 5 Experimental results to verify the validity of the different elements and the time of the case
從實(shí)驗(yàn)結(jié)果可以看出:1)在編碼器部分融合差異性要素(k)和案件時(shí)間(t)之后,模型的性能都有一定的提升,因?yàn)樵谌谌胩卣髦?,增?qiáng)了文本表征能力;2)在模型K-Means(k,t)上實(shí)驗(yàn)性能的提升較為明顯,說明本文模型中提出的增強(qiáng)文本表征的方法在傳統(tǒng)的聚類方法中同樣適用;3)驗(yàn)證了本文提出的差異性要素(k)和時(shí)間文本(t)在聚類性能提升上的有效性.
3.5.3 低維特征向量
圖3分別驗(yàn)證不同涉案輿情時(shí)間線數(shù)據(jù)集中低維表征vdi的特征向量d的大小,在本文模型上對實(shí)驗(yàn)結(jié)果的影響.在實(shí)驗(yàn)過程中,選取d=10,20,50,100,200,保持其他參數(shù)不變,其中,橫軸表示低維特征向量d的大小,縱軸表示在不同低維特征向量下在本文模型中得到的ACC和NMI值的大小,實(shí)驗(yàn)結(jié)果如圖3所示.
圖3 特征向量 d 在不同數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Fig.3 Experimental results of feature vector d on different data sets
由圖3的實(shí)驗(yàn)結(jié)果可知:1)隨之特征向量維度d的增加,本文模型在涉案輿情時(shí)間線數(shù)據(jù)集上的ACC值和NMI值總體呈現(xiàn)逐漸下降的趨勢,說明隨著特征向量d的維度的增加會降低本文模型的實(shí)驗(yàn)效果;2)在“杭州女子失蹤案”中,ACC值和NMI值在低維特征向量d=20時(shí)出現(xiàn)一個(gè)最低值,因?yàn)樘卣飨蛄康木S度越高,張量的樣本空間越大,聚類過程中難以捕獲每一類樣本的特征表示,容易導(dǎo)致欠擬合.基于以上實(shí)驗(yàn),為了得到最佳實(shí)驗(yàn)結(jié)果,本文模型中選取的低維特征向量d的大小為10.
3.5.4 消融實(shí)驗(yàn)
在表6中,進(jìn)行本文的消融實(shí)驗(yàn),分別使用K-Means(BERT)模型,融合案件時(shí)間(t)的K-Means(BERT;t)模型,融合差異性要素(k)的K-Means(BERT;k)模型與本文模型進(jìn)行比較,實(shí)驗(yàn)結(jié)果如表6所示.
表6 消融實(shí)驗(yàn)Table 6 Ablation experiment
根據(jù)表6的實(shí)驗(yàn)結(jié)果可知:1)在兩個(gè)不同的數(shù)據(jù)集中,模型K-Means(BERT;t)在ACC和NMI上的實(shí)驗(yàn)結(jié)果的提升均高于模型K-Means(BERT;k),因?yàn)榘讣r(shí)間轉(zhuǎn)化為時(shí)間標(biāo)簽后,對文本聚類提供了確定的聚類類別信息,可以看出融合案件時(shí)間(t)的有效性;2)“女子不堪家暴跳樓案”中,模型K-Means(BERT;k)在ACC和NMI上的實(shí)驗(yàn)結(jié)果低于模型K-Means(BERT),因?yàn)樵摂?shù)據(jù)集規(guī)模過小,每條微博文本抽取的差異性要素?zé)o法清楚的描述文本信息.而隨著數(shù)據(jù)規(guī)模的提升,如在“杭州女子失蹤案”中,差異性要素對文本的分類能力逐漸加強(qiáng).基于以上分析,可以看出融合差異性要素(k)的有效性;3)本文模型融合差異性要素和案件時(shí)間,在編碼器部分強(qiáng)化文本表征,在ACC上均有超過5%以上的提升,在NMI上均有10%的提升.
以輿情案件“杭州女子失蹤案”為例,選取2020年7月18日~2020年7月27日的數(shù)據(jù),部分結(jié)果如表7所示,可以看出,在2020年7月18日,差異性要素是“睡覺”、“離開”、“線索”,描述的是女子失蹤事實(shí);在2020年7月20日,微博文本(1)、(2)的差異性要素是“遇害”、“專案組”、“調(diào)查”,描述的是專案組介入失蹤調(diào)查;在2020年7月25日,微博文本(1)、(2)的差異性要素是“水落石出”、“離奇”,描述的是案件水落石出事實(shí),通過差異性要素和案件時(shí)間,可以將語義相似、案件時(shí)間一致的文本聚集為一類文本,如在2020年7月25日,僅包含于案件水落石出事實(shí)相關(guān)的微博文本,而丟棄無關(guān)的微博文本.通過將差異性要素和案件時(shí)間融入文本表征中,提升案件文本聚類的性能.
表7 “杭州女子失蹤案”數(shù)據(jù)集的聚類結(jié)果(部分)Table 7 Clustering results of “ hangzhou woman missing case ”(partial)
針對案件輿情時(shí)間線聚類,本文提出一種差異性案件要素增強(qiáng)的案件輿情時(shí)間線生成方法,該方法通過提取差異性要素和案件時(shí)間增強(qiáng)文本表征能力,并將自編碼過程中得到的低維特征向量作為軟聚類過程中的初始聚類中心,通過文本損失不斷優(yōu)化聚類目標(biāo).在下一步研究中,我們將進(jìn)一步研究在相同的時(shí)間下,不同語義的微博文本生成時(shí)間線的問題.
小型微型計(jì)算機(jī)系統(tǒng)2022年9期