ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

ACL 2018

基於中斷循環神經網絡的文本分類

Disconnected Recurrent Neural Networks for Text Categorization

科大訊飛北京研究院HFL實驗室

IFLYTEK CO.,LTD

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

1 引言

文本分類任務是自然語言處理(NLP)領域最基礎和傳統的任務之一,該任務又會根據領域類型的不同分成很多子任務,例如情感分類、主題分類和問題分類等。很多機器學習的新方法都會先嚐試在文本分類任務上進行實驗驗證。例如深度學習中最常見的兩大類模型,卷積神經網絡(CNN)和循環神經網絡(RNN)及其變體,在文本分類中有很多應用。

RNN模型擅長對整個句子進行建模,捕捉長距離依賴信息。然而研究表明,RNN對整個句子建模有時會成為一種負擔,使模型忽略了關鍵的短語信息。CNN模型則正相反,更擅長抽取局部的位置不變特徵,而不擅長捕捉長距離依賴信息。為此,我們提出了DRNN模型,通過限制RNN模型信息的流動,將位置不變性引入RNN模型中。這使得DRNN模型既能捕捉長距離依賴信息,又可以很好地抽取關鍵短語信息。我們提出的模型在DBPedia,Yelp等多個文本分類數據集上取得了最好的效果。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

2 模型介紹

表1是一個主題分類的例子,我們可以看到兩句話表意基本相同,都應該被分類到科技類。其中決定分類的關鍵短語是“unsolved mysteries of mathematics”,對於一個窗口大小為4的CNN模型來說,兩個句子中的該短語表示完全相同。然而,當我們把兩句話送入RNN模型的時候,因為RNN模型中,每一個時刻的隱層狀態都和前面所有詞語相關,所以這兩個短語的表示是完全不同的。這增大了模型捕捉關鍵短語的難度,使得RNN模型有時會忽視一些關鍵信息。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

表格1 主題分類示例

為了解決上述問題,我們希望通過將位置不變性引入RNN模型中,使得RNN模型既可以捕捉長距離依賴信息,又可以更好地抽取位置不變的局部特徵。具體來說,我們會阻斷RNN模型的信息流動,使其最多隻能傳遞固定的步長k。這樣的話,每個時刻的隱層狀態就只和當前詞以及前k-1個詞相關。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

圖1 Disconnected Recurrent Neural Networks

圖1是RNN模型、DRNN模型和CNN模型的一個對比圖。如圖所示,對於RNN來說,隱層狀態h與前面所有的詞都相關,而對於DRNN,則只與當前詞及之前的k-1個詞相關。DRNN模型也可以被認為是一種特殊的CNN模型,只是將CNN模型中的卷積核替換成了RNN。顯然,DRNN和CNN一樣,對於長度為k的短語,無論它在文本中的什麼位置,都具有相同的表示。DRNN模型t時刻的隱藏層輸出可以表示成如下形式:

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

DRNN是一種通用的模型框架,可以應用在很多任務中,我們主要將其應用在文本分類任務中,對應的模型結構見圖2。我們採用GRU作為DRNN的循環單元,得到Disconnected Gated Recurrent Unit(DGRU)模型。我們首先將DGRU的每個隱層表示送入MLP中,來抽取更高層的特徵信息。然後再通過Max Pooling來抽取整個文本中最重要的信息,最後再通過一層MLP,然後送入softmax中進行分類。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

圖2 整體模型結構

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

3 實驗結果與分析

我們在Zhang et al. (2015)提出的7個大規模文本分類數據集上進行實驗,其中AG語料是新聞,DBPedia語料來自於維基百科,Yelp和Amazon語料都是情感分析相關語料,Yahoo! Answers是問答數據集。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

圖3 DGRU和CNN對比

我們將DRNN模型與CNN、LSTM和GRU進行了對比,從圖3中我們可以看到CNN模型的實驗效果隨著卷積核窗口大小的增大而不斷變差,其中CNN窗口為3時實驗效果最好。而對於DRNN來說,窗口為15時效果最佳。對於CNN來說,卷積核窗口越大,對應的參數也越多,模型更加容易過擬合。相比之下,在增大DRNN的窗口長度時,參數是保持不變的,因此可以有效地緩解過擬合問題。從表2中我們也可以看到DRNN的效果比LSTM、GRU和CNN更好。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

表格2 對比實驗結果

我們還比較了不同循環單元和Pooling方法的實驗效果,如圖4所示。我們採用了naïve RNN、LSTM和GRU作為DRNN的循環單元,其中對於naïveRNN,當窗口增大的時候,效果快速下降,錯誤率甚至超過20%,因此沒有在圖中畫出。而GRU和LSTM對比,可以看到在DRNN中,GRU作為循環單元的效果更好。對於不同Pooling方法來說,Max pooling的效果最好,這是與max pooling可以更好地保持模型的位置不變性有關。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

圖4 不同組件對比

我們發現DRNN的窗口大小太大或者太小都會導致模型的效果不佳,當窗口太大的時候,DRNN則更像RNN模型,丟失了位置不變性。而當窗口太小的時候,DRNN則更像CNN模型,缺失了長距離依賴的能力。因此選擇一個合適的窗口大小,對於DRNN模型來說很重要。我們對於最佳窗口的設置進行了研究,對應的實驗結果見圖5。研究表明最佳窗口大小和訓練數據的數據量關係不大,和任務類型關係明顯。因此我們在選擇最佳窗口的時候可以考慮先在小規模數據上進行實驗以選擇最佳窗口。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

圖5 窗口相關實驗

最後,我們在7個文本分類任務上進行了實驗,實驗結果見表3。從表中,可以看到DRNN模型在文本分類任務上效果很好,比同樣是結合RNN與CNN特性的CRNN錯誤率相對下降10-50%。

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

表格3 實驗的錯誤率(%)

ACL 2018|科大訊飛:基於中斷循環神經網絡的文本分類

4 總結

我們根據CNN和RNN的各自特性,提出了DRNN模型,將位置不變性引入到RNN模型中,使得DRNN能同時捕捉關鍵短語信息和長距離依賴信息。實際採用DRNN模型時,選取一個好的窗口大小至關重要,實驗表明最佳窗口大小和訓練數據量無關,和任務類型有關。通常窗口大小為15到20的DRNN都能取得不錯的效果。


分享到:


相關文章: