999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

融合動(dòng)態(tài)掩碼注意力與多教師多特征知識(shí)蒸餾的文本分類

2024-05-09 02:56:54王潤(rùn)周張新生王明虎
中文信息學(xué)報(bào) 2024年3期
關(guān)鍵詞:特征文本模型

王潤(rùn)周,張新生,王明虎

(西安建筑科技大學(xué) 管理學(xué)院,陜西 西安 710055)

0 引言

文本分類是自然語言處理(Natural Language Processing,NLP)領(lǐng)域的一個(gè)重要任務(wù),旨在將文本文檔分為不同的類別或標(biāo)簽,幫助用戶能夠從文本資源中提取關(guān)鍵信息[1]。這一任務(wù)在多個(gè)領(lǐng)域中發(fā)揮著重要作用,包括情感分析、垃圾郵件過濾、金融文本挖掘和新聞分類等[2-4]。隨著互聯(lián)網(wǎng)的不斷發(fā)展,網(wǎng)絡(luò)新聞、社交媒體評(píng)論等數(shù)據(jù)源導(dǎo)致可用的文本數(shù)據(jù)量急劇增加。這些數(shù)據(jù)不僅在數(shù)量上龐大,而且在多樣性方面非常豐富,包括來自不同領(lǐng)域、不同語言以及不同文本風(fēng)格的內(nèi)容。這種多樣性使文本分類的復(fù)雜性增加,因?yàn)樾枰m應(yīng)不斷變化的數(shù)據(jù)背景和多種文本表達(dá)方式。此外,文本數(shù)據(jù)通常需要經(jīng)過復(fù)雜的預(yù)處理過程,如分詞、去除停用詞、詞干提取和將文本轉(zhuǎn)化為向量表示,以此獲取關(guān)鍵信息[5]。這些預(yù)處理步驟既耗費(fèi)時(shí)間又需要大量計(jì)算資源,尤其是在應(yīng)對(duì)大規(guī)模數(shù)據(jù)集時(shí)。因此,在應(yīng)對(duì)復(fù)雜、龐大的數(shù)據(jù)集時(shí),尋求精準(zhǔn)、快速且低資源消耗的文本分類方法變得至關(guān)重要。

目前,大型語言模型通過在大規(guī)模文本數(shù)據(jù)上進(jìn)行預(yù)訓(xùn)練,在多種自然語言處理任務(wù)中表現(xiàn)出卓越的性能。然而,這些大型模型的復(fù)雜性和計(jì)算成本逐漸增加,限制了它們?cè)谫Y源有限環(huán)境下的廣泛應(yīng)用[6]。知識(shí)蒸餾的出現(xiàn)緩解了這些問題,其將大型語言模型的知識(shí)傳遞給具有輕量化參數(shù)的小型模型,使得小型模型學(xué)習(xí)到大部分大型模型的知識(shí),這不僅可以實(shí)現(xiàn)高效、快速的預(yù)測(cè),并且不會(huì)顯著降低模型的性能[7]。通常,知識(shí)蒸餾采用“師-生模型”訓(xùn)練模式,通過一個(gè)預(yù)訓(xùn)練好的大型教師模型的輸出,輔助新的小型學(xué)生模型訓(xùn)練[8]。由于單教師知識(shí)蒸餾通常只依賴一個(gè)大型教師模型來傳遞知識(shí),且這個(gè)教師模型可能受限于特定任務(wù)、數(shù)據(jù)領(lǐng)域或訓(xùn)練數(shù)據(jù),導(dǎo)致其無法提供全面性和多樣性的知識(shí)。為此,“師-生-師模型”的多教師訓(xùn)練模式開始出現(xiàn)。多教師知識(shí)蒸餾允許整合來自多個(gè)教師模型的知識(shí),這些教師模型經(jīng)過在不同任務(wù)和數(shù)據(jù)領(lǐng)域上進(jìn)行專門訓(xùn)練,提供了更廣泛、全面的知識(shí)[9]。這保證了學(xué)生模型可以獲得更豐富和多元的知識(shí),提高了學(xué)生模型在多個(gè)任務(wù)和領(lǐng)域的性能。基于上述特性,知識(shí)蒸餾為解決文本分類任務(wù)中的資源消耗和效率問題提供了一種有效途徑,同時(shí)保持了高分類性能。

盡管知識(shí)蒸餾在文本分類任務(wù)中的研究已經(jīng)十分豐富,并且取得了良好的分類效果,但仍然存在一些不足: 首先,當(dāng)前知識(shí)蒸餾的方法主要關(guān)注模型在最后一層的輸出,較少同時(shí)結(jié)合多個(gè)教師模型的性能與其在不同特征層的語義信息。這不僅會(huì)忽略模型其他層之間的豐富信息,影響學(xué)生模型的特征表示能力,而且當(dāng)最后一層的特征層受到噪聲干擾時(shí),學(xué)生模型的學(xué)習(xí)效果更容易受到干擾。再者,知識(shí)蒸餾過程需要傳輸大量長(zhǎng)度不等的文本數(shù)據(jù)信息,現(xiàn)有的蒸餾過程通過全局填充引入大量冗余信息,不能動(dòng)態(tài)關(guān)注數(shù)據(jù)中關(guān)鍵信息的變化。

因此,本文提出了一種融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征知識(shí)蒸餾模型,并將其應(yīng)用于文本分類任務(wù)。通過結(jié)合多種教師模型的強(qiáng)大性能、不同特征層的語義信息來大幅度提升學(xué)生模型的預(yù)測(cè)性能,并采用動(dòng)態(tài)掩碼注意力機(jī)制實(shí)現(xiàn)動(dòng)態(tài)截?cái)鄶?shù)據(jù),使得蒸餾過程更加關(guān)注有效信息,減少無效信息的干擾。本文的主要貢獻(xiàn)如下:

(1) 提出了一種同時(shí)結(jié)合多種大型教師模型與多種特征層語義信息的知識(shí)蒸餾方法,使得輕量化的學(xué)生模型可以學(xué)習(xí)多元化知識(shí)與多種特征表示。

(2) 在知識(shí)蒸餾過程中提出了動(dòng)態(tài)掩碼注意力機(jī)制,其可以在知識(shí)蒸餾過程中動(dòng)態(tài)屏蔽無效輸入信息,減少冗余信息干擾,保證模型盡可能關(guān)注關(guān)鍵信息。

(3) 多種對(duì)比實(shí)驗(yàn)結(jié)果表明,經(jīng)過本文方法的蒸餾后,學(xué)生模型TinyBERT不僅取得了比其他基準(zhǔn)蒸餾方法更佳的性能,而且只用了大型教師模型1/10的參數(shù)量、約1/2的運(yùn)行時(shí)間就取得了與教師模型相當(dāng)?shù)念A(yù)測(cè)結(jié)果。

1 相關(guān)工作

本節(jié)主要介紹文本分類的常用方法以及知識(shí)蒸餾在文本分類模型中的應(yīng)用。我們對(duì)現(xiàn)有研究方法進(jìn)行總結(jié),將目前文本分類的方法分為四類: 即基于傳統(tǒng)機(jī)器學(xué)習(xí)、基于深度學(xué)習(xí)、基于預(yù)訓(xùn)練模型以及基于知識(shí)蒸餾的方法。

基于傳統(tǒng)機(jī)器學(xué)習(xí)方法的文本分類依賴于特征提取和模型訓(xùn)練。文本數(shù)據(jù)首先經(jīng)過特征提取過程,將文本轉(zhuǎn)化為機(jī)器學(xué)習(xí)算法可以處理的數(shù)值特征。因此,特征提取成為了文本分類的關(guān)鍵步驟,在這一階段,文本數(shù)據(jù)的特性主要基于詞袋模型或TF-IDF值將文本轉(zhuǎn)化為數(shù)值特征向量[10]。結(jié)合詞頻、詞語的重要程度,一些常用的機(jī)器學(xué)習(xí)如樸素貝葉斯[11]、支持向量機(jī)(Support Vector Machine, SVM)[12]、隨機(jī)森林(Random Forest, RF)[13]等方法被廣泛用在了文本分類任務(wù)中。然而,在處理大規(guī)模、復(fù)雜的自然語言處理任務(wù)時(shí),傳統(tǒng)機(jī)器學(xué)習(xí)方法依賴于手工設(shè)計(jì)的特征,而這些特征難以準(zhǔn)確表示大量的文本數(shù)據(jù)[14]。更重要的是,傳統(tǒng)機(jī)器學(xué)習(xí)中的特征提取方法主要基于詞語的詞頻和重要性,忽略了詞語之間的語義關(guān)系。

隨著深度學(xué)習(xí)的發(fā)展,神經(jīng)網(wǎng)絡(luò)方法與詞嵌入技術(shù)不斷在文本分類任務(wù)中得到應(yīng)用。在這一階段,依據(jù)Word2Vec方法,文本數(shù)據(jù)可以被轉(zhuǎn)化為包含文本數(shù)據(jù)語義相關(guān)性的詞嵌入向量[15]。這減輕了特征工程的負(fù)擔(dān),使得模型更加通用和適應(yīng)不同類型的文本數(shù)據(jù)。并且,深度學(xué)習(xí)方法還可以自動(dòng)提取文本中的語義信息,學(xué)習(xí)詞語、短語和文本之間的復(fù)雜語義關(guān)系。例如,卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks, CNN)可以捕獲文本中的局部特征,通過卷積層和池化層,識(shí)別文本中的重要模式[16]。循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)、長(zhǎng)短時(shí)記憶網(wǎng)絡(luò)(Long Short Term Memory Network, LSTM)可以在文本分類中用于捕獲文本的上下文信息[17-18]。隨后,基于CNN、RNN、LSTM的混合深度學(xué)習(xí)模型也被用在了文本分類任務(wù)中,并達(dá)到了較優(yōu)的預(yù)測(cè)性能[19-20]。然而,基于深度學(xué)習(xí)的分類方法通常需要用大規(guī)模標(biāo)記的文本數(shù)據(jù)來進(jìn)行訓(xùn)練,以達(dá)到良好的性能,這導(dǎo)致訓(xùn)練一個(gè)性能較好的深度學(xué)習(xí)模型需要大量的數(shù)據(jù)與機(jī)器資源。因此,如何設(shè)計(jì)一種自身就具有豐富語言知識(shí),并將其遷移到不同的任務(wù)的模型就成為了焦點(diǎn)。

基于預(yù)訓(xùn)練模型的方法的核心思想是在大規(guī)模文本數(shù)據(jù)上預(yù)訓(xùn)練一個(gè)深度學(xué)習(xí)模型,然后將該模型微調(diào)到特定任務(wù)。因此,在訓(xùn)練開始前,預(yù)訓(xùn)練模型就已經(jīng)具備在大規(guī)模文本數(shù)據(jù)上獲取豐富語義能力。它們可以遷移到不同的文本分類任務(wù),即使在小規(guī)模標(biāo)記數(shù)據(jù)上也能表現(xiàn)出色。于是預(yù)訓(xùn)練模型如BERT、RoBERTa、Electra等模型成為了提取文本語義信息的重要一環(huán),并結(jié)合一些深度學(xué)習(xí)方法取得了更加優(yōu)秀的預(yù)測(cè)性能[21-23]。但是,大多數(shù)預(yù)訓(xùn)練模型具有大量參數(shù),因此在訓(xùn)練和推理時(shí)需要大量計(jì)算資源,包括高性能的GPU或TPU。這可能使得在資源受限的環(huán)境中難以使用這些模型。

基于知識(shí)蒸餾的方法緩解了預(yù)訓(xùn)練模型的問題,其允許將大型預(yù)訓(xùn)練模型的知識(shí)傳遞給小型模型,以獲得更輕量、高效的模型,同時(shí)保持高性能。這使得知識(shí)蒸餾成為在文本分類任務(wù)中提供輕量、高效預(yù)測(cè)模型的有力工具。例如,一些學(xué)者將12層網(wǎng)絡(luò)的BERT模型蒸餾到6層網(wǎng)絡(luò)的淺層模型,得到的學(xué)生模型推理速度提高近一倍[24]。此后,一些研究人員將復(fù)雜的混合教師模型蒸餾到輕量化的雙向門控循環(huán)單元網(wǎng)絡(luò)中,達(dá)到了與BERT-Base模型相當(dāng)?shù)奈谋痉诸愋Ч鸞25]。Zhang等人基于多教師模型的知識(shí)蒸餾將知識(shí)從多教師模型轉(zhuǎn)移到學(xué)生模型,其方法在多個(gè)公開數(shù)據(jù)集上表現(xiàn)出更少參數(shù)和更少推理時(shí)間[26]。Guo等人在蒸餾過程中引入注意力圖來構(gòu)建知識(shí)蒸餾的樣本相關(guān)性,保證蒸餾過程中能最大程度地關(guān)注有效信息[27]。因此,本文基于上述研究提出了一種融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征知識(shí)蒸餾的方法,使得得到的輕量化學(xué)生模型在文本分類任務(wù)上易于部署,并達(dá)到更精準(zhǔn)、高效的預(yù)測(cè)結(jié)果。

2 理論基礎(chǔ)

2.1 問題描述

傳統(tǒng)的多教師知識(shí)蒸餾策略主要考慮多個(gè)教師模型與學(xué)生模型最后一層輸出之間的關(guān)系。即教師模型在最后一層網(wǎng)絡(luò)輸出各個(gè)類別的概率分布,而學(xué)生模型則嘗試在相同數(shù)據(jù)上擬合這些概率分布,這導(dǎo)致在知識(shí)蒸餾過程中忽略其他特征層的影響。再者,在引入注意力階段,傳統(tǒng)的知識(shí)蒸餾過程未能考慮到文本數(shù)據(jù)長(zhǎng)度的不一致性,通常采用固定長(zhǎng)度進(jìn)行注意力機(jī)制的掩碼操作,這也為蒸餾過程帶來更多的無效信息。

本文提出了一種融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征的知識(shí)蒸餾方法。該方法旨在讓學(xué)生模型整合多個(gè)教師模型的強(qiáng)大語義能力,同時(shí)將多個(gè)教師模型的不同特征層的輸出與學(xué)生模型結(jié)合。并且,引入了動(dòng)態(tài)掩碼注意力機(jī)制來動(dòng)態(tài)地關(guān)注不同教師模型的特征層,使得模型可以更好地選擇和集成有效的知識(shí)。下面對(duì)用到的理論方法進(jìn)行簡(jiǎn)單闡述。

2.2 多教師多特征知識(shí)蒸餾

多教師多特征的知識(shí)蒸餾是一種進(jìn)階的知識(shí)蒸餾技術(shù),其目標(biāo)是通過將多種教師模型(Teacher Model)的知識(shí)以及多種特征表示傳遞給一個(gè)輕量化的學(xué)生模型(Student Model)。與傳統(tǒng)的知識(shí)蒸餾方法相比,多教師多特征知識(shí)蒸餾結(jié)合多種教師模型的強(qiáng)大語義能力,并深入學(xué)習(xí)到每個(gè)教師模型在不同特征層的豐富表征,使預(yù)測(cè)性能與抗噪聲能力大幅度提升[28]。

多教師多特征知識(shí)蒸餾過程涉及以下概念: 軟標(biāo)簽(Soft Label, SL)、軟輸出(Soft Output, SO)、硬輸出(Hard Output, HO)和硬標(biāo)簽(Hard Label, HL),各概念的含義如表1所示。

表1 不同的輸出標(biāo)簽

軟標(biāo)簽與軟輸出的計(jì)算如式(1)所示,其中i表示第i個(gè)類別的標(biāo)簽,zi為教師模型的輸出概率,vi為學(xué)生模型的輸出概率,T為溫度參數(shù)。

(1)

在蒸餾過程中,溫度參數(shù)T主用于控制教師模型和學(xué)生模型的輸出分布,即模型在進(jìn)行預(yù)測(cè)時(shí)生成的概率分布。較高的溫度參數(shù)會(huì)使輸出分布更加平緩,負(fù)類標(biāo)簽攜帶的信息會(huì)被相對(duì)地放大,學(xué)生模型從教師模型中學(xué)到的知識(shí)信息會(huì)更加豐富,如圖1所示。

圖1 硬標(biāo)簽與經(jīng)過蒸餾后的軟標(biāo)簽

具體而言,在沒有蒸餾的情況下,教師模型的輸出通常是硬化的,即它們對(duì)于每個(gè)類別只能選擇一個(gè)概率為1的類別,而其他類別的概率為0。經(jīng)過蒸餾后,輸出結(jié)果會(huì)得到每一個(gè)類別的概率表示,因此帶有更豐富的知識(shí)表示。

通常,知識(shí)蒸餾的輸出損失函數(shù)通常需要考慮教師模型與學(xué)生模型之間輸出的損失誤差。而多教師知識(shí)蒸餾的輸出損失(Lpre)由學(xué)生模型的軟輸出與不同教師模型軟標(biāo)簽之間的損失(Lsoft)、學(xué)生模型的硬輸出與硬標(biāo)簽之間的損失(Lhard)組成。具體如式(2)~式(4)所示。

另外,多教師多特征知識(shí)蒸餾的過程還要關(guān)注不同特征層的輸出,因此需要加入不同特征層之間的損失。多教師多特征知識(shí)蒸餾在不同層的損失可綜合表示為式(5):

(5)

其中,Tm與Sm表示教師模型與學(xué)生模型的第m層,M表示模型的總層數(shù)。Lhid表示不同特征層的損失。

最終,多教師多特征知識(shí)蒸餾模型的損失函數(shù)需整合每一個(gè)特征層的損失與最后一層的蒸餾損失。整體損失如式(6)所示。

(6)

2.3 RoBERTa模型

RoBERTa是一種在BERT(Bidirectional Encoder Representations from Transformers)基礎(chǔ)上進(jìn)行改進(jìn)的自然語言處理領(lǐng)域的預(yù)訓(xùn)練模型。因此RoBERTa的模型框架也基于Transformer結(jié)構(gòu),它通過大規(guī)模的無監(jiān)督訓(xùn)練來學(xué)習(xí)語言表示,包括豐富的語法和語義知識(shí)[29]。其運(yùn)行過程如圖2所示。

圖2 RoBERTa模型框架圖

RoBERTa的運(yùn)行結(jié)構(gòu)主要包含Embedding獲取與12層Transformer模型兩個(gè)部分。第一部分利用位置嵌入、分割嵌入和符號(hào)嵌入來獲取文本的語義嵌入向量。第二個(gè)部分是模型架構(gòu),它主要由12層Transformer模型的編碼器部分構(gòu)成,編碼器層部分包括自注意力機(jī)制、前饋神經(jīng)網(wǎng)絡(luò)和殘差連接。其中,Mask LM是一種預(yù)訓(xùn)練任務(wù),用于獲取詞語級(jí)別的上下文依賴關(guān)系,其通過對(duì)輸入文本中的一部分Token進(jìn)行掩碼,然后讓模型去預(yù)測(cè)這些被遮蓋的部分。

2.4 Electra模型

Electra是一種用于自然語言處理任務(wù)的預(yù)訓(xùn)練模型,其構(gòu)建了一種稱為生成器-判別器(Generator-Discriminator)的架構(gòu)[30]。生成模型產(chǎn)生假的文本片段,而判別模型則試圖區(qū)分真實(shí)文本和生成的文本,這加強(qiáng)了模型對(duì)單詞之間相互關(guān)系的理解。另外,Electra在預(yù)訓(xùn)練過程中引入了“替代分類任務(wù)”,模型只需要計(jì)算被替換的詞的損失,而不是計(jì)算整個(gè)句子中所有詞的損失。這使得Electra在相同的計(jì)算資源下可以訓(xùn)練得更快,更適合在資源受限的環(huán)境中使用。具體流程如圖3所示。

圖3 Electra模型框架圖

2.5 TinyBERT

TinyBERT模型是一種輕量級(jí)的變種BERT模型,其采用了精細(xì)的剪枝和量化技術(shù),通常僅為4層或6層Transformer結(jié)構(gòu),因而在資源受限的環(huán)境中運(yùn)行更高效[31]。

如圖4所示,TinyBERT的訓(xùn)練過程通常分為兩個(gè)關(guān)鍵階段: 通用蒸餾和特定任務(wù)蒸餾。在通用蒸餾階段,TinyBERT的教師模型是大型的預(yù)訓(xùn)練模型,而學(xué)生模型(TinyBERT)在通用領(lǐng)域的語料庫(kù)上進(jìn)行蒸餾來模仿教師模型的行為。在特定任務(wù)蒸餾階段,使用微調(diào)過的BERT模型作為教師模型,隨后對(duì)增強(qiáng)任務(wù)數(shù)據(jù)集進(jìn)行蒸餾。

圖4 TinyBERT訓(xùn)練框架圖

2.6 動(dòng)態(tài)掩碼注意力機(jī)制

在自然語言處理任務(wù)中,輸入序列的長(zhǎng)度可能不一致,為了對(duì)齊序列,會(huì)在較短的序列中使用填充符號(hào)。當(dāng)數(shù)據(jù)量不斷增多時(shí),填充的無效信息也會(huì)變多,這會(huì)干擾模型的輸出結(jié)果。為了減少冗余信息的干擾,掩碼機(jī)制被用在了注意力計(jì)算中[32]。傳統(tǒng)的掩碼機(jī)制主要根據(jù)全局最大長(zhǎng)度(Global Max Length)來對(duì)文本數(shù)據(jù)進(jìn)行截?cái)嗷蛱畛洹_@種方法雖然易于實(shí)現(xiàn),但忽略了不同批次數(shù)據(jù)之間的區(qū)別,導(dǎo)致在文本填充時(shí)加入無效信息。

因此,本文構(gòu)建了一種動(dòng)態(tài)掩碼機(jī)制用于注意力計(jì)算過程,可以實(shí)現(xiàn)對(duì)無效位置的屏蔽,確保模型只關(guān)注有效的輸入信息,從而提升模型的準(zhǔn)確性和泛化能力。具體過程如下:

Step1:根據(jù)每個(gè)批次大小中的最大長(zhǎng)度(Batch Max Length)來截?cái)嗪吞畛湮谋尽鹘y(tǒng)的全局處理設(shè)置固定的全局最大長(zhǎng)度處理數(shù)據(jù),批次處理則根據(jù)不同Batch中的最大長(zhǎng)度處理數(shù)據(jù)。這樣做的目的是在整個(gè)訓(xùn)練過程中保留每個(gè)批次中原有文本的語義特征,而不添加多余的掩碼符號(hào)[PAD]。處理過程如圖5所示。

圖5 全局長(zhǎng)度處理與批次長(zhǎng)度處理

Step2:構(gòu)建掩碼矩陣,對(duì)不同批次的填充位置進(jìn)行掩碼。在進(jìn)行批次長(zhǎng)度大小截?cái)嗷蛱畛浜蟊憧色@得原始數(shù)據(jù)位置與填充位置。隨后,對(duì)原始數(shù)據(jù)的位置填充標(biāo)簽1,即原始位置數(shù)值保持不變。將填充位置上的數(shù)值變?yōu)樨?fù)無窮(-inf)。這是由于在注意力機(jī)制打分時(shí)采用 Softmax 函數(shù)分配注意力權(quán)重,填充位置上的數(shù)值越小,分配的注意力權(quán)重越小。Softmax函數(shù)計(jì)算如式(7)所示。

(7)

其中,xi為輸入序列x的第i個(gè)值,xj為數(shù)據(jù)x中除掉xi的其他序列,K為序列x的維度。

Step3:計(jì)算動(dòng)態(tài)掩碼注意力得分,注意力機(jī)制輸出的是原始數(shù)據(jù)與動(dòng)態(tài)掩碼矩陣的乘積,如圖6所示。

圖6 掩碼矩陣構(gòu)建

最終,動(dòng)態(tài)多頭注意力掩碼機(jī)制的整體計(jì)算如式(8)所示。

(8)

3 融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征的知識(shí)蒸餾

