陸曉蕾,倪 斌
(1. 廈門大學(xué) 外文學(xué)院,福建 廈門 361005;2. 中國(guó)科學(xué)院計(jì)算技術(shù)研究所 廈門數(shù)據(jù)智能研究院,福建 廈門 361005)
近年來,工業(yè)界和學(xué)術(shù)界產(chǎn)生了大量專利申請(qǐng)。據(jù)世界知識(shí)產(chǎn)權(quán)保護(hù)組織(WIPO)的指導(dǎo)性報(bào)告顯示: 2017年,全球所有專利局共受理的專利申請(qǐng)超過三百萬個(gè),并且這項(xiàng)數(shù)據(jù)每年還在快速增長(zhǎng)。出于檢索和管理需要,專利文獻(xiàn)需按照專業(yè)技術(shù)領(lǐng)域進(jìn)行分類與賦碼。1971年《斯特拉斯堡協(xié)定》提出的國(guó)際專利分類法(IPC)是國(guó)際上通用的專利文獻(xiàn)分類法,幾乎覆蓋了所有科技領(lǐng)域,超過90個(gè)國(guó)家使用該標(biāo)準(zhǔn)。該分類標(biāo)準(zhǔn)提供了一種由獨(dú)立于語言的符號(hào)構(gòu)成的樹形體系,按所屬技術(shù)領(lǐng)域?qū)Πl(fā)明專利和實(shí)用新型專利進(jìn)行分類。IPC分類包含“部(section)—類(class)—亞類(subclass)—組(group)”四個(gè)層級(jí),其中“組”級(jí)共含有74 503種類別(WIPO,2019)。傳統(tǒng)的人工分類受限于專利員自身的知識(shí)與經(jīng)驗(yàn),難以做到快速和精確。隨著專利申請(qǐng)數(shù)量的劇增,IPC分類法的多層級(jí)、多標(biāo)簽等特點(diǎn)給專利審查人員帶來了巨大的工作量。同時(shí),快速的全球化競(jìng)爭(zhēng)以及完善的知識(shí)產(chǎn)權(quán)保護(hù)體系對(duì)文獻(xiàn)分類技術(shù)提出了更高的要求。隨著深度學(xué)習(xí)和文本分類的快速發(fā)展,越來越多的研究開始聚焦于專利文獻(xiàn)的自動(dòng)分類。目前,面向自然語言處理的專利分類研究多集中于英文專利申請(qǐng),然而,我國(guó)的專利申請(qǐng)數(shù)量占全球的43.6%[1],構(gòu)建一個(gè)相對(duì)精確的中文專利分類器的需求也日益凸顯。本文試圖利用基于卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)和BERT預(yù)訓(xùn)練模型等深度學(xué)習(xí)手段建立中文專利文獻(xiàn)分類器,提出了BERT-CNN模型,并探索多層級(jí)文本分類方法,為快速準(zhǔn)確的專利文本分類提供參考。
以往的研究中,大量的專利文獻(xiàn)自動(dòng)分類研究主要集中于樸素貝葉斯[2]、支持向量機(jī)[3]和K-近鄰算法[4]等統(tǒng)計(jì)方法。Fall等[5]對(duì)這些算法進(jìn)行了比較評(píng)估,階段性地總結(jié)了這三種分類器的效果,提出了支持向量機(jī)是當(dāng)時(shí)最好的分類器。D’Hondt等[6]從多元短語組等統(tǒng)計(jì)語言學(xué)的角度對(duì)專利文檔進(jìn)行分析,在一定程度上提高了專利分類的準(zhǔn)確性。姜春濤[7]建立基于圖結(jié)構(gòu)的文本分類器,對(duì)四個(gè)不同技術(shù)領(lǐng)域的專利進(jìn)行分類。然而,以上方法大都需要人工特征工程,建模過程費(fèi)時(shí)費(fèi)力,準(zhǔn)確性也存在瓶頸。隨著神經(jīng)網(wǎng)絡(luò)模型在自然語言處理上的廣泛應(yīng)用,尤其是以詞向量為代表的文本表征技術(shù)的進(jìn)步[8],文本分類的效果得到了顯著提升。Grawe等[9]利用專利文獻(xiàn)訓(xùn)練Word2Vec詞向量模型,在此基礎(chǔ)上僅疊加一層LSTM作為分類器,獲得了較好的分類效果。類似的,Shalaby等[10]基于LSTM訓(xùn)練固定層次結(jié)構(gòu)向量(Fixed Hierarchy Vectors)對(duì)文檔表示進(jìn)行了增強(qiáng)學(xué)習(xí),極大地提升了分類的準(zhǔn)確性。可見,在專利文檔分類的研究中,詞或文檔表示的效果好壞是構(gòu)建一個(gè)快速且穩(wěn)定的分類器的關(guān)鍵。
傳統(tǒng)的詞向量,如Word2Vec[8]和GloVe[11],主要通過建立語言模型[12]獲得,在表達(dá)多義詞方面存在較大缺陷。為此,Peters等[13]提出的Elmo模型利用雙向長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(Bi-LSTM)生成詞的上下文表示,在獲得預(yù)先訓(xùn)練的詞向量之后根據(jù)實(shí)際數(shù)據(jù)的上下文進(jìn)行向量表達(dá)的動(dòng)態(tài)調(diào)整。Alec等[14]提出基于Transformer的生成式預(yù)訓(xùn)練詞向量模型(Generative Pre-Training,GPT),在多項(xiàng)NLP任務(wù)中獲得了當(dāng)時(shí)的最高分?jǐn)?shù)。Devlin等[15]吸收了Elmo和GPT模型的優(yōu)勢(shì),提出了基于Transformer的雙向編碼器模型(BERT),憑借其優(yōu)秀的表達(dá)詞句能力,在GLUE排行榜上,刷新了多達(dá)11項(xiàng)NLP任務(wù)的記錄。BERT預(yù)訓(xùn)練模型可以根據(jù)具體下游任務(wù)進(jìn)行參數(shù)微調(diào)。在此基礎(chǔ)上,通過簡(jiǎn)單的接口處理其他自然語言處理任務(wù),如文本分類。目前,BERT已廣泛應(yīng)用于如命名實(shí)體識(shí)別[16]、閱讀理解問答[17]等各項(xiàng)自然語言處理任務(wù)中,自然語言處理自此進(jìn)入了預(yù)訓(xùn)練模型的大規(guī)模應(yīng)用新階段。雖然BERT提供了下游任務(wù)的簡(jiǎn)單接口,可以直接進(jìn)行文本分類。然而,BERT作為預(yù)訓(xùn)練語言模型,關(guān)于其作為文檔向量的研究和應(yīng)用尚不多見。fastText[18-19]通過將整篇文檔的詞及N-gram向量疊加平均得到文檔向量,然后使用文檔向量直接做softmax多分類,在處理簡(jiǎn)單文本分類中獲得了較好的效果。但是這種利用詞向量(word embedding)表達(dá)文本的方式無法區(qū)分多義詞。而BERT在預(yù)訓(xùn)練的基礎(chǔ)上,根據(jù)具體語句進(jìn)行參數(shù)微調(diào),在某種程度上緩解了這一問題。因此,本文提出了BERT-CNN模型,嘗試將BERT作為編碼器,將專利摘要映射成文檔向量,在其上疊加更加復(fù)雜的卷積神經(jīng)網(wǎng)絡(luò)。
本文基于BERT預(yù)訓(xùn)練語言模型,提取其頂部四層Transformer的輸出作為專利摘要的文檔向量,與卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行聯(lián)合訓(xùn)練。
2.1.1 BERT層
BERT的英文全稱是Bidirectional Encoder Representations from Transformers,采用雙向Transformer編碼器[20],利用多頭注意力機(jī)制融合了上下文信息。同時(shí),與早期通過訓(xùn)練語言模型的目標(biāo)任務(wù)——“預(yù)測(cè)下一個(gè)詞”[12]不同的是,BERT設(shè)置了兩種目標(biāo)任務(wù),分別獲取單詞與句子級(jí)別的表義方式: ①遮蓋語言模型; ②上下句關(guān)系預(yù)測(cè)。其中,遮蓋語言模型類似“完形填空”,即隨機(jī)遮蓋15%的句子,讓編碼器預(yù)測(cè)這些詞;上下句關(guān)系預(yù)測(cè)通過預(yù)測(cè)兩個(gè)隨機(jī)句子能否組成上下句來學(xué)習(xí)句子間的關(guān)系。通過這樣訓(xùn)練出來的模型,BERT具有很強(qiáng)的句詞表達(dá)能力,無論是在字詞級(jí)別的NLP任務(wù),如命名實(shí)體識(shí)別,還是在如問答類的句子級(jí)別的NLP任務(wù)中,都具有卓越的表現(xiàn)。在BERT的頂層,可以直接疊加簡(jiǎn)單的線性模型,結(jié)合具體的任務(wù)(specific-task)做參數(shù)微調(diào)(fine-tune)來完成其他NLP任務(wù),如文本分類。
BERT模型由多層雙向Transformer構(gòu)成,每個(gè)Transformer利用多頭注意力機(jī)制(Multi-Head Attention)建立詞與詞之間的聯(lián)系強(qiáng)弱(權(quán)重)。本文選取BERT-Base作為預(yù)訓(xùn)練模型。BERT-Base擁有12個(gè)Transformer層,本文中的BERT-CNN采用BERT后四層的輸出作為下游CNN模型的輸入,如圖1所示。
圖1 BERT-CNN模型結(jié)構(gòu)圖
2.1.2 Conv2D層
卷積神經(jīng)網(wǎng)絡(luò)(CNN)在大部分情況下用于圖像識(shí)別,但是在自然語言處理中也獲得了很好的效果[21]。BERT中每一層Transformer的輸出都可以作為句向量(維度為768的向量),本文取其最后四層L12、L11、L10、L9作為CNN的輸入矩陣I(768×4)。然后用32個(gè)濾波器F(3×4),步長(zhǎng)為1,掃描輸入矩陣I,目的是提取文本3-Gram特征,通過I?F內(nèi)積獲得32個(gè)特征向量。為了降低計(jì)算的復(fù)雜度,CNN通常使用池化計(jì)算降低矩陣的維度。池化計(jì)算有最大池化(Max-Pooling)與平均池化(Average-Pooling)兩種方式,一般采用最大池化,即在池化窗口中選取最大的元素。由于專利文本分類對(duì)于局部的某些關(guān)鍵詞或術(shù)語比較敏感,本文選取最大池化方式。經(jīng)過最大池化層后拼接并通過Softmax層獲得專利分類的概率分布。在網(wǎng)絡(luò)訓(xùn)練過程中,濾波器的參數(shù)是不共享的,并且與網(wǎng)絡(luò)間的連接參數(shù)同時(shí)更新。
多層文本分類是大規(guī)模文本信息組織的關(guān)鍵技術(shù),其主要特點(diǎn)在于多層文本分類需要考慮的類別巨大,類別之間往往存在各種依賴關(guān)系, 并構(gòu)成一個(gè)復(fù)雜的層次化的類別體系。在實(shí)際工作中構(gòu)建一個(gè)多層文本分類器尤其困難,一方面眾多類別需要大量的標(biāo)注樣本,費(fèi)時(shí)費(fèi)力;另一方面,由于分類的多樣性與多層性,實(shí)踐中很難保證樣本在各個(gè)層級(jí)與類別的均衡分布。
國(guó)際上針對(duì)此類問題也舉辦了專門的大規(guī)模文本多層級(jí)分類評(píng)測(cè),如LSHTC[22]。目前處理該類問題一般有兩種策略: 全局策略和局部策略。
全局策略在處理多層級(jí)任務(wù)時(shí)沒有區(qū)分層級(jí),使用單一的分類器,完全忽略類別間的層次結(jié)構(gòu),這在處理類別有限并且樣本分布均衡的任務(wù)時(shí)簡(jiǎn)單有效。但是隨著層級(jí)、類別的增加,數(shù)據(jù)分布的不均衡,其魯棒性變低。在諸如圖書分類或者專利分類等多層級(jí)任務(wù)中,類別數(shù)量龐大(如IPC中“組”的分類數(shù)高達(dá)74 503種),樣本分布不均,算法的準(zhǔn)確率急劇下降。此外,全局策略分類方法將所有類別獨(dú)立看待,在某種程度上忽視了類別之間的聯(lián)系。例如,在IPC分類中,“A21C3/00”與“A21C7/00”在專業(yè)領(lǐng)域上很接近,而與“D21C7/00”相去甚遠(yuǎn)。然而,這種方法將三者看成獨(dú)立的類別,沒有任何聯(lián)系,這顯然是不恰當(dāng)?shù)摹?/p>
局部策略利用分治的思想,構(gòu)建一系列分類器,每個(gè)分類器只處理局部的類別。分類時(shí),從分類體系的根節(jié)點(diǎn)出發(fā),自頂向下確定樣本的分類。有研究結(jié)果表明,局部的策略優(yōu)于全局策略[23]。同時(shí),局部的層次分類策略適用于規(guī)模較大、類別與數(shù)據(jù)分布不均勻的體系[24]。
針對(duì)專利分類的多層級(jí)問題,本文采用局部策略,為每一個(gè)非葉節(jié)點(diǎn)構(gòu)建分類器,提出了一種堆疊式的神經(jīng)網(wǎng)絡(luò)組合訓(xùn)練系統(tǒng)(圖2)。系統(tǒng)分為兩層: L1層和L2層,其中,L1為一級(jí)分類層,L2為二級(jí)分類層。模型首先獲取所有訓(xùn)練樣本輸入,經(jīng)過不同的分類器后訓(xùn)練一級(jí)分類L1。隨后,在中間設(shè)置數(shù)據(jù)傳遞層。該層的作用是根據(jù)L1層分類結(jié)果篩選L2層模型。具體做法如下: 在訓(xùn)練時(shí),根據(jù)樣本的L1層的標(biāo)簽值Ym獲取所有一級(jí)分類為Ym的樣本作為L(zhǎng)2層的訓(xùn)練樣本。例如,若L1層輸出為‘Y2’, 則L2層將只獲取所有一級(jí)分類為‘Y2’的數(shù)據(jù)進(jìn)行訓(xùn)練;在預(yù)測(cè)時(shí),根據(jù)L1層預(yù)測(cè)結(jié)果,進(jìn)入相應(yīng)的L2層節(jié)點(diǎn)進(jìn)行進(jìn)一步分類。
圖2 本文的多層級(jí)分類網(wǎng)絡(luò)架構(gòu)
本文的數(shù)據(jù)集采用國(guó)家信息中心提供的全國(guó)專利申請(qǐng)數(shù)據(jù)(1)國(guó)家信息中心, “發(fā)明專利數(shù)據(jù)”, 2017, http://dx.doi.org/10.18170/DVN/ASRTHL, 北京大學(xué)開放研究數(shù)據(jù)平臺(tái), V2。數(shù)據(jù)總量達(dá)到277萬條記錄。時(shí)間跨度為2017年全年(按照專利申請(qǐng)時(shí)間統(tǒng)計(jì)),地域覆蓋全國(guó),數(shù)據(jù)主要包含16個(gè)核心字段: 申請(qǐng)?zhí)?、申?qǐng)日、公開號(hào)、公開日、專利名稱、專利分類、摘要、申請(qǐng)(專利權(quán))人、發(fā)明人、申請(qǐng)人地址、申請(qǐng)人郵編、所在省代碼、所在市代碼、所在縣代碼、法律狀態(tài)、有效性。數(shù)據(jù)格式為CSV,編碼格式為GBK。本實(shí)驗(yàn)提取“摘要”和“專利分類”兩個(gè)字段進(jìn)行分類模型訓(xùn)練。專列分類采用IPC分類法,該分類法將專利分為“部(section)—類(class)—亞類(subclass)—組(group)”四個(gè)層級(jí),如“A01D42/04”,“A”是部,“01”是類,“D”是亞類,“42/04”是組。為簡(jiǎn)單起見,本文僅選取前兩層進(jìn)行分類,即部和類。
經(jīng)過剔除無效數(shù)據(jù)(分類號(hào)為非嚴(yán)格的IPC分類)等預(yù)處理操作后,原始數(shù)據(jù)剩余約231.77萬條(數(shù)據(jù)結(jié)構(gòu)見圖3)。該數(shù)據(jù)集包含了IPC的所有部(字母A至H)和類(130個(gè))。其中,平均每個(gè)類約含有1.78萬條文本。詳細(xì)的文本與分類統(tǒng)計(jì)見表1。
圖3 預(yù)處理后的專利數(shù)據(jù)集
表1 專利數(shù)據(jù)集文本與類別相關(guān)統(tǒng)計(jì)
通過分析發(fā)現(xiàn)該數(shù)據(jù)集存在如下問題: ①各部中含有類的數(shù)目和文本數(shù)不均。其中,B部的類別最多,達(dá)到38個(gè)類;H部類別最少,只有6個(gè)類。其次,各部和各類文本數(shù)量分布不均衡。②部間存在相似性問題。例如,“F: 照明”“G: 物理”和“H: 電學(xué)”三者存在較強(qiáng)的相似性,人工也難以準(zhǔn)確區(qū)分。數(shù)據(jù)的稀疏性與類別的相似性都會(huì)對(duì)模型的準(zhǔn)確性造成較大影響。在不進(jìn)行數(shù)據(jù)增強(qiáng)的情況下,全局策略和局部策略的表現(xiàn)會(huì)存在一定差異。
本文實(shí)驗(yàn)代碼基于Python 3.7.3,深度學(xué)習(xí)框架主要利用TensorFlow r1.13,Linux服務(wù)器處理器為Intel i7的12核處理器,GPU顯卡為4張Nvidia 2080Ti,運(yùn)行內(nèi)存為64GB。
本實(shí)驗(yàn)選取卷積神經(jīng)網(wǎng)絡(luò)和循環(huán)神經(jīng)網(wǎng)絡(luò)作為對(duì)照基線模型。在基線模型中,我們使用300維Word2Vec中文詞向量[25]。文本最大長(zhǎng)度L設(shè)為200個(gè)詞,網(wǎng)絡(luò)訓(xùn)練的批處理(batch size)大小為20,Epoch為20,學(xué)習(xí)率η為2e-5。BERT-CNN模型使用中文BERT_Basic模型(Chinese_L-12_H-768_A-12),學(xué)習(xí)率為2e-5,batch_size為24,最大文本長(zhǎng)度L為200,Epoch為20,優(yōu)化器為Adam[26]。BERT-CNN中的CNN濾波器個(gè)數(shù)為32,激活函數(shù)為ReLU。
本文按9:1將數(shù)據(jù)集劃分為訓(xùn)練集與測(cè)試集?;€模型的數(shù)據(jù)經(jīng)過了分詞預(yù)處理后利用第三方訓(xùn)練的詞向量。BERT-CNN/RNN/Transformer模型不需要分詞。
3.3.1 評(píng)估指標(biāo)
本文模型使用正確率作為評(píng)估指標(biāo),最終聯(lián)合模型的正確率Acc(X)通過式(1)計(jì)算:
其中,Acc(L1)代表第一層L1模型的預(yù)測(cè)正確率,m代表第一層分類(部)的數(shù)量,M代表所有樣本的數(shù)量,Nj表示部j含有的二級(jí)分類(類)的樣本數(shù)。Acc(L2m)表示第二層(類)模型的正確率。
3.3.2 實(shí)驗(yàn)結(jié)果
表2是我們的實(shí)驗(yàn)結(jié)果,Acc(局部)和Acc(全局)分別為通過局部策略與全局策略得到的模型準(zhǔn)確率??梢钥闯?,在該數(shù)據(jù)集上,基于局部策略的模型性能遠(yuǎn)高于直接分類的全局策略。統(tǒng)計(jì)6個(gè)模型的平均準(zhǔn)確率,可以發(fā)現(xiàn)前者(78.58%)比后者(69.37%)高9.21%。在各個(gè)模型上,前者的準(zhǔn)確率均高于后者。Acc(L1)表示模型預(yù)測(cè)“部”的準(zhǔn)確性,Acc(L2)表示預(yù)測(cè)單獨(dú)各“類”的準(zhǔn)確性。
表2 基于預(yù)訓(xùn)練模型的BERT-CNN與基線方法的實(shí)驗(yàn)結(jié)果 (單位: %)
實(shí)驗(yàn)基線系統(tǒng)選取常用的卷積神經(jīng)網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)分類器。在該數(shù)據(jù)集上,以BERT為基礎(chǔ)的模型表現(xiàn)普遍不錯(cuò)。其中,BERT-CNN模型的分類效果最好,在單獨(dú)層的分類中的準(zhǔn)確率基本都超過了90%,總體分類準(zhǔn)確率達(dá)到了84.3%,與CNN、RNN相比提升了14%左右。這種大幅度的提升進(jìn)一步證實(shí)了基于預(yù)訓(xùn)練模型的BERT-CNN在文本分類方面強(qiáng)大的性能。另外,可以看出CNN和RNN在該數(shù)據(jù)集上分類性能相仿,在數(shù)據(jù)量大和類別較多的情況下還會(huì)存在準(zhǔn)確率下降的問題。例如,基線方法在處理部級(jí)分類時(shí)比類級(jí)分類的準(zhǔn)確率低4%,顯示出在大數(shù)據(jù)量上的性能下降,同時(shí)兩種基線方法在類別較多的B類上的準(zhǔn)確率衰減比BERT-CNN嚴(yán)重。實(shí)驗(yàn)結(jié)果進(jìn)一步表明,本文模型在處理大數(shù)據(jù)量和多類別上的魯棒性。
同時(shí),對(duì)比以BERT為基礎(chǔ)的模型可以發(fā)現(xiàn),在其上疊加其他模型都獲得了比單純的BERT更高的準(zhǔn)確率。在該數(shù)據(jù)集上,模型的準(zhǔn)確率BERT-CNN>BERT-RNN>BERT-Transformer > BERT。由于BERT是由Transformer組成的,因此,在其上疊加Transformer的效果較為一般,準(zhǔn)確率提升不超過1%。
3.3.3 其他數(shù)據(jù)集
為了進(jìn)一步證實(shí)BERT-CNN/RNN/Transformer等模型的效果,本文選取清華大學(xué)自然語言處理實(shí)驗(yàn)室開源的新聞文本分類數(shù)據(jù)集THUCNews[27]進(jìn)行平行對(duì)照實(shí)驗(yàn)。該數(shù)據(jù)集根據(jù)新浪新聞RSS訂閱頻道2005—2011年間的歷史數(shù)據(jù)篩選過濾生成,包含了74萬篇新聞文檔,主要包括財(cái)經(jīng)、彩票、房產(chǎn)、股票等14個(gè)類別。通過本文模型進(jìn)行實(shí)驗(yàn),結(jié)果如表3所示。
表3 BERT等模型在THUCNews數(shù)據(jù)集上的準(zhǔn)確率
從表3可以看出,在THUCNews數(shù)據(jù)集上,在BERT上疊加其他模型(BERT-RNN、BERT-CNN、BERT-Transformer等)在準(zhǔn)確率上超過了Word2Vec+RNN/CNN,進(jìn)一步證實(shí)了BERT在文本表示上超過了傳統(tǒng)的Word2Vec。BERT-Transformer與BERT在性能上較為接近。同時(shí),我們也發(fā)現(xiàn),與專利數(shù)據(jù)結(jié)果不同,BERT-RNN在該數(shù)據(jù)集的表現(xiàn)超過了BERT-CNN。因此,在BERT作為基礎(chǔ)模型時(shí),如何篩選上層模型需要針對(duì)不同的任務(wù)與場(chǎng)景進(jìn)行具體分析。
3.3.4 討論
上述的結(jié)果已經(jīng)表明,局部策略自頂向下構(gòu)建多個(gè)分類器,比較適用于專利分類這種大規(guī)模、多層級(jí)文本分類的場(chǎng)景,在準(zhǔn)確率上優(yōu)于簡(jiǎn)單的全局策略。當(dāng)然,全局策略由于具有只需設(shè)計(jì)單一的模型的優(yōu)點(diǎn),在處理分類體系均衡的多層分類問題時(shí)在模型訓(xùn)練上更加高效。但是,這種高效需要在數(shù)據(jù)端進(jìn)行更多的處理,必須對(duì)不平衡的數(shù)據(jù)分布進(jìn)行增廣與擴(kuò)展,甚至引入外部數(shù)據(jù)[28]。
另外,使用基于預(yù)訓(xùn)練模型的BERT-CNN在提高專利分類準(zhǔn)確性方面具有較好的效果。BERT所提供的文檔向量具有良好的字詞與語義表征能力,其基于預(yù)訓(xùn)練的微調(diào)可以有效解決傳統(tǒng)詞向量一詞多義的問題,這是模型獲取高準(zhǔn)確率的關(guān)鍵。
BERT在底層使用雙向Transformer,通過多頭注意力機(jī)制可以獲取字詞之間的聯(lián)系。因此,對(duì)注意力的可視化研究可以直觀地了解BERT模型的注意力機(jī)制,幫助解釋模型。圖4利用Vig等[29]開源的注意力可視化工具BERTviz進(jìn)行模型可視化分析。該工具能用于探索預(yù)訓(xùn)練的BERT模型各個(gè)層以及頭部的注意力模式。
圖4 BERT模型的注意力機(jī)制可視化
以本文的專利分類為例,輸入以下兩個(gè)句子:
句子A: 本實(shí)用新型公開了一種固體絕緣開關(guān)柜結(jié)構(gòu)。
句子B: 它包括隔離開關(guān)單元、接地裝置和隔離插座裝置。
圖4(a)-圖4(c)和圖4(d)-圖4(f)分別是BERT第2層與第11層的注意力機(jī)制的可視化,將注意力可視化為被更新位置(左)和被關(guān)注位置(右)之間的連線。線段的灰度代表不同的“注意力頭”,線段寬度反映注意力值的大小。BERT使用[CLS]進(jìn)行分類任務(wù)的第一個(gè)輸入,[SEP]是句子的分隔。圖4(a)顯示,在第2層中,注意力主要體現(xiàn)詞匯關(guān)系: 句中的每個(gè)字的注意力主要集中在其下一個(gè)字,如“實(shí)”的注意力集中在“用”。圖4(b)、圖4(c)顯示,句間的注意力主要集中在相似的詞,如“開”“關(guān)”之間的強(qiáng)烈注意力聯(lián)系。圖4(d)-圖4(f)顯示,在第11層中,注意力主要體現(xiàn)在語義關(guān)系上,如句子A中的“固體絕緣開關(guān)柜結(jié)構(gòu)”與句子B中的“隔離開關(guān)單元”“接地裝置”和“隔離插座裝置”具有較強(qiáng)的注意力強(qiáng)度。
基于以上發(fā)現(xiàn),我們認(rèn)為BERT中的每一層Transformer的輸出都可以作為句子或文檔向量為其他模型提供輸入。具體選取Transformer的哪些層作為文檔向量在某種程度上也會(huì)影響模型的準(zhǔn)確率。針對(duì)此問題,本文對(duì)數(shù)據(jù)集中的D部進(jìn)行了平行對(duì)照實(shí)驗(yàn),結(jié)果如圖5所示。從圖5可以看出,模型的準(zhǔn)確率在Transformer層數(shù)N=4時(shí)達(dá)到最大。當(dāng)N<4時(shí),Transformer的輸出作為文檔向量的代表性還不太強(qiáng),準(zhǔn)確率略有下降;當(dāng)N>4時(shí),文檔向量中表征詞匯語法關(guān)系的成分增大,對(duì)分類結(jié)果意義不大,反而造成干擾,導(dǎo)致準(zhǔn)確率下降。因此,本文認(rèn)為利用BERT預(yù)訓(xùn)練提供的向量與其他模型融合時(shí),應(yīng)該根據(jù)具體的任務(wù)特點(diǎn)進(jìn)行合理選擇。
圖5 不同Transformer層數(shù)作為輸入的分類準(zhǔn)確率直方圖
文檔分類是文獻(xiàn)管理與信息處理中的重點(diǎn)和難點(diǎn),尤其是在專利文獻(xiàn)這種多層級(jí)的分類領(lǐng)域中,傳統(tǒng)的統(tǒng)計(jì)方法準(zhǔn)確率較低,且建模過程費(fèi)時(shí)費(fèi)力。本文選取國(guó)家信息中心公布的2017年全國(guó)專利申請(qǐng)數(shù)據(jù),以專利的自動(dòng)分類作為研究目標(biāo),在預(yù)訓(xùn)練模型BERT的基礎(chǔ)上抽取文檔向量,提出了BERT-CNN分層級(jí)深度網(wǎng)絡(luò)分類模型。本文提出的方法在該專利數(shù)據(jù)集上獲得了84.3%的準(zhǔn)確率,大幅度領(lǐng)先過去的卷積神經(jīng)網(wǎng)絡(luò)與循環(huán)神經(jīng)網(wǎng)絡(luò)分類法。實(shí)驗(yàn)結(jié)果表明,基于預(yù)訓(xùn)練語言模型的BERT-CNN、BERT-RNN、BERT-Transformer提取的向量表示,在應(yīng)用上效果優(yōu)于傳統(tǒng)的詞向量。同時(shí),在處理數(shù)據(jù)量和類別較多的任務(wù)上,該模型具備穩(wěn)定性強(qiáng)的特點(diǎn)。進(jìn)一步實(shí)驗(yàn)表明,Transformer層數(shù)的選取對(duì)模型的準(zhǔn)確率有一定的影響,應(yīng)該根據(jù)具體的任務(wù)特點(diǎn)選擇合適的輸出層。本文對(duì)比了多層級(jí)文本分類中的全局策略與局部策略的差異,在數(shù)據(jù)和類別分布不均的場(chǎng)景下,局部多層分類模型系統(tǒng)的性能明顯高于簡(jiǎn)單的全局策略分類模型。
本文的局限性在于未將模型擴(kuò)展到更深層級(jí)的分類中。后續(xù)研究中,將擴(kuò)展模型層級(jí)到“組”,以應(yīng)用于實(shí)際的專利自動(dòng)分類中;同時(shí),探索更多的預(yù)訓(xùn)練模型來進(jìn)一步豐富專利文獻(xiàn)分類領(lǐng)域的研究。