劉 豪,王雨辰
1(中國科學(xué)技術(shù)大學(xué) 管理學(xué)院 統(tǒng)計與金融系,合肥 230041)
2(中國科學(xué)技術(shù)大學(xué) 管理學(xué)院 國際金融研究院,合肥 230041)
隨著互聯(lián)網(wǎng)經(jīng)濟的快速發(fā)展,在各個線上線下平臺產(chǎn)生了大量包括文本在內(nèi)的數(shù)據(jù),對于上述數(shù)據(jù)的處理分析具有重要的意義.不同于其他類型數(shù)據(jù),文本數(shù)據(jù)需要深度的理解分析,依賴簡單的統(tǒng)計方法難以有效處理分析此類數(shù)據(jù).如何實現(xiàn)文本數(shù)據(jù)的自動化處理與分析成為亟待解決的問題.而隨著自然語言處理技術(shù)的成熟,相關(guān)技術(shù)也為分析文本數(shù)據(jù)提供了可行有效的思路和工具.在這些自然語言處理技術(shù)中,文本分類是一個關(guān)鍵的和基本的技術(shù),在各種下游應(yīng)用中具有重要的作用.對于文本的分類分析問題,此前相關(guān)的研究主要都針對相對正式的規(guī)范性長文本數(shù)據(jù)[1–3].雖然Lv 等[4]也對短文本數(shù)據(jù)分類提出相應(yīng)的處理方法,但在特征提取方面沒有考慮短文本的特性,實際表現(xiàn)不佳.
不同于規(guī)范性的長文本數(shù)據(jù),短文本數(shù)據(jù)具有以下典型特點.
1)稀疏性,每條短文本數(shù)據(jù)的字符長度都比較短,一般都在 200 字以內(nèi),因此文本所包含的有效信息少,造成特征稀疏,并且特征集的維數(shù)非常高,很難抽取到關(guān)鍵樣本特征用于分類學(xué)習(xí).
2)數(shù)據(jù)量大,更新快.
3)用詞不規(guī)范,形式不統(tǒng)一,噪聲特征多,依靠單純的統(tǒng)計分析很難得到實際的語義信息.
傳統(tǒng)文本處理算法從早期的淺層統(tǒng)計學(xué)習(xí)模型,例如樸素貝葉斯,K 近鄰等算法對于上下文信息的理解與全局語義信息的利用十分有限.而近幾年發(fā)展迅速的深度學(xué)習(xí)算法則很好地克服了上述缺點,例如Hochreiter 等[5]于1997年提出長短記憶神經(jīng)網(wǎng)絡(luò)(LSTM)針對RNN 算法的梯度爆炸與梯度消失現(xiàn)象,通過在神經(jīng)元中設(shè)置門結(jié)構(gòu),可以對文本中的重要信息選擇性地進行長期記憶,更好地融合上下文信息.但是,相較于傳統(tǒng)長文本數(shù)據(jù),微博、商品差評、推特等短文本數(shù)據(jù)具有特征維度稀疏、缺乏上下文信息、用詞不規(guī)范等特點,這些特點使得深度學(xué)習(xí)模型在短文本任務(wù)上表現(xiàn)不佳.而Devlin 等[6]在2018年提出的BERT 模型則進一步提升了準(zhǔn)確率與效率,通過利用前后兩方向信息,基于Transformer 模型引入Mask 訓(xùn)練方式加強了對于上下文的語義理解,還在應(yīng)用了大型語料庫預(yù)訓(xùn)練機制,加入了對預(yù)訓(xùn)練模型的微調(diào)技術(shù).BERT 通過上述技術(shù)在自然語言處理多個領(lǐng)域應(yīng)用取得成功.正因為BERT 模型的在文本處理方面的良好效果,所以本文選擇基于BERT 模型對短文本進行全局語義特征提取.此外,Peinelt 等[7]在計算句子相似度任務(wù)中提出的主題特征結(jié)合全局語義特征思想,特別的,Peinelt 等提到BERT 模型添加主題信息有助提高針對特定行業(yè)板塊與知識領(lǐng)域的表現(xiàn),所以本文認為主題信息融合BERT 模型得到的全局語義信息可能會有助于提高算法對短文本分類任務(wù)的處理性能.國內(nèi)學(xué)者也有將主題與全局語義特征拼接的嘗試,付靜等[8]在2021年將隱層狄利克雷(latent Dirichlet allocation,LDA)模型與BERT 模型融合形成拼接向量,相較于傳統(tǒng)詞向量方法與單獨的BERT 模型,顯示出了更優(yōu)良的語義表達性能.但是他們未能考慮到LDA 對于短文本處理的適用性[9].本文針對短文本特點選擇Yin 等[10]在2014年提出的GSDMM 算法作為主題分類的模型,GSDMM 算法是一種基于狄利克雷多項式混合模型(DMM)的折疊型吉布斯采樣算法[11].GSDMM 與之前的方法不同之處一方面在于算法本身不需要文本的空間向量表達,而是直接對文檔和詞進行概率估計,故可以有效解決文本數(shù)據(jù)的高維和稀疏問題.另一方面,GSDMM 文本單個主題的假設(shè)也更加符合短文本的特征.在訓(xùn)練階段本文則引入集成語義向量聚類指導(dǎo)[12],利用聚類指導(dǎo)在標(biāo)注訓(xùn)練集上進行擴展,提高分類器的訓(xùn)練有效性,同時也提高了對分類結(jié)果的解釋性.
通過引入以上模型,本文針對短文本分類,提出了BERT 與GSDMM 融合聚類的分類算法,如算法1.
算法1.BERT 與GSDMM 融合聚類的分類算法1) 基于BERT 得到短文本總體語義特征向量.2) 基于GSDMM 得到短文本的主題向量.3) 拼接總體語義向量與主題向量形成集成向量.4) 通過聚類指導(dǎo)擴展訓(xùn)練集.5) 擴展訓(xùn)練集結(jié)合前期標(biāo)注訓(xùn)練SVM 分類器.
本文在考慮評價短文本特性的基礎(chǔ)上通過自然語言處理技術(shù)實現(xiàn)了對短文本數(shù)據(jù)有效的自動化分類,整體的流程圖如圖1所示.
圖1 短文本分類處理流程圖
語料收集完成之后,需要對文本進行預(yù)處理.文本預(yù)處理主要是切分詞、去停用詞等.本文使用 Jieba 作為分詞工具,使用公開的中文停用詞字典作為標(biāo)準(zhǔn).特征提取分為兩部分,兩部分分別得到總體語義特征和主題特征.在進行分類器訓(xùn)練前將兩部分的特征向量進行拼接.在這一步驟還需要對訓(xùn)練集進行標(biāo)注,形成評價分類的訓(xùn)練集Wtrain,為后續(xù)步驟提供監(jiān)督學(xué)習(xí)的標(biāo)簽樣本.具體的標(biāo)注細節(jié)在后面章節(jié)介紹.
BERT 即基于Transformers 模型得來的雙向編碼表征模型.BERT 主要有預(yù)訓(xùn)練(pretraining)與微調(diào)(fine-tuning)兩個步驟.BERT的關(guān)鍵技術(shù)創(chuàng)新是基于Transformer (Vaswani 等[13]在2017年提出的一種注意力模型)的雙向訓(xùn)練應(yīng)用于語言建模.這與以前的方法有所不同,之前的方法按照從左到右或從左到右和從右到左的順序訓(xùn)練查看文本序列.BERT的結(jié)果表明,經(jīng)過雙向訓(xùn)練的語言模型比單向語言模型具有更深的全局語義特征.在BERT中雙向訓(xùn)練模型正是通過 Masked LM (MLM)這種新技術(shù)在以前不可能的模型中進行雙向訓(xùn)練.具體來說,Mask 技術(shù)在將單詞序列輸入BERT之前,每個序列中15%的單詞被替換為Mask.然后該模型將根據(jù)序列中其他未屏蔽單詞提供的上下文,嘗試預(yù)測被屏蔽單詞的原值.BERT 中的另一重要技術(shù)是可以將句子對作為模型訓(xùn)練的輸入,并學(xué)習(xí)預(yù)測成對的第2 個句子是否是原始文檔中的后續(xù)句子.在訓(xùn)練期間,輸入的50%是一對,其中第2 個句子是原始文檔中的后續(xù)句子,而在其他50%的輸入中,從語料庫中選擇一個隨機句子作為第2 個句子.假定隨機句子將與第1 句斷開.
基于BERT 模型的預(yù)訓(xùn)練特點,BERT 模型可以根據(jù)下游任務(wù)的需要,選擇相應(yīng)的微調(diào)方法進行應(yīng)用,這些下游任務(wù)包括了問題回答、句子分類和句子對回歸.但是BERT 模型本身并不支持獨立句子嵌入運算.之前的研究一般使用平均單詞嵌入或者使用特殊CLStoken的方法試圖解決這一問題.但是結(jié)果并不理想[14–16].
本文中采用了Reimers 等[17]提出的Sentence-BERT方法在預(yù)訓(xùn)練模型上微調(diào)實現(xiàn)獨立句子嵌入.選擇Sentence-BERT 方法的主要原因有如下兩點:
1)Sentence-BERT 通過引入Siamese和Triplet 網(wǎng)絡(luò)[18]更新權(quán)重使得獨立句子嵌入具有語義上的意義,而具有語義信息的向量可以用于后續(xù)的聚類任務(wù).
2)Sentence-BERT 在BERT的輸出中加入了一個匯總的操作(平均池化),可以導(dǎo)出一個固定768 維的句子嵌入向量,便于的后續(xù)分析運算.
通過Sentence-BERT 方法可以完成對文本全局語義信息的特征提取,提取的特征向量可以用于下一階段集成拼接.
GSDMM 是一種無監(jiān)督文本主題聚類模型,該模型根據(jù)狄利克雷多項式混合模型(Dirichlet multinomial mixture model,DMM)生成文檔,利用折疊吉布斯采樣(Gibbs sampling)近似求解模型.模型假定文檔是根據(jù)混合多項式分布產(chǎn)生的,并且主題和文檔之間相互對應(yīng).GSDMM 基于完備性與一致性兩大原則實現(xiàn)聚類,完備性即聚類處理的所有文本都會被分到具體的簇中,而一致性則指的是被聚類到同一個簇的文本都盡可能的相似.
GSDMM 算法以Nigam 等[19]于2000 提出的DMM概率生成模型為基礎(chǔ).DMM 模型結(jié)構(gòu)與LDA 類似.DMM 模型結(jié)構(gòu)相對于LDA的改進在于假設(shè)每個文檔只含有一個主題[20],而LDA 則假定每個文檔含有多個主題.單個主題的模型假定更加符合短文本實際情況.DMM 模型中變量定義如表1.
表1 DMM 模型中變量定義
文檔d產(chǎn)生過程可以表示如下:
首先根據(jù)主題(聚類簇)的權(quán)重p(z=k)選擇一個主題k.然后根據(jù)p(d/z=k)分布選擇主題生成文檔d.因此,我們可以用所有主題的概率總和來描述文檔d的可能性:
其中,K指的是主題的數(shù)量,在得到文檔生成概率公式后,接下來的問題關(guān)鍵在于求得p(d/z=k)與p(z=k) 表達方式.
在樸素貝葉斯假定下p(d/z=k)可以表達為:
模型中假定主題在單詞上是多項式分布:
其中,?k,w指主題k的詞分布,在文檔d中,(V表示文檔d的詞向量維度),Φ是服從概率分布的變量.狄利克雷分布式是多項式分布的共軛先驗概率分布,選擇以 β為參數(shù)的狄利克雷分布作為Φ 先驗分布:
每個主題的概率服從多項分布:
其中,Θ是主題分布矩陣,θk表示主題分布,在文檔d中,選擇以 α為參數(shù)的狄利克雷分布作為Θ的先驗分布.則可以得到下式:
得到表達式之后,需要利用折疊吉布斯抽樣算法得到每篇文檔所屬的主題的集合,即文檔的主題z.Gibbs 采樣的物理過程,實際上就是一個詞在不同的主題上不斷地采樣,最終得到這個詞的主題分布矩陣,從而得到文檔的主題分布和主題的詞分布.利用 Gibbs 采樣法對模型進行求解,在訓(xùn)練過程中采樣的一篇文檔屬于某個主題的概率如下:
其中,?d表示去除當(dāng)前文檔d的信息.
GSDMM 模型的求解過程如下:
(1)初始化模型參數(shù):K,α,β,I;初始化變量mz=nz=nwz=0.
對文檔集中的所有文檔初始化完成后,得到K個屬于不同主題的集合,且每個文檔只屬于一個主題.(3) 進行Gibbs 采樣,對每個文檔d:
1)記錄當(dāng)前d所屬的主題:z=zd.
2)當(dāng)前主題中去除d的信息:
mz=mz?1,nz=nz?Nd,對該文檔包含的詞w有nwz=Nd?Ndw.
3)根據(jù)條件分布為d重新分配主題:
4)更新變量:
(4)重復(fù)過程(3),直到最大迭代次數(shù)I.
(5)輸出每個文檔的類別標(biāo)簽.
通過上述方法,GSDMM 能夠處理文本數(shù)據(jù)的高維和稀疏問題得到文檔的類別標(biāo)簽,為下一步集成語義向量提供主題信息.
在得到句子的全局語義特征與主題特征后,使用向量拼接的方式完成主題粒度下對全局語義特征的擴充,如圖2中所示.cls 符號在輸入單獨句子時插入,其對應(yīng)的輸出向量可以作為整篇文本的語義表示,用于文本分類.Token 1 作為文檔中字符的表達,E-token 1代表了Embedding (嵌入)層中token 1 對應(yīng)的特征.T1 表示經(jīng)過BERT 處理之后的輸出特征,以此類推.
圖2 語義向量拼接示意圖
由于評價文本的標(biāo)注需要耗費大量的人力與精力,所以如何能夠利用有限的標(biāo)注數(shù)據(jù)訓(xùn)練分類器成為了文本分類的重要問題.本文通過引入聚類指導(dǎo)的方法,對上一階段生成的集成語義向量進行聚類.訓(xùn)練集中未標(biāo)注的數(shù)據(jù)標(biāo)注為同一簇族內(nèi)最大數(shù)量標(biāo)簽的屬性.同時考慮到聚類算法的有效性,需要根據(jù)輪廓系數(shù)對于聚類的結(jié)果進行討論,確定最終的標(biāo)注.此外,語義向量上的聚類特征也可以幫助電商平臺理解分析不同主題,聚類特征被表示為從聚類語義向量中揭示的潛在主題.綜合來說,聚類指導(dǎo)的加入在以下兩方面提高算法的性能與實用性:(1)只需要少量標(biāo)注數(shù)據(jù)就可以有效實現(xiàn)分類器.(2)提供了短文本之間相似性的直觀解釋,這將有利于語義理解和標(biāo)注的討論.本文使用經(jīng)典的基于空間密度的DBSCAN 算法對語義向量進行聚類.
聚類指導(dǎo)形成擴展訓(xùn)練集Ctrain,為下一步訓(xùn)練短文本分類模型做準(zhǔn)備.
此步驟通過前期標(biāo)注分類的訓(xùn)練集Wtrain與聚類步驟得到的擴展標(biāo)注集Ctrain,利用Wtrain與Ctrain標(biāo)簽訓(xùn)練SVM 分類器.當(dāng)訓(xùn)練完成SVM 分類器后,通過每個評價的集成語義向量就可以得到相應(yīng)的分類標(biāo)簽.
本文提出的算法為短文本分類提供了可行有效的思路和工具.為驗證文中分類方法的有效性,本文選取了某電商平臺上150 種不同類型產(chǎn)品,特定產(chǎn)品下隨機抽取200 條客戶差評,總計收集了30 000 條文本.其中18 000 條文本作為訓(xùn)練集,12 000 條文本作為測試集.在18 000 條訓(xùn)練文本中人工標(biāo)注分類6 000 條文本,差評文本的長度分布如表2所示.
表2 電商平臺差評文本長度分布
標(biāo)注的標(biāo)簽類型按照電商平臺給出的差評標(biāo)簽通過篩選總結(jié)分為相關(guān)服務(wù)、價格、物流發(fā)貨、產(chǎn)品質(zhì)量、無效惡意差評5 個種類.
表3是采用不同模型提取語義向量利用測試集得出的實驗結(jié)果.在模型對比中所有參數(shù)一致,分類器統(tǒng)一采用SVM.BERT+LDA的方法參照付靜等[8]研究.多分類問題按照指標(biāo)平均數(shù)取值.在表3中可以看出GSDMM 與BERT 融合模型在3 個指標(biāo)上均優(yōu)于其他模型,這一結(jié)果可能源于GSDMM處理短文本數(shù)據(jù)的良好性能與語義向量的集成的效果.基于本算法未來在這方面可以通過擴大訓(xùn)練數(shù)據(jù)集與參數(shù)調(diào)優(yōu)的方法加以進一步提升.
表3 模型表現(xiàn)對比表(%)
本文針對短文本分類問題提供了有效的解決算法.之前的文獻研究中出現(xiàn)過采用BERT 模型以及采用GSDM 算法的短文本聚類分類算法.然而,本文的價值在于將二者相結(jié)合的應(yīng)用探索.本算法通過融合GSDMM與BERT 有效提取短文本的主題與總體語義特征,這一方法在一定程度上解決了短文本數(shù)據(jù)缺乏上下文信息與主題信息的問題.同時在分類器訓(xùn)練前端引入聚類指導(dǎo),提高了分類器的訓(xùn)練效率,利用少量的標(biāo)注數(shù)據(jù)就可以實現(xiàn)短文本的有效分類.通過將該模型與BERT以及 BERT+LDA 模型進行對比實驗,實驗結(jié)果驗證了本文所提方法的可行性和有效性.本文所提出的算法雖然達到了較好的性能,但也存在一定的局限性.例如,算法模型的性能會受到超參數(shù)、數(shù)據(jù)集選取等因素的影響,但本文暫時未對這些因素進行綜合探究,這也是我們未來工作的方向之一.同時聚類算法與分類器下一步也需要改進,以提高分類的準(zhǔn)確度與效率.總體來說,在實驗驗證中本算法有效的實現(xiàn)了短文本自動分類的功能,可以通過對電商平臺評論的處理分析為未來產(chǎn)品服務(wù)的改進提供有效的信息支持,具有較為廣闊的應(yīng)用場景.