3.1 模型選擇

在知識(shí)蒸餾過程中,教師模型需要具有強(qiáng)大的性能和知識(shí)源,而學(xué)生模型通常具有相對(duì)輕量級(jí)的參數(shù)量。為此,我們選取RoBERTa-wwm-ext和Electra-base作為教師模型,選擇TinyBERT作為學(xué)生模型。具體模型的特點(diǎn)如表2所示。

表2 教師模型與學(xué)生模型

3.2 參數(shù)設(shè)置

本文提出了一種融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征知識(shí)蒸餾的策略。各蒸餾策略的主要參數(shù)設(shè)置如表3所示,其中,軟標(biāo)簽SL、軟輸出SO、硬輸出HO的計(jì)算公式見2.1節(jié)。

表3 蒸餾參數(shù)設(shè)置

在進(jìn)行最終輸出層的損失計(jì)算時(shí),選擇交叉熵?fù)p失作為損失函數(shù)衡量?jī)蓚€(gè)概率分布之間的差異,量化學(xué)生模型的預(yù)測(cè)分布與教師模型的軟標(biāo)簽之間的距離。這是由于當(dāng)學(xué)生模型的預(yù)測(cè)結(jié)果與教師模型的軟標(biāo)簽之間存在較大的差異時(shí),交叉熵?fù)p失會(huì)賦予這些差異較高的損失值,從而有效地引導(dǎo)學(xué)生模型更好地逼近教師模型的輸出[33]。其計(jì)算流程如式(9)所示。

(9)

其中,P(i)是真實(shí)概率分布P中第i個(gè)類別的概率,Q(i)是預(yù)測(cè)概率分布Q中第i個(gè)類別的概率。

另外,在進(jìn)行特征層、注意力層的損失計(jì)算時(shí),本文選用均方誤差(Mean Square Error,MSE)作為損失函數(shù)。MSE一般用來檢測(cè)模型的預(yù)測(cè)值和真實(shí)值之間的偏差,可以度量學(xué)生模型在特征層與教師模型之間的特征表示的相似性。

(10)

3.3 蒸餾過程構(gòu)建

經(jīng)過該蒸餾方法的學(xué)生模型具有以下優(yōu)勢(shì):

(1) 知識(shí)融合: 學(xué)生模型能夠從多個(gè)教師模型中提取并融合有用的知識(shí)。這種綜合性的知識(shí)傳遞有助于提高學(xué)生模型的泛化能力,使其能夠應(yīng)對(duì)多樣化的輸入數(shù)據(jù)。

(2) 多層次特征抽取: 教師模型的多個(gè)特征層對(duì)應(yīng)著不同層次的特征抽取。結(jié)合多個(gè)特征層可以提供豐富的特征表示,有助于學(xué)生模型更好地理解和捕捉輸入數(shù)據(jù)中的信息。

(3) 減少冗余信息干擾: 動(dòng)態(tài)掩碼注意力機(jī)制有助于減少模型學(xué)習(xí)不相關(guān)或冗余的知識(shí)。通過動(dòng)態(tài)屏蔽重要的信息,模型可以更高效地學(xué)習(xí)有效知識(shí),提高模型的效率和性能。

蒸餾運(yùn)行過程如圖7所示。

圖7 融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征的蒸餾

Step1: 數(shù)據(jù)輸入。數(shù)據(jù)同時(shí)傳入到RoBERTa (Teacher模型1)、Electra (Teacher模型2),TinyBERT (Student模型)訓(xùn)練。

Step2: 前向傳播計(jì)算特征層損失。對(duì)于每個(gè)教師模型與學(xué)生模型對(duì)應(yīng)的特征層,分別計(jì)算其特征層對(duì)應(yīng)的輸出損失。由于RoBERTa、Electra以及TinyBERT模型在結(jié)構(gòu)上具有很強(qiáng)的相似性,即教師模型RoBERTa、Electra均由12層Transformer結(jié)構(gòu)組成,學(xué)生模型TinyBERT由4層Transformer組成。因此,本文采用一種特征層相互對(duì)應(yīng)的知識(shí)蒸餾策略,即將教師模型的特定層與學(xué)生模型的對(duì)應(yīng)層進(jìn)行匹配。

具體蒸餾層數(shù)對(duì)應(yīng)如表4所示。由于在特征提取層最上端加入Embedding層,因此Embedding編號(hào)為0,特征層的對(duì)應(yīng)編號(hào)從1開始,模型共計(jì)M層(共計(jì)13層,包括Embedding層)。這種設(shè)置充分考慮了模型性能和模型復(fù)雜性之間的平衡。根據(jù)對(duì)應(yīng)的特征層設(shè)置,知識(shí)蒸餾過程中可以充分利用多個(gè)教師模型在不同特征層的知識(shí)。再者,將教師模型的所有特征層的知識(shí)都傳遞給學(xué)生模型,可能導(dǎo)致學(xué)生模型變得復(fù)雜,參數(shù)量變多,因此選擇將特定層的知識(shí)傳遞給對(duì)應(yīng)的學(xué)生模型層以保持模型的輕量級(jí)。

表4 特征層對(duì)應(yīng)的網(wǎng)絡(luò)層

由于TinyBERT模型的維度為312維,還需要引入線性變換向量使其與教師模型的維度保持相同。結(jié)合對(duì)應(yīng)特征層設(shè)置,蒸餾過程中特征層損失的計(jì)算如式(11)、式(12)所示。

其中,We為學(xué)生模型在Embedding層的線性變換向量,保證學(xué)生模型與多個(gè)教師模型的數(shù)據(jù)維度相同。同理,WS為學(xué)生模型在特征層的線性變換向量。

Step3: 前向傳播計(jì)算注意力損失。由于在不同特征層中引入了動(dòng)態(tài)掩碼注意力機(jī)制,因此在計(jì)算特征層的損失時(shí),還需考慮后續(xù)注意力損失的變化。其主要考慮不同教師模型與學(xué)生模型之間的注意力權(quán)重關(guān)系,其層數(shù)設(shè)置如表5所示。注意力損失的計(jì)算如式(13)所示。

表5 注意力層對(duì)應(yīng)的網(wǎng)絡(luò)層

Latt,i=MSE(ATim,ASm)

(13)

其中,動(dòng)態(tài)掩碼注意力機(jī)制階段不包含Embedding層,因此注意力層數(shù)的編號(hào)從0開始。

Step4: 特征融合和知識(shí)傳遞。使用注意力權(quán)重將不同教師模型的特征融合到學(xué)生模型中,得到學(xué)生模型的多層特征表示,并將結(jié)果傳遞至下一層網(wǎng)絡(luò)。

Step5: 計(jì)算最后一層的蒸餾損失。輸入數(shù)據(jù)在經(jīng)過兩個(gè)教師模型訓(xùn)練后,在最后一層網(wǎng)絡(luò)輸出不同的軟標(biāo)簽。同時(shí),輸入數(shù)據(jù)經(jīng)過學(xué)生模型在最后一層網(wǎng)絡(luò)后產(chǎn)生軟輸出。由于知識(shí)蒸餾過程中加入了新的教師模型,因此,知識(shí)蒸餾的輸出損失計(jì)算需要引入新加入的教師模型的蒸餾損失。

蒸餾損失(Lpre)由多個(gè)教師模型的軟標(biāo)簽與學(xué)生模型的軟輸出之間的損失(Lsoft)、學(xué)生模型的硬輸出與硬標(biāo)簽之間的損失(Lhard)組成。具體如式(14)~式(16)所示。

最終,整合特征層損失、注意力機(jī)制損失、最后一層的蒸餾損失,得到整個(gè)蒸餾過程的損失函數(shù)如下: 其中Llayer表示對(duì)應(yīng)蒸餾層的整體損失,Lmodel表示蒸餾過程的整體損失。

(18)

Step6: 反向傳播和參數(shù)更新。使用反向傳播算法來計(jì)算梯度,并根據(jù)梯度更新學(xué)生模型的參數(shù),以減小損失函數(shù)的值。

