劉 豪,王雨辰
1(中國科學技術大學 管理學院 統計與金融系,合肥 230041)
2(中國科學技術大學 管理學院 國際金融研究院,合肥 230041)
隨著互聯網經濟的快速發展,在各個線上線下平臺產生了大量包括文本在內的數據,對于上述數據的處理分析具有重要的意義.不同于其他類型數據,文本數據需要深度的理解分析,依賴簡單的統計方法難以有效處理分析此類數據.如何實現文本數據的自動化處理與分析成為亟待解決的問題.而隨著自然語言處理技術的成熟,相關技術也為分析文本數據提供了可行有效的思路和工具.在這些自然語言處理技術中,文本分類是一個關鍵的和基本的技術,在各種下游應用中具有重要的作用.對于文本的分類分析問題,此前相關的研究主要都針對相對正式的規范性長文本數據[1–3].雖然Lv 等[4]也對短文本數據分類提出相應的處理方法,但在特征提取方面沒有考慮短文本的特性,實際表現不佳.
不同于規范性的長文本數據,短文本數據具有以下典型特點.
1)稀疏性,每條短文本數據的字符長度都比較短,一般都在 200 字以內,因此文本所包含的有效信息少,造成特征稀疏,并且特征集的維數非常高,很難抽取到關鍵樣本特征用于分類學習.
2)數據量大,更新快.
3)用詞不規范,形式不統一,噪聲特征多,依靠單純的統計分析很難得到實際的語義信息.
傳統文本處理算法從早期的淺層統計學習模型,例如樸素貝葉斯,K 近鄰等算法對于上下文信息的理解與全局語義信息的利用十分有限.而近幾年發展迅速的深度學習算法則很好地克服了上述缺點,例如Hochreiter 等[5]于1997年提出長短記憶神經網絡(LSTM)針對RNN 算法的梯度爆炸與梯度消失現象,通過在神經元中設置門結構,可以對文本中的重要信息選擇性地進行長期記憶,更好地融合上下文信息.但是,相較于傳統長文本數據,微博、商品差評、推特等短文本數據具有特征維度稀疏、缺乏上下文信息、用詞不規范等特點,這些特點使得深度學習模型在短文本任務上表現不佳.而Devlin 等[6]在2018年提出的BERT 模型則進一步提升了準確率與效率,通過利用前后兩方向信息,基于Transformer 模型引入Mask 訓練方式加強了對于上下文的語義理解,還在應用了大型語料庫預訓練機制,加入了對預訓練模型的微調技術.BERT 通過上述技術在自然語言處理多個領域應用取得成功.正因為BERT 模型的在文本處理方面的良好效果,所以本文選擇基于BERT 模型對短文本進行全局語義特征提取.此外,Peinelt 等[7]在計算句子相似度任務中提出的主題特征結合全局語義特征思想,特別的,Peinelt 等提到BERT 模型添加主題信息有助提高針對特定行業板塊與知識領域的表現,所以本文認為主題信息融合BERT 模型得到的全局語義信息可能會有助于提高算法對短文本分類任務的處理性能.國內學者也有將主題與全局語義特征拼接的嘗試,付靜等[8]在2021年將隱層狄利克雷(latent Dirichlet allocation,LDA)模型與BERT 模型融合形成拼接向量,相較于傳統詞向量方法與單獨的BERT 模型,顯示出了更優良的語義表達性能.但是他們未能考慮到LDA 對于短文本處理的適用性[9].本文針對短文本特點選擇Yin 等[10]在2014年提出的GSDMM 算法作為主題分類的模型,GSDMM 算法是一種基于狄利克雷多項式混合模型(DMM)的折疊型吉布斯采樣算法[11].GSDMM 與之前的方法不同之處一方面在于算法本身不需要文本的空間向量表達,而是直接對文檔和詞進行概率估計,故可以有效解決文本數據的高維和稀疏問題.另一方面,GSDMM 文本單個主題的假設也更加符合短文本的特征.在訓練階段本文則引入集成語義向量聚類指導[12],利用聚類指導在標注訓練集上進行擴展,提高分類器的訓練有效性,同時也提高了對分類結果的解釋性.
通過引入以上模型,本文針對短文本分類,提出了BERT 與GSDMM 融合聚類的分類算法,如算法1.

算法1.BERT 與GSDMM 融合聚類的分類算法1) 基于BERT 得到短文本總體語義特征向量.2) 基于GSDMM 得到短文本的主題向量.3) 拼接總體語義向量與主題向量形成集成向量.4) 通過聚類指導擴展訓練集.5) 擴展訓練集結合前期標注訓練SVM 分類器.
本文在考慮評價短文本特性的基礎上通過自然語言處理技術實現了對短文本數據有效的自動化分類,整體的流程圖如圖1所示.

圖1 短文本分類處理流程圖
語料收集完成之后,需要對文本進行預處理.文本預處理主要是切分詞、去停用詞等.本文使用 Jieba 作為分詞工具,使用公開的中文停用詞字典作為標準.特征提取分為兩部分,兩部分分別得到總體語義特征和主題特征.在進行分類器訓練前將兩部分的特征向量進行拼接.在這一步驟還需要對訓練集進行標注,形成評價分類的訓練集Wtrain,為后續步驟提供監督學習的標簽樣本.具體的標注細節在后面章節介紹.
BERT 即基于Transformers 模型得來的雙向編碼表征模型.BERT 主要有預訓練(pretraining)與微調(fine-tuning)兩個步驟.BERT的關鍵技術創新是基于Transformer (Vaswani 等[13]在2017年提出的一種注意力模型)的雙向訓練應用于語言建模.這與以前的方法有所不同,之前的方法按照從左到右或從左到右和從右到左的順序訓練查看文本序列.BERT的結果表明,經過雙向訓練的語言模型比單向語言模型具有更深的全局語義特征.在BERT中雙向訓練模型正是通過 Masked LM (MLM)這種新技術在以前不可能的模型中進行雙向訓練.具體來說,Mask 技術在將單詞序列輸入BERT之前,每個序列中15%的單詞被替換為Mask.然后該模型將根據序列中其他未屏蔽單詞提供的上下文,嘗試預測被屏蔽單詞的原值.BERT 中的另一重要技術是可以將句子對作為模型訓練的輸入,并學習預測成對的第2 個句子是否是原始文檔中的后續句子.在訓練期間,輸入的50%是一對,其中第2 個句子是原始文檔中的后續句子,而在其他50%的輸入中,從語料庫中選擇一個隨機句子作為第2 個句子.假定隨機句子將與第1 句斷開.
基于BERT 模型的預訓練特點,BERT 模型可以根據下游任務的需要,選擇相應的微調方法進行應用,這些下游任務包括了問題回答、句子分類和句子對回歸.但是BERT 模型本身并不支持獨立句子嵌入運算.之前的研究一般使用平均單詞嵌入或者使用特殊CLStoken的方法試圖解決這一問題.但是結果并不理想[14–16].
本文中采用了Reimers 等[17]提出的Sentence-BERT方法在預訓練模型上微調實現獨立句子嵌入.選擇Sentence-BERT 方法的主要原因有如下兩點:
1)Sentence-BERT 通過引入Siamese和Triplet 網絡[18]更新權重使得獨立句子嵌入具有語義上的意義,而具有語義信息的向量可以用于后續的聚類任務.
2)Sentence-BERT 在BERT的輸出中加入了一個匯總的操作(平均池化),可以導出一個固定768 維的句子嵌入向量,便于的后續分析運算.
通過Sentence-BERT 方法可以完成對文本全局語義信息的特征提取,提取的特征向量可以用于下一階段集成拼接.
GSDMM 是一種無監督文本主題聚類模型,該模型根據狄利克雷多項式混合模型(Dirichlet multinomial mixture model,DMM)生成文檔,利用折疊吉布斯采樣(Gibbs sampling)近似求解模型.模型假定文檔是根據混合多項式分布產生的,并且主題和文檔之間相互對應.GSDMM 基于完備性與一致性兩大原則實現聚類,完備性即聚類處理的所有文本都會被分到具體的簇中,而一致性則指的是被聚類到同一個簇的文本都盡可能的相似.
GSDMM 算法以Nigam 等[19]于2000 提出的DMM概率生成模型為基礎.DMM 模型結構與LDA 類似.DMM 模型結構相對于LDA的改進在于假設每個文檔只含有一個主題[20],而LDA 則假定每個文檔含有多個主題.單個主題的模型假定更加符合短文本實際情況.DMM 模型中變量定義如表1.

表1 DMM 模型中變量定義
文檔d產生過程可以表示如下:
首先根據主題(聚類簇)的權重p(z=k)選擇一個主題k.然后根據p(d/z=k)分布選擇主題生成文檔d.因此,我們可以用所有主題的概率總和來描述文檔d的可能性:

其中,K指的是主題的數量,在得到文檔生成概率公式后,接下來的問題關鍵在于求得p(d/z=k)與p(z=k) 表達方式.
在樸素貝葉斯假定下p(d/z=k)可以表達為:

模型中假定主題在單詞上是多項式分布:

其中,?k,w指主題k的詞分布,在文檔d中,(V表示文檔d的詞向量維度),Φ是服從概率分布的變量.狄利克雷分布式是多項式分布的共軛先驗概率分布,選擇以 β為參數的狄利克雷分布作為Φ 先驗分布:

每個主題的概率服從多項分布:

其中,Θ是主題分布矩陣,θk表示主題分布,在文檔d中,選擇以 α為參數的狄利克雷分布作為Θ的先驗分布.則可以得到下式:

得到表達式之后,需要利用折疊吉布斯抽樣算法得到每篇文檔所屬的主題的集合,即文檔的主題z.Gibbs 采樣的物理過程,實際上就是一個詞在不同的主題上不斷地采樣,最終得到這個詞的主題分布矩陣,從而得到文檔的主題分布和主題的詞分布.利用 Gibbs 采樣法對模型進行求解,在訓練過程中采樣的一篇文檔屬于某個主題的概率如下:

其中,?d表示去除當前文檔d的信息.
GSDMM 模型的求解過程如下:
(1)初始化模型參數:K,α,β,I;初始化變量mz=nz=nwz=0.
對文檔集中的所有文檔初始化完成后,得到K個屬于不同主題的集合,且每個文檔只屬于一個主題.(3) 進行Gibbs 采樣,對每個文檔d:
1)記錄當前d所屬的主題:z=zd.
2)當前主題中去除d的信息:
mz=mz?1,nz=nz?Nd,對該文檔包含的詞w有nwz=Nd?Ndw.
3)根據條件分布為d重新分配主題:

4)更新變量:

(4)重復過程(3),直到最大迭代次數I.
(5)輸出每個文檔的類別標簽.
通過上述方法,GSDMM 能夠處理文本數據的高維和稀疏問題得到文檔的類別標簽,為下一步集成語義向量提供主題信息.
在得到句子的全局語義特征與主題特征后,使用向量拼接的方式完成主題粒度下對全局語義特征的擴充,如圖2中所示.cls 符號在輸入單獨句子時插入,其對應的輸出向量可以作為整篇文本的語義表示,用于文本分類.Token 1 作為文檔中字符的表達,E-token 1代表了Embedding (嵌入)層中token 1 對應的特征.T1 表示經過BERT 處理之后的輸出特征,以此類推.

圖2 語義向量拼接示意圖
由于評價文本的標注需要耗費大量的人力與精力,所以如何能夠利用有限的標注數據訓練分類器成為了文本分類的重要問題.本文通過引入聚類指導的方法,對上一階段生成的集成語義向量進行聚類.訓練集中未標注的數據標注為同一簇族內最大數量標簽的屬性.同時考慮到聚類算法的有效性,需要根據輪廓系數對于聚類的結果進行討論,確定最終的標注.此外,語義向量上的聚類特征也可以幫助電商平臺理解分析不同主題,聚類特征被表示為從聚類語義向量中揭示的潛在主題.綜合來說,聚類指導的加入在以下兩方面提高算法的性能與實用性:(1)只需要少量標注數據就可以有效實現分類器.(2)提供了短文本之間相似性的直觀解釋,這將有利于語義理解和標注的討論.本文使用經典的基于空間密度的DBSCAN 算法對語義向量進行聚類.
聚類指導形成擴展訓練集Ctrain,為下一步訓練短文本分類模型做準備.
此步驟通過前期標注分類的訓練集Wtrain與聚類步驟得到的擴展標注集Ctrain,利用Wtrain與Ctrain標簽訓練SVM 分類器.當訓練完成SVM 分類器后,通過每個評價的集成語義向量就可以得到相應的分類標簽.
本文提出的算法為短文本分類提供了可行有效的思路和工具.為驗證文中分類方法的有效性,本文選取了某電商平臺上150 種不同類型產品,特定產品下隨機抽取200 條客戶差評,總計收集了30 000 條文本.其中18 000 條文本作為訓練集,12 000 條文本作為測試集.在18 000 條訓練文本中人工標注分類6 000 條文本,差評文本的長度分布如表2所示.

表2 電商平臺差評文本長度分布
標注的標簽類型按照電商平臺給出的差評標簽通過篩選總結分為相關服務、價格、物流發貨、產品質量、無效惡意差評5 個種類.
表3是采用不同模型提取語義向量利用測試集得出的實驗結果.在模型對比中所有參數一致,分類器統一采用SVM.BERT+LDA的方法參照付靜等[8]研究.多分類問題按照指標平均數取值.在表3中可以看出GSDMM 與BERT 融合模型在3 個指標上均優于其他模型,這一結果可能源于GSDMM處理短文本數據的良好性能與語義向量的集成的效果.基于本算法未來在這方面可以通過擴大訓練數據集與參數調優的方法加以進一步提升.

表3 模型表現對比表(%)
本文針對短文本分類問題提供了有效的解決算法.之前的文獻研究中出現過采用BERT 模型以及采用GSDM 算法的短文本聚類分類算法.然而,本文的價值在于將二者相結合的應用探索.本算法通過融合GSDMM與BERT 有效提取短文本的主題與總體語義特征,這一方法在一定程度上解決了短文本數據缺乏上下文信息與主題信息的問題.同時在分類器訓練前端引入聚類指導,提高了分類器的訓練效率,利用少量的標注數據就可以實現短文本的有效分類.通過將該模型與BERT以及 BERT+LDA 模型進行對比實驗,實驗結果驗證了本文所提方法的可行性和有效性.本文所提出的算法雖然達到了較好的性能,但也存在一定的局限性.例如,算法模型的性能會受到超參數、數據集選取等因素的影響,但本文暫時未對這些因素進行綜合探究,這也是我們未來工作的方向之一.同時聚類算法與分類器下一步也需要改進,以提高分類的準確度與效率.總體來說,在實驗驗證中本算法有效的實現了短文本自動分類的功能,可以通過對電商平臺評論的處理分析為未來產品服務的改進提供有效的信息支持,具有較為廣闊的應用場景.