Step7: 循環(huán)訓(xùn)練。重復(fù)上述步驟多次,學(xué)生模型在不同層次和多個(gè)教師模型的指導(dǎo)下逐漸提升其性能,以確保經(jīng)過知識(shí)蒸餾后的學(xué)生模型性能達(dá)到最優(yōu)。

4 實(shí)驗(yàn)設(shè)置與結(jié)果分析

4.1 數(shù)據(jù)集和實(shí)驗(yàn)環(huán)境

本節(jié)實(shí)驗(yàn)采用的是Windows 10 64位操作系統(tǒng)。采用的處理器是AMD Ryzen 7 5800H,帶有Radeon Graphics,運(yùn)行速度為3.20 GHz。NVIDIA GeForce GTX 3 070為系統(tǒng)提供16 GB GPU加速內(nèi)存。

本文選取四種廣泛使用的文本分類數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),以此驗(yàn)證融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征知識(shí)蒸餾的文本分類效果。各數(shù)據(jù)集的詳細(xì)劃分信息如表6所示。

Weibo[34]: 帶情感標(biāo)注新浪微博,情感類別為兩類。評(píng)論數(shù)據(jù)總量為119 988條,正向評(píng)論59 993條,負(fù)向評(píng)論59 995條。數(shù)據(jù)集劃分按照6∶2∶2的比例處理為訓(xùn)練集、驗(yàn)證集及測(cè)試集。

Waimai: 外賣平臺(tái)收集的用戶評(píng)價(jià),評(píng)論分為積極、消極2個(gè)類別。評(píng)論總數(shù)為11 987條,積極評(píng)論為4 000條,消極評(píng)論為7 897條。數(shù)據(jù)集劃分按照6∶2∶2的比例處理為訓(xùn)練集、驗(yàn)證集及測(cè)試集。

今日頭條: 今日頭條應(yīng)用中抽取約38萬條新聞數(shù)據(jù),包括民生、文化、娛樂、體育、財(cái)經(jīng)、房產(chǎn)、汽車、教育、科技、軍事、旅游、國(guó)際、證券、農(nóng)業(yè)、電競(jìng)共15個(gè)類別。數(shù)據(jù)集劃分參照孫紅等人[35]對(duì)數(shù)據(jù)集的處理方法。

THUCNews[36]: 清華NLP組提供的THUCNews新聞文本分類數(shù)據(jù)集的子集,包含經(jīng)濟(jì)、房產(chǎn)、股票、教育、科學(xué)、社會(huì)、時(shí)政、體育、游戲、娛樂10種類別。

4.2 評(píng)價(jià)指標(biāo)設(shè)置

本文分別采用準(zhǔn)確率(Accuracy,ACC)、精確率(Precision,PRE)、召回率(Recall)和F1值作為對(duì)模型分類性能的評(píng)價(jià)指標(biāo)。其中TP(True Positive)為正確的正例;FN(False Negative)為錯(cuò)誤的反例;FP(False Positive)為錯(cuò)誤的正例;TN(True Negative)為正確的反例。

其中,準(zhǔn)確率(ACC)為所有預(yù)測(cè)中預(yù)測(cè)正確的比例;精確率(PRE)為正確預(yù)測(cè)為正的占全部預(yù)測(cè)為正的比例;召回率(Recall)為正確預(yù)測(cè)為正的占全部實(shí)際為正的比例;F1值是精確率和召回率的調(diào)和平均,為的是平衡準(zhǔn)確率和召回率的影響,較為全面地評(píng)價(jià)分類效果。

4.3 基準(zhǔn)模型的訓(xùn)練結(jié)果

本部分主要檢驗(yàn)在未開始進(jìn)行知識(shí)蒸餾前各基準(zhǔn)模型的性能,包括經(jīng)過Fine-tune后的教師模型以及經(jīng)過TinyBERT(通用蒸餾)的預(yù)測(cè)性能。主要使用四種數(shù)據(jù)集劃分的訓(xùn)練集、驗(yàn)證集。此階段主要包含教師模型訓(xùn)練以及對(duì)學(xué)生模型的通用蒸餾。

教師模型訓(xùn)練: 教師模型分別設(shè)為RoBERTa與Electra模型,在進(jìn)行知識(shí)蒸餾前需對(duì)這些模型加載預(yù)訓(xùn)練權(quán)重,然后在訓(xùn)練集上進(jìn)行Fine-tune處理,以保證Teacher模型性能達(dá)到最優(yōu)。

學(xué)生模型訓(xùn)練: 學(xué)生模型TinyBERT的整體蒸餾過程與傳統(tǒng)蒸餾策略有所區(qū)別,因?yàn)門inyBERT并不是根據(jù)訓(xùn)練好的教師模型在特定任務(wù)中直接蒸餾。相反,它采用了一種模仿教師模型訓(xùn)練過程的方法,這個(gè)蒸餾過程可以分為兩個(gè)關(guān)鍵步驟: 通用蒸餾和特定任務(wù)蒸餾。

(1) 通用蒸餾是模仿大型預(yù)訓(xùn)練模型在大規(guī)模語料庫(kù)進(jìn)行訓(xùn)練,其目標(biāo)是在不丟失語義理解能力的情況下將教師模型的通用知識(shí)傳遞給TinyBERT,從而得到一個(gè)基礎(chǔ)的學(xué)生模型。

(2) 特定任務(wù)蒸餾則是在特定的任務(wù)數(shù)據(jù)集上進(jìn)行分類訓(xùn)練,以適應(yīng)特定任務(wù)的需求。此過程使用的教師模型是在特定任務(wù)上經(jīng)過Fine-tune的預(yù)訓(xùn)練模型,并基于Fine-tune的教師模型進(jìn)行下一階段學(xué)生模型的知識(shí)蒸餾。

綜上,設(shè)置未蒸餾前基準(zhǔn)模型的初始的超參數(shù)如表7所示。

表7 知識(shí)蒸餾的超參數(shù)設(shè)置

最終,在經(jīng)過多輪周期性的訓(xùn)練后,各基準(zhǔn)模型成功地將損失值降至最小,以學(xué)生模型TinyBERT(通用蒸餾)在多個(gè)周期內(nèi)的損失變化為例,其在四種數(shù)據(jù)集上的損失值最終分別為4.371、5.143、4.126、7.382。學(xué)生模型在訓(xùn)練集上的損失變化如圖8所示。

圖8 未蒸餾前學(xué)生模型TinyBERT在訓(xùn)練集上的損失變化

這表明模型在大規(guī)模的數(shù)據(jù)集訓(xùn)練中取得了較小的損失值。此外,模型的損失誤差在更新過程中穩(wěn)步下降,沒有明顯的波動(dòng),表明模型在訓(xùn)練過程中具有出色的穩(wěn)定性。因此,我們的模型在訓(xùn)練集上展現(xiàn)出了出色的性能。

在訓(xùn)練集上經(jīng)過多輪訓(xùn)練后,RoBERTa (Fine-tune)、Electra (Fine-tune)、TinyBERT(通用蒸餾)作為基準(zhǔn)模型學(xué)習(xí)到通用的語義知識(shí)。隨后在各數(shù)據(jù)集的驗(yàn)證集上檢驗(yàn)訓(xùn)練效果,其在驗(yàn)證集對(duì)比實(shí)驗(yàn)中的各模型分類性能統(tǒng)計(jì)結(jié)果如表8所示。

表8 未蒸餾前基準(zhǔn)模型在驗(yàn)證集上的對(duì)比實(shí)驗(yàn) (單位: %,1M=1百萬)

由表8可得,教師模型RoBERTa、Electra在經(jīng)過Fine-tune后,均在四種數(shù)據(jù)集上取得了較優(yōu)的分類性能,而經(jīng)過通用蒸餾后的學(xué)生模型TinyBERT則在這個(gè)階段的預(yù)測(cè)性能較低。

具體而言,RoBERTa模型在四種數(shù)據(jù)集上的平均準(zhǔn)確率、平均F1值分別可達(dá)到84.87%、81.91%。Electra模型在四種數(shù)據(jù)集上的平均準(zhǔn)確率、平均F1值分別可達(dá)到84.12%、81.98%。深入分析可得,兩種教師模型在Weibo、Waimai數(shù)據(jù)集上的預(yù)測(cè)性能最高,RoBERTa模型在這兩種數(shù)據(jù)集上的準(zhǔn)確率分別可達(dá)到86.37%、85.21%。Electra模型同樣在這兩種數(shù)據(jù)集上的預(yù)測(cè)性能最高,分別為85.74%、86.31%。并且Waimai數(shù)據(jù)集的平均句子長(zhǎng)度要遠(yuǎn)遠(yuǎn)高于Weibo數(shù)據(jù)集,長(zhǎng)句子通常包含更多的冗余信息和文本噪聲,這會(huì)干擾模型對(duì)關(guān)鍵信息的識(shí)別和捕獲。但這對(duì)兩種教師模型產(chǎn)生的影響較小,相比于Weibo數(shù)據(jù)集,RoBERTa模型在Waimai數(shù)據(jù)集上的準(zhǔn)確率僅僅下降1.34%,而Electra模型的預(yù)測(cè)性能相對(duì)增加了0.66%。因此,較長(zhǎng)的文本長(zhǎng)度(40個(gè)詞左右)對(duì)兩種教師模型的預(yù)測(cè)性能影響較小,這也表明兩種教師模型在長(zhǎng)文本、短文本中的預(yù)測(cè)性能均較為穩(wěn)定。

隨后,兩種教師模型在THUCNews、今日頭條數(shù)據(jù)集中也取得了較優(yōu)異的性能,RoBERTa模型在這兩種數(shù)據(jù)集上的準(zhǔn)確率分別可達(dá)到83.35%、82.67%。同時(shí),Electra模型在這兩種數(shù)據(jù)集上也分別達(dá)到了較高的準(zhǔn)確率,分別為82.65%、81.77%。相比于前兩種數(shù)據(jù)集上的預(yù)測(cè)性能,兩種教師模型在THUCNews、今日頭條數(shù)據(jù)集上的表現(xiàn)均有所下滑。這是由于當(dāng)前的兩種數(shù)據(jù)集在分類類別上為10類、15類,遠(yuǎn)高于Weibo、Waimai數(shù)據(jù)集的類別。隨著分類類別的增多,模型需要更好地理解每個(gè)類別的特征和差異,不同類別之間的區(qū)分難度通常會(huì)增加。但總體而言,兩種教師模型在四種數(shù)據(jù)集上都具有較好的預(yù)測(cè)性能,并且在四種數(shù)據(jù)集上具有較高的魯棒性,為后續(xù)的知識(shí)蒸餾過程奠定了基礎(chǔ)。

最后,經(jīng)過通用蒸餾的學(xué)生模型TinyBERT表現(xiàn)出整體較低的預(yù)測(cè)性能,其平均準(zhǔn)確率為66.11%,平均F1值為64.67%。具體在四種數(shù)據(jù)集上的準(zhǔn)確率分別為69.37%、68.41%、63.92%、62.73%,F1值分別為68.60%、66.59%、62.28%、61.22%。盡管性能較差,但TinyBERT模型的參數(shù)量?jī)H為11M,僅占用教師模型的10.78%。這意味著雖然模型的性能目前不高,但其輕量級(jí)的特性為后續(xù)優(yōu)化和應(yīng)用提供了潛在的空間。

4.4 不同知識(shí)蒸餾策略的對(duì)比實(shí)驗(yàn)

本節(jié)對(duì)學(xué)生模型TinyBERT進(jìn)行特定任務(wù)蒸餾,為了更好地檢驗(yàn)本文提出的蒸餾策略的性能,我們還設(shè)置了另外三種基準(zhǔn)知識(shí)蒸餾策略,用于進(jìn)行消融試驗(yàn)。具體策略分別為:

① 蒸餾策略1:單教師單特征知識(shí)蒸餾策略

單教師單特征知識(shí)蒸餾是一種基本的知識(shí)傳遞技術(shù),其蒸餾過程主要考慮教師模型與學(xué)生模型在最后一層的輸出層之間的關(guān)系。(教師模型: RoBERTa)

② 蒸餾策略2:多教師單特征知識(shí)蒸餾[26]

多教師單特征知識(shí)蒸餾結(jié)合了多個(gè)教師模型的知識(shí)信息,但只傳遞最后一層的特征輸出給學(xué)生模型。由于其結(jié)合了多個(gè)教師模型的知識(shí),從而可以提供更豐富的信息,有助于提升學(xué)生模型的綜合性能。(教師模型: RoBERTa、Electra)

③ 蒸餾策略3:多教師多特征知識(shí)蒸餾[38]

多教師多特征知識(shí)蒸餾結(jié)合了多個(gè)教師模型的知識(shí),但不僅僅限于傳遞最后一層的特征輸出,而是結(jié)合了不同層的特征輸出,讓學(xué)生模型進(jìn)行學(xué)習(xí)。因此,教師模型從淺層到深層的特征表示都被傳遞給學(xué)生模型。(教師模型: RoBERTa、Electra,對(duì)應(yīng)特征層查閱3.3節(jié))

④ 蒸餾策略4:本文提出的蒸餾策略

融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征的知識(shí)蒸餾。該方法整合多個(gè)教師模型的強(qiáng)大語義能力,同時(shí)將多個(gè)教師模型的不同特征層的輸出與學(xué)生模型結(jié)合。并且,引入了動(dòng)態(tài)掩碼注意力機(jī)制來動(dòng)態(tài)地關(guān)注不同教師模型的特征知識(shí)。(教師模型: RoBERTa、Electra)

經(jīng)過多輪測(cè)試,學(xué)生模型TinyBERT在經(jīng)過知識(shí)蒸餾后,各蒸餾策略在測(cè)試集上的預(yù)測(cè)性能如表9 所示。

表9 各蒸餾策略在測(cè)試集上的對(duì)比實(shí)驗(yàn) (單位: %,1M=1百萬)

結(jié)合表8與表9可以直接看出,與教師模型的預(yù)測(cè)性能進(jìn)行比較,上述4種經(jīng)過蒸餾策略的 TinyBERT 模型的預(yù)測(cè)能力還是要較低于教師模型RoBERTa、Electra的預(yù)測(cè)性能,但其參數(shù)量?jī)H為11M,遠(yuǎn)遠(yuǎn)小于兩種教師模型。與通用蒸餾后的學(xué)生模型性能進(jìn)行比較,TinyBERT在經(jīng)過不同蒸餾策略后,其預(yù)測(cè)性能遠(yuǎn)高于通用蒸餾階段的模型性能。

具體而言,與表8中的通用蒸餾的學(xué)生性能相比,蒸餾策略1學(xué)習(xí)了單個(gè)教師模型最后一層的知識(shí)輸出,其在四種數(shù)據(jù)集上平均準(zhǔn)確率提升了7.56%,平均F1值相對(duì)增加了5.52%,模型的預(yù)測(cè)性能取得了較大幅度的提升。但此時(shí)學(xué)生模型的預(yù)測(cè)性能仍然較低,平均準(zhǔn)確率和平均F1值分別僅為71.12%、68.24%。隨后,蒸餾策略2引入了新的教師模型,這使得學(xué)生模型可以同時(shí)整合、學(xué)習(xí)兩種教師模型的知識(shí),并且學(xué)生模型可以更好地泛化到新領(lǐng)域或者不同類型的數(shù)據(jù)。因此,相對(duì)于蒸餾策略1,蒸餾策略2在四種數(shù)據(jù)集上的平均準(zhǔn)確率、平均F1值分別提升了3.91%,5.69%。由于蒸餾策略2主要關(guān)注兩種教師模型最后一層的知識(shí)輸出,而忽視了不同特征層之間的關(guān)聯(lián),因此提出了蒸餾策略3。蒸餾策略3不僅引入了多個(gè)教師模型,還關(guān)注了教師模型中不同特征層之間的知識(shí)變化,這一方面保證學(xué)生模型可以整合不同抽象層次的信息,挖掘從底層的特征到高層的語義信息。另一方面,考慮多個(gè)特征層可以增強(qiáng)學(xué)生模型的魯棒性。其預(yù)測(cè)性能相比于蒸餾策略2,平均準(zhǔn)確率、平均F1值分別增加5.45%,5.75%,增加的幅度也更加穩(wěn)定。

蒸餾策略4在四種蒸餾策略中表現(xiàn)出了最佳的預(yù)測(cè)性能,平均準(zhǔn)確率達(dá)到了81.32%,平均F1值達(dá)到了80.03%。這一結(jié)果歸功于蒸餾策略4的獨(dú)特優(yōu)勢(shì)。首先,蒸餾策略4綜合了多教師和多特征層次的知識(shí)源,從不同層次獲取信息,使得模型能夠更全面地理解和利用教師模型的知識(shí)。其次,蒸餾策略4引入了動(dòng)態(tài)掩碼注意力機(jī)制,該機(jī)制有助于模型聚焦在不同特征層的關(guān)鍵信息上,并減少了冗余信息的干擾,提高了模型的性能。與蒸餾策略3相比,蒸餾策略4在四種數(shù)據(jù)集上的表現(xiàn)明顯更出色,平均準(zhǔn)確率提高了4.35%,平均F1值增加了4.93%。這一結(jié)果進(jìn)一步驗(yàn)證了本文提出的融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征蒸餾策略的有效性。通過更好地整合多種知識(shí)源、多層次特征,關(guān)注關(guān)鍵信息,降低冗余干擾,蒸餾策略4為文本分類任務(wù)帶來了顯著的性能提升。

最后,我們還比較了蒸餾策略4與兩種教師模型RoBERTa、Electra的輸出結(jié)果。蒸餾策略4的預(yù)測(cè)性能相對(duì)于RoBERTa模型的平均準(zhǔn)確率僅下降4.18%,平均F1值僅下降2.30%。相對(duì)于Electra模型的預(yù)測(cè)性能,蒸餾策略4的平均準(zhǔn)確率僅下降3.33%,平均F1值僅下降2.38%。值得注意的是,此時(shí)學(xué)生模型的參數(shù)量卻遠(yuǎn)遠(yuǎn)小于兩種教師模型,其使用教師模型10.78%的參數(shù)量就獲得了略低于教師模型的預(yù)測(cè)性能。這表明學(xué)生模型以更加輕量級(jí)的模型大小取得了接近于教師模型的預(yù)測(cè)性能。

4.5 知識(shí)蒸餾過程中的時(shí)間延遲

知識(shí)蒸餾過程中的時(shí)間延遲是指在知識(shí)蒸餾過程中,教師模型的知識(shí)是逐漸傳遞給學(xué)生模型,而不是立即傳遞全部知識(shí)。因此,時(shí)間延遲策略允許逐步引入教師模型的知識(shí),以幫助學(xué)生模型逐漸改進(jìn)性能。

為此我們?cè)O(shè)置一種溫度提升策略來驗(yàn)證蒸餾過程中的時(shí)間延遲,即設(shè)置初始溫度為接近0的值,然后逐漸升高溫度,升溫間隔為0.5,直至達(dá)到最終的目標(biāo)溫度(T=3)。這將溫度變化轉(zhuǎn)變?yōu)閷?duì)應(yīng)的時(shí)間步數(shù),通過比較學(xué)生模型TinyBERT在不同時(shí)間步驟的性能,驗(yàn)證在時(shí)間推移下引入更多知識(shí)對(duì)輸出性能的影響。具體結(jié)果如圖9所示。

圖9 TinyBERT在不同溫度值下的預(yù)測(cè)準(zhǔn)確率

由圖9可知,隨著蒸餾過程中溫度的升高,學(xué)生模型TinyBERT整體的預(yù)測(cè)性能也在不斷提升。但在溫度較低時(shí),學(xué)生模型性能提升較小,直至溫度提升至2時(shí),預(yù)測(cè)準(zhǔn)確率發(fā)生了較大幅度提升。當(dāng)溫度提升至最佳溫度T=3時(shí),在四種數(shù)據(jù)集的準(zhǔn)確率達(dá)到最佳,相比于T=0.5時(shí)的準(zhǔn)確率,TinyBERT在最佳溫度時(shí)的準(zhǔn)確率在四種數(shù)據(jù)上相對(duì)提升14.26%、13.62%、10.77%、10.36%。

這表明雖然教師模型在每個(gè)時(shí)間步驟都會(huì)生成完整的概率分布,但教師模型和學(xué)生模型之間的知識(shí)傳遞是延遲的或分布在不同的時(shí)間步驟中。例如,本次蒸餾過程中的知識(shí)傳遞主要發(fā)生在溫度大于1.5之后。這是由于在蒸餾初始時(shí)溫度較低,此時(shí)教師模型的軟標(biāo)簽輸出的概率分布較為集中,因此帶有其他類別標(biāo)簽的知識(shí)較少。隨著時(shí)間推移,蒸餾溫度不斷提升,此時(shí)教師模型的輸出更加均勻,輸出結(jié)果引入了更多類別的知識(shí)信息,也讓學(xué)生模型逐漸獲取到更多知識(shí)。另外,結(jié)合表9中不同階段的蒸餾策略也可看出,蒸餾過程中的知識(shí)是逐漸被學(xué)生模型學(xué)習(xí)的,例如蒸餾策略2僅學(xué)習(xí)兩種教師模型最后一層的軟輸出,而當(dāng)蒸餾策略3引入中間層特征后,其學(xué)生模型的預(yù)測(cè)效果大幅度提升。

4.6 運(yùn)行時(shí)間對(duì)比實(shí)驗(yàn)

為了進(jìn)一步驗(yàn)證本文提出的蒸餾策略的輕量化程度,我們進(jìn)行了兩種教師模型(Fine-tune)與經(jīng)過蒸餾策略4(本文的蒸餾策略)后學(xué)生模型的運(yùn)行效率對(duì)比實(shí)驗(yàn)。在這部分實(shí)驗(yàn)中,我們主要檢驗(yàn)了教師模型RoBERTa、Electra以及學(xué)生模型TinyBERT(蒸餾策略4)在四種數(shù)據(jù)集的測(cè)試集上的運(yùn)行時(shí)間。實(shí)驗(yàn)結(jié)果如表10所示。

表10 教師模型與學(xué)生模型運(yùn)行時(shí)間的對(duì)比實(shí)驗(yàn) (單位: 秒/s,1M=1百萬)

根據(jù)表10可以清晰地看出,經(jīng)過蒸餾策略4的學(xué)生模型在四種不同數(shù)據(jù)集上都表現(xiàn)出最短的運(yùn)行時(shí)間。RoBERTa和Electra在四種數(shù)據(jù)集上的平均運(yùn)行時(shí)間分別為12.98s、12.50s,而TinyBERT的平均運(yùn)行時(shí)間僅為7.1s。其平均推理時(shí)間僅為兩種教師模型平均運(yùn)行時(shí)間的54.70%與56.80%。具體分析結(jié)果顯示,與RoBERTa和Electra模型相比,TinyBERT在Weibo、Waimai、THUCNews和今日頭條這四個(gè)數(shù)據(jù)集上的運(yùn)行時(shí)間分別減少了約42.76%和39.16%、46.34%和46.99%、49.12%和46.79%、44.44%和42.42%。總體來看,在經(jīng)過本文的蒸餾策略后,TinyBERT的運(yùn)行時(shí)間僅耗費(fèi)兩種教師模型1/2的運(yùn)行時(shí)間。因此,本文的蒸餾策略顯著提高了學(xué)生模型的運(yùn)行效率。

4.7 動(dòng)態(tài)掩碼注意力機(jī)制作用分析

在上述實(shí)驗(yàn)中,在引入動(dòng)態(tài)掩碼注意力機(jī)制后,學(xué)生模型的預(yù)測(cè)性能取得了明顯提升。為了理解動(dòng)態(tài)掩碼注意力機(jī)制的工作原理及其對(duì)模型性能的影響,本節(jié)繪制了經(jīng)過知識(shí)蒸餾后的學(xué)生模型TinyBERT對(duì)應(yīng)層的注意力得分熱度圖,以深入了解TinyBERT模型在不同層次和頭部的注意力分布。

由于TinyBERT的結(jié)構(gòu)包括4個(gè)Transformer層,每層又包含12個(gè)注意力頭。因此,注意力得分的輸出具有四維形狀,分別為批次大小、句子長(zhǎng)度、注意力層數(shù)、注意力頭數(shù)。以輸入文本數(shù)據(jù)“我今天吃了火鍋,非常高興”為例,在添加通用的[CLS]和[SEP]符號(hào)后,模型的輸出注意力分?jǐn)?shù)的維度為(1, 14, 4, 12)。具體的注意力熱度圖如圖10、圖11 所示,其中每一行代表每一層的注意力得分,每一列代表每個(gè)注意力頭的得分。在熱度圖中,顏色越亮,表示兩個(gè)字符之間的相關(guān)性越高。

圖10 TinyBERT在所有特征層的注意力熱度圖

圖11 TinyBERT在第一層特征層的注意力熱度圖

一方面,從圖10中可以看出,在四層的注意力得分中,許多字符與[SEP]的關(guān)聯(lián)性較高,這意味著動(dòng)態(tài)掩碼注意力機(jī)制用[SEP]向量表達(dá)了句子中的部分字符特征,而句子的結(jié)尾通常包含對(duì)句子總結(jié)或結(jié)論的關(guān)鍵信息。同時(shí)也表明,動(dòng)態(tài)掩碼注意力機(jī)制使得模型關(guān)注于句子的末尾部分,這使得模型在處理文本數(shù)據(jù)時(shí)可以理解從頭部到尾部的文本含義。并且,[SEP]符號(hào)是句子的結(jié)束標(biāo)志,因此模型可能會(huì)將其視為句子的邊界,以便正確處理單句任務(wù),這說明模型具備正確識(shí)別句子結(jié)束的能力。

另一方面,從圖11中可以看出,每個(gè)字符不僅與其自身的相關(guān)性最高,而且與其前后的不同字符也有一定程度的相關(guān)性。例如,“今天”和“吃”、“吃”和“火鍋”等都具有較高的相關(guān)性。這表明在引入動(dòng)態(tài)掩碼注意力機(jī)制后,模型可以同時(shí)關(guān)注一個(gè)單詞與其周圍的單詞之間的關(guān)系,從而更好地捕捉上下文中的語義關(guān)系。

結(jié)合上述動(dòng)態(tài)掩碼注意力機(jī)制對(duì)關(guān)鍵信息的打分優(yōu)勢(shì),經(jīng)過本文知識(shí)蒸餾后的學(xué)生模型TinyBERT可以關(guān)注文本數(shù)據(jù)的尾部關(guān)鍵信息與上下文相關(guān)信息,因而保證模型取得了最優(yōu)的預(yù)測(cè)性能。

5 結(jié)論

隨著深度學(xué)習(xí)的不斷發(fā)展,模型的規(guī)模和參數(shù)數(shù)量也不斷膨脹,這導(dǎo)致在訓(xùn)練和推理階段需要更多的計(jì)算資源和耗費(fèi)時(shí)間。本文提出了一種融合動(dòng)態(tài)掩碼注意力機(jī)制與多教師多特征的知識(shí)蒸餾方法,通過在四種數(shù)據(jù)集上的廣泛實(shí)驗(yàn),驗(yàn)證了這一方法的性能與效率,并得出以下關(guān)鍵結(jié)論:

(1) 本文提出的蒸餾方法不僅引入多種教師模型,同時(shí)還兼顧不同教師模型的多個(gè)特征層。通過融合多種教師的性能與多層特征的語義表示,經(jīng)過本文蒸餾策略的學(xué)生模型在四種數(shù)據(jù)集上均取得了最佳預(yù)測(cè)性能,平均準(zhǔn)確率與平均F1值可達(dá)到81.32%、80.03%。

(2) 經(jīng)過蒸餾后的學(xué)生模型不僅在四種數(shù)據(jù)集上的性能達(dá)到最優(yōu),其僅采用教師模型10.78%的參數(shù)量就取得略低于教師模型的預(yù)測(cè)結(jié)果。同時(shí),學(xué)生模型具有更高的運(yùn)行效率,其平均推理時(shí)間僅為兩種教師模型平均運(yùn)行時(shí)間的54.70%與56.80%。

(3) 本研究還提出一種動(dòng)態(tài)掩碼注意力機(jī)制作用于整個(gè)知識(shí)蒸餾過程,用于關(guān)注不同特征層上的有效信息,忽視無效信息的干擾。實(shí)驗(yàn)結(jié)果表明,加入動(dòng)態(tài)掩碼注意力機(jī)制后,學(xué)生模型在四種數(shù)據(jù)集上的平均準(zhǔn)確率與平均F1值分別提高4.35%與4.93%。此外,由注意力得分熱度圖可得,該機(jī)制使得模型更加關(guān)注數(shù)據(jù)的尾部關(guān)鍵信息與上下文信息。

在后續(xù)研究中,我們將嘗試引入多模態(tài)的方法與數(shù)據(jù),構(gòu)造基于多教師多特征多模態(tài)形式的知識(shí)蒸餾策略,以保證模型適用于多元化數(shù)據(jù)。

猜你喜歡
特征文本模型
一半模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
如何表達(dá)“特征”
在808DA上文本顯示的改善
不忠誠(chéng)的四個(gè)特征
基于doc2vec和TF-IDF的相似文本識(shí)別
電子制作(2018年18期)2018-11-14 01:48:06
抓住特征巧觀察
3D打印中的模型分割與打包
文本之中·文本之外·文本之上——童話故事《坐井觀天》的教學(xué)隱喻
主站蜘蛛池模板: 久久久久亚洲AV成人网站软件| 日韩第九页| 五月综合色婷婷| 无码专区国产精品一区| yjizz视频最新网站在线| 国产成人精品高清不卡在线| 成人在线观看一区| 2020国产精品视频| 久久国产精品夜色| 日本精品影院| 免费高清自慰一区二区三区| 欧美一区福利| 亚洲三级电影在线播放| 国产XXXX做受性欧美88| 欧美亚洲一区二区三区在线| 亚洲视频免费在线看| 亚洲欧洲免费视频| 日本日韩欧美| 九色综合伊人久久富二代| 在线观看免费国产| 日本成人一区| 99精品国产高清一区二区| 亚洲欧美激情小说另类| 91精品最新国内在线播放| 国产美女一级毛片| 国产乱人伦AV在线A| jizz在线观看| 亚洲日韩久久综合中文字幕| 国产情侣一区二区三区| 四虎AV麻豆| 真人高潮娇喘嗯啊在线观看| 91福利免费视频| 中文字幕资源站| 亚洲精品国产综合99| 中文字幕在线观看日本| 日韩高清在线观看不卡一区二区 | 九色91在线视频| 国产精品免费入口视频| 国内精品九九久久久精品| 99精品视频在线观看免费播放| 国产在线一区视频| www.国产福利| 91偷拍一区| 国产乱码精品一区二区三区中文| 啪啪啪亚洲无码| 国产麻豆91网在线看| 欧美日韩成人在线观看| 国产主播在线一区| 色综合天天操| 亚洲色偷偷偷鲁综合| 97视频精品全国在线观看| 国产在线观看91精品| 亚洲av日韩av制服丝袜| 五月天在线网站| 小说区 亚洲 自拍 另类| 中文字幕亚洲电影| 国产成人在线无码免费视频| 日本一本在线视频| 香蕉伊思人视频| 人妻丰满熟妇av五码区| 久久大香伊蕉在人线观看热2| 情侣午夜国产在线一区无码| 日韩欧美国产精品| 欧美日本不卡| 黄色网站不卡无码| 国产剧情无码视频在线观看| 国产无遮挡猛进猛出免费软件| 国产成人精品无码一区二| 一级黄色片网| 女人18毛片久久| 久久人体视频| 九九热在线视频| 国产福利一区二区在线观看| 亚洲激情区| 夜精品a一区二区三区| 国产成人夜色91| 日本在线免费网站| 91精品视频在线播放| 日韩欧美国产成人| 园内精品自拍视频在线播放| 久久这里只有精品8| 国产极品嫩模在线观看91|