• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于自蒸餾與自集成的問答模型

      2024-02-18 07:05:43王同結(jié)李燁
      關(guān)鍵詞:集成學(xué)習(xí)

      王同結(jié) 李燁

      摘 要:知識蒸餾結(jié)合預(yù)訓(xùn)練語言模型是構(gòu)建問答模型的主要方法之一,然而,這類方法存在知識轉(zhuǎn)移效率低下、訓(xùn)練教師模型耗時(shí)嚴(yán)重、教師模型和學(xué)生模型能力不匹配等問題。針對上述問題,提出了一種基于自蒸餾與自集成的問答模型SD-SE-BERT。其中:自集成基于滑窗機(jī)制設(shè)計(jì);學(xué)生模型采用BERT;教師模型由訓(xùn)練過程中得到的若干學(xué)生模型基于其驗(yàn)證集性能進(jìn)行加權(quán)平均組合得到;損失函數(shù)利用集成后的輸出結(jié)果和真實(shí)標(biāo)簽指導(dǎo)當(dāng)前輪次的學(xué)生模型進(jìn)行訓(xùn)練。在SQuAD1.1數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果表明,SD-SE-BERT的EM指標(biāo)和F1指標(biāo)相比較BERT模型分別提高7.5和4.9,并且模型性能優(yōu)于其他代表性的單模型和蒸餾模型;相較于大型語言模型ChatGLM-6B的微調(diào)結(jié)果,EM指標(biāo)提高4.5,F(xiàn)1指標(biāo)提高2.5。證明SD-SE-BERT可以利用模型自身的監(jiān)督信息來提高模型組合不同文本數(shù)據(jù)特征的能力,無須訓(xùn)練復(fù)雜的教師模型,避免了教師模型與學(xué)生模型不匹配的問題。

      關(guān)鍵詞:問答模型;知識蒸餾;集成學(xué)習(xí);BERT

      中圖分類號:TP391.1?? 文獻(xiàn)標(biāo)志碼:A?? 文章編號:1001-3695(2024)01-032-0212-05

      doi:10.19734/j.issn.1001-3695.2023.05.0281

      Question answering model based on self-distillation and self-ensemble

      Abstract:Knowledge distillation combined with pre-trained language models is one of the primary methods for constructing question-answering models.However,these methods suffer from inefficiencies in knowledge transfer,time-consuming teacher model training,and mismatched capabilities between teacher and student models.To address these issues,this paper proposed a question-answering model based on self-distillation and self-ensemble,named SD-SE-BERT.The self-ensemble mechanism was designed based on a sliding window;the student model used BERT;the teacher model was derived from a weighted average combination of several student models during the training process,based on their performance on the validation set.The loss function used the output of the ensemble and the true labels to guide the training of the student model in the current round.Experimental results on the SQuAD1.1 dataset show that the EM and F1 scores of SD-SE-BERT are respectively 7.5 and 4.9 higher than those of the BERT model,and the models performance surpasses other representative single models and distillation models.Compared to the fine-tuning results of the large-scale language model ChatGLM-6B,the EM score was improved by 4.5,and the F1 score by 2.5.It proves that SD-SE-BERT can leverage the models supervision information to enhance the models capacity to combine different text data features,eliminating the need for complex teacher-model training and avoiding the problem of mismatch between teacher and student models.

      Key words:question answering model;knowledge distillation;ensemble learning;BERT

      0 引言

      問答模型是自然語言處理中的熱點(diǎn)研究領(lǐng)域。該任務(wù)的價(jià)值在于利用計(jì)算機(jī)幫助人類在大量文本中快速找到準(zhǔn)確答案,從而減輕信息獲取的成本[1],具有多樣的落地場景。閱讀理解任務(wù)中的跨度提取任務(wù)[2~4]的目標(biāo)是從段落中預(yù)測出包含答案范圍的跨度。由于其答案形式不局限于個(gè)別單詞、數(shù)據(jù)集構(gòu)建成本小且評估指標(biāo)明確,利于測試機(jī)器對文本的理解。

      目前,微調(diào)訓(xùn)練語言模型是解決此類任務(wù)的主要方法[5],其中最出名的預(yù)訓(xùn)練語言模型是Devlin等人[6]提出的BERT(bidirectional encoder representations from Transformers)。由于BERT采用MLM(masked language model)和NSP(next sentence prediction)這兩種預(yù)訓(xùn)練任務(wù),可以學(xué)習(xí)到更加全面和豐富的語言表示,提高下游任務(wù)的性能。其在問答數(shù)據(jù)集SQuAD1.1[7]上的表現(xiàn)一舉超越了之前所發(fā)布的模型,成為自然語言處理領(lǐng)域的重要里程碑。Liu等人[8]在BERT的基礎(chǔ)上構(gòu)建了RoBERTa(robustly optimized BERT pretraining approach),在訓(xùn)練過程中加載更多的文本數(shù)據(jù),使用動(dòng)態(tài)掩蓋(dynamic mas-king)策略隨機(jī)掩蓋短語或句子,能更好地學(xué)習(xí)到單詞的上下文信息,在SQuAD1.1數(shù)據(jù)集上取得當(dāng)時(shí)的最好結(jié)果。許多研究者注意到為語言模型新增加預(yù)訓(xùn)練任務(wù)可以有效提高模型性能,2022年Yasunaga等人[9]為原始BERT模型增加文檔關(guān)系預(yù)測的預(yù)訓(xùn)練任務(wù)。以學(xué)習(xí)跨問題的依賴關(guān)系,在問答數(shù)據(jù)集HotpotQA和TriviaQA上的性能相比BERT提高了5%。一些研究者按照使用更多種預(yù)訓(xùn)練任務(wù)和更大量級的訓(xùn)練數(shù)據(jù)的思路,推出了大型語言模型(large language models),例如Chat-GPT[10]、訊飛星火、ChatGLM[11]等。這些大語言模型在人機(jī)對話以及其他NLP領(lǐng)域上迅速占據(jù)了統(tǒng)治地位。大語言模型的參數(shù)量和所采用的數(shù)據(jù)量十分驚人,比如ChatGPT的參數(shù)量高達(dá)1 750億,采用的訓(xùn)練數(shù)據(jù)為45 TB,且仍在快速增長,總算力消耗約為3 640 PF-days。然而,部分研究者認(rèn)為大模型的能力可能被高估,如文獻(xiàn)[12]通過分析大型語言模型Codex證明,如果將任務(wù)目標(biāo)替換,Codex的性能會(huì)大幅度下降,這表明大型語言模型的性能可能依賴于對訓(xùn)練語料的記憶。文獻(xiàn)[13]通過在自制數(shù)據(jù)集上精調(diào)7B的LLaMA,在BIG-bench算數(shù)任務(wù)上取得和GPT-4相當(dāng)?shù)谋憩F(xiàn),證明在特定任務(wù)上微調(diào)預(yù)訓(xùn)練語言模型的訓(xùn)練方式依然有效,但會(huì)犧牲模型的通用性。

      限制預(yù)訓(xùn)練模型應(yīng)用范圍的關(guān)鍵問題是模型的泛化性和復(fù)雜度[14]。引入集成學(xué)習(xí)是提高模型泛化性能的有效途徑,例如Pranesh等人[15]通過集成多個(gè)BERT變體模型的前K個(gè)跨度預(yù)測,來確定最佳答案。這類方法的主要缺點(diǎn)是基礎(chǔ)模型需要分別訓(xùn)練,導(dǎo)致訓(xùn)練成本過高,且集成后的模型的參數(shù)量龐大,難以在資源有限的環(huán)境中部署[16],因此,將大型模型與模型壓縮技術(shù)相結(jié)合成為了研究熱點(diǎn)。文獻(xiàn)[17]通過Transformer distillation方法,使得BERT中具有的語言知識可以遷移到TinyBERT中,并設(shè)計(jì)了一種兩階段學(xué)習(xí)框架,在預(yù)訓(xùn)練階段和微調(diào)階段都進(jìn)行蒸餾,確保TinyBERT可以從BERT充分學(xué)習(xí)到一般領(lǐng)域和特定任務(wù)兩部分的知識。Yang等人[18]提出兩階段多教師知識蒸餾,預(yù)訓(xùn)練語言模型在下游任務(wù)上微調(diào)的同時(shí)能夠從多個(gè)教師模型當(dāng)中學(xué)習(xí)知識,緩解單個(gè)教師模型的過擬合偏置問題,在教師模型的選擇一般采用固定權(quán)重或者隨機(jī)選擇某一個(gè)教師模型。Yuan等人[19]提出了一種動(dòng)態(tài)選擇教師模型的知識蒸餾方法,其基本假設(shè)是,由于訓(xùn)練樣本的復(fù)雜性以及學(xué)生模型能力的差異,從教師模型中進(jìn)行差異化學(xué)習(xí)可以提高學(xué)生模型的蒸餾性能。

      知識蒸餾方法存在教師模型和學(xué)生模型不匹配導(dǎo)致知識轉(zhuǎn)移效率低下問題[20,21],使得學(xué)生無法有效學(xué)習(xí)教師的表征,在推理期間相對教師模型會(huì)出現(xiàn)不同程度的性能下降[22]。自蒸餾是一種比較特殊的蒸餾模式,其利用訓(xùn)練到一定階段的模型作為教師模型來提供蒸餾監(jiān)督信號。在模型訓(xùn)練前期按正常方式訓(xùn)練,訓(xùn)練到指定輪數(shù)后將此刻的模型作為教師模型,指導(dǎo)后續(xù)的學(xué)生模型訓(xùn)練。Yang等人[23]截取ResNets訓(xùn)練過程中的前幾輪作為教師模型對后續(xù)訓(xùn)練進(jìn)行知識蒸餾,在圖像分類數(shù)據(jù)集CIFAR100和ILSVRC2012上取得了較好結(jié)果。

      針對上述問題,設(shè)計(jì)了一種基于自集成與自蒸餾的問答模型SD-SE-BERT(self-distillation and self-ensemble BERT),將訓(xùn)練過程中各次迭代得到的學(xué)生模型集成起來作為教師模型,指導(dǎo)下一輪學(xué)生模型的學(xué)習(xí)。模型內(nèi)容具體包括:設(shè)計(jì)一種基于加權(quán)平均的集成策略,并引入自蒸餾思想,將集成和自蒸餾結(jié)合;改進(jìn)了一種數(shù)據(jù)增強(qiáng)模塊,并設(shè)計(jì)出基于歸并排序的答案輸出模塊。在問答數(shù)據(jù)集SQuAD1.1上進(jìn)行實(shí)驗(yàn),SD-SE-BERT在F1和EM指標(biāo)上優(yōu)于目前的問答模型。所提方法主要貢獻(xiàn)為:a)將自集成與自蒸餾相結(jié)合,引入到跨度提取任務(wù)中,使得問答模型在每輪訓(xùn)練中學(xué)習(xí)到的知識得到及時(shí)傳遞,利用了模型本身提供的監(jiān)督信息,有利于捕獲和組合不同的文本數(shù)據(jù)特征以提高整體的預(yù)測能力;b)設(shè)計(jì)了以F1和EM(exa-ct match)的加權(quán)和作為權(quán)重的加權(quán)平均自集成策略。由于不需要預(yù)先訓(xùn)練出復(fù)雜的教師模型,避免了教師模型與學(xué)生模型不匹配的問題。而學(xué)生模型的結(jié)構(gòu)和容量可以根據(jù)應(yīng)用場景來確定;c)改進(jìn)了EDA(easy data augmentation techniques)[24]數(shù)據(jù)增強(qiáng)技術(shù),以此提供適量的噪聲、并增加文本多樣性,減輕模型對固定樣本的過擬合。設(shè)計(jì)基于歸并排序的答案輸出模塊,降低輸出答案過程的復(fù)雜度。

      1 提出的方法

      方法的流程框架如圖1所示,由數(shù)據(jù)增強(qiáng)模塊、自集成、自蒸餾、答案跨度輸出四個(gè)部分構(gòu)成。首先利用數(shù)據(jù)增強(qiáng)技術(shù)對樣本進(jìn)行擴(kuò)充,在訓(xùn)練中按批提供給BERT模型。自集成基于滑窗機(jī)制設(shè)計(jì),窗口中包含相對當(dāng)前輪次的前K輪訓(xùn)練得到的學(xué)生模型。將K個(gè)學(xué)生模型基于其各自的驗(yàn)證集性能,采用加權(quán)平均的方法進(jìn)行集成,集成的預(yù)測輸出與真實(shí)標(biāo)簽提供給當(dāng)前輪次訓(xùn)練的學(xué)生模型進(jìn)行學(xué)習(xí)。最后,依據(jù)最終的學(xué)生模型的預(yù)測結(jié)果輸出答案候選項(xiàng)。

      1.1 數(shù)據(jù)增強(qiáng)模塊

      數(shù)據(jù)增強(qiáng)模塊實(shí)現(xiàn)將樣本擴(kuò)充,在訓(xùn)練中按批提供給BERT,其是對EDA技術(shù)的一種改進(jìn)實(shí)現(xiàn)。考慮到數(shù)據(jù)集中文本長度參差不齊的特性,模型的輸入端添加改進(jìn)的EDA進(jìn)行數(shù)據(jù)增強(qiáng)操作。具體改進(jìn)為,對樣本中段落長度超出輸入序列最大長度max_seq_length的上下文段落進(jìn)行截?cái)?。為避免遍歷尋找和比較最長文本的操作,統(tǒng)一將句子長度與max_seq_length比較得出EDA四種操作的概率。其次,由于跨度提取任務(wù)的樣本標(biāo)簽(答案)是從問題文本中抽取的一段跨度文本,數(shù)據(jù)增強(qiáng)操作中,段落文本和答案文本需要同步更改。改進(jìn)EDA后,訓(xùn)練集中的文本通過數(shù)據(jù)增強(qiáng)模塊隨機(jī)選擇數(shù)據(jù)集中句子,按預(yù)設(shè)概率選擇單詞數(shù)量,執(zhí)行以下增強(qiáng)操作:

      a)同義詞替換:從段落文本中隨機(jī)選擇n個(gè)不是stop word的單詞。從總詞匯表中隨機(jī)選擇這些單詞的任意同義詞進(jìn)行替換。如果被替換掉的單詞在答案文本出現(xiàn),保持一致,替換相同同義詞。

      b)隨機(jī)插入:從句子中隨機(jī)選擇n個(gè)不是停頓詞的單詞后,從總詞匯表中隨機(jī)選擇這些單詞的任意同義詞,插入句子中的隨機(jī)位置。

      c)隨機(jī)交換:隨機(jī)選擇句子中的兩個(gè)單詞并交換它們的位置,選擇n次。

      d)隨機(jī)刪除:隨機(jī)刪除句子中的n個(gè)單詞。

      1.2 自集成

      首先,將BERT最后一層的輸出結(jié)果進(jìn)行softmax運(yùn)算,得到段落中每個(gè)位置作為答案開始或結(jié)束的概率。

      Pstart=softmax(W1,Jp),Pend=softmax(W2,Jp)(2)

      其中:W1和W2是可以被訓(xùn)練的參數(shù)矩陣,Jp是BERT最后一層的輸出結(jié)果,Pstart和Pend是段落中詞向量分別作為答案的起始位置的概率。假設(shè)當(dāng)前訓(xùn)練輪次為t,窗口大小設(shè)置為K,相對當(dāng)前輪次t的前K輪模型為BERTK={BERTt-K ,BERTt-k ,…,BERTt-1},假設(shè)樣本段落詞序列為Xi=[x1,x2,…,xn]。BERTK預(yù)測此序列中詞向量為開始位置的概率矩陣PKstart為

      其中:PKstart的每一行為第t-k輪得到的BERT模型預(yù)測Xi各詞向量為開始位置的概率序列。記錄窗口內(nèi)的K個(gè)歷史模型的性能指標(biāo),針對跨度提取任務(wù)性能指標(biāo)是EM與F1,得到EMK={EMt-K , EMt-k ,…, EMt-1}與F1K={F1t-K , F1t-k ,…, F1t-1}。使用EM和F1指標(biāo)的加權(quán)和Acc代表模型的性能。

      其中:a和b為權(quán)重系數(shù),Z為歸一化因子。由此得到前K輪模型輸出在結(jié)果集成中的權(quán)重。在第t輪訓(xùn)練時(shí),將PKstart與指標(biāo)加權(quán)和AccK矩陣進(jìn)行哈達(dá)瑪運(yùn)算。

      其中:PS(X)為前t-K輪的K個(gè)BERT模型預(yù)測段落詞序列Xi中所有詞向量為開始位置的加權(quán)平均概率值序列。同理,可以得到前t-K輪BERT模型預(yù)測段落詞序列X中所有詞向量為結(jié)束位置的加權(quán)平均概率值序列PE(X)。

      1.3 自蒸餾

      在跨度提取類型的問答任務(wù)中,假設(shè)C是上下文段落,Q是問題,而A是段落中存在的答案,問答模型的目的是對概率分布p(A|C,Q)進(jìn)行建模。通常將p(A|C,Q)拆開為預(yù)測答案在段落中的開始位置n與結(jié)束位置m。

      p(A|C,Q;θ)=pstart(n)pend(m|n)(7)

      其中:p(C|P,Q;θ)表示模型的輸出分布;pstart(n)和pend(m|n)分別為pstart(n|C,Q;θ)和pend(m|n,P,Q;θ)的簡寫,表示模型對答案開始和結(jié)束位置的輸出分布;θ表示模型參數(shù)。使用交叉熵?fù)p失函數(shù)最小化答案開始位置n和結(jié)束位置m的概率之和。

      其中:ystart和yend分別是答案開始和結(jié)束位置的真實(shí)標(biāo)簽;ystartn表示ystart中的第n個(gè)標(biāo)簽具體的值;lp表示上下文段落C的長度,且n≤m,表示答案的開始位置總在結(jié)束位置之前。

      知識蒸餾由教師模型T、學(xué)生模型S和損失函數(shù)組成。在數(shù)據(jù)集中通過最小化交叉熵?fù)p失函數(shù)讓學(xué)生模型從數(shù)據(jù)中學(xué)習(xí),并使用教師模型的輸出概率分布pT代替真實(shí)標(biāo)簽,如下:

      其中:α和β是softmax函數(shù)之前的預(yù)測概率,τ是溫度系數(shù)。通過讓學(xué)生模型學(xué)習(xí)教師模型的輸出分布,可以將教師的知識遷移到學(xué)生模型,從而提高學(xué)生模型的精度與泛化能力。學(xué)生模型通過結(jié)合上述兩種損失函數(shù)來進(jìn)行訓(xùn)練。

      L(θS)=LCE(θS)+λLKD(θS)(11)

      其中: λ是自蒸餾損失函數(shù)權(quán)重。在自蒸餾的具體運(yùn)用上借鑒多教師知識蒸餾[17]方法,采用批處理的方式,對于每一批樣本,依據(jù)該輪次中模型的性能,調(diào)整其輸出在集成中的權(quán)重,該權(quán)重稱為可信程度。使用self-ensemble BERT模型作為教師模型,將模型結(jié)果集成的輸出分布替代真實(shí)標(biāo)簽。當(dāng)前輪次的模型作為學(xué)生模型,基于聯(lián)合損失函數(shù)進(jìn)行訓(xùn)練。

      具體而言,當(dāng)訓(xùn)練輪次tK時(shí),教師模型self-ensemble BERT的輸出是相對當(dāng)前輪次t的前K輪BERT模型的加權(quán)集成,即PS(X)和PE(X)。定義當(dāng)前輪次t時(shí)的模型Bert(x,θt)為學(xué)生模型,利用教師模型預(yù)測的答案開始位置輸出分布PS(X)和結(jié)束位置分布PE(X)替換真實(shí)標(biāo)簽ystartn和yendm。

      關(guān)于答案開始位置的預(yù)測概率分布。在訓(xùn)練的每個(gè)輪次,當(dāng)前的Bert(x,θt)模型從樣本標(biāo)簽和self-ensemble BERT模型的輸出分布中學(xué)習(xí)??偟膿p失函數(shù)定義為

      其中: λ是損失函數(shù)權(quán)重,η是正則項(xiàng)調(diào)節(jié)參數(shù)。在訓(xùn)練前期準(zhǔn)確率不高的情況下 λ取較小值,交叉熵?fù)p失LCE起到主導(dǎo)作用;隨著訓(xùn)練的進(jìn)行,集成的性能不斷提升, λ的取值相應(yīng)不斷增加。正則化項(xiàng)可減少網(wǎng)絡(luò)對噪聲的敏感性,提高模型的泛化能力。

      1.4 答案跨度輸出

      答案跨度輸出模塊的作用是分別預(yù)測每個(gè)位置是答案的開始和結(jié)束的概率。訓(xùn)練損失為預(yù)測分布中的開始位置和結(jié)束位置的負(fù)對數(shù)概率之和,對所有輸入樣本進(jìn)行平均并使其最小化:

      其中:θ是模型中所有可訓(xùn)練權(quán)重的集合;N是數(shù)據(jù)集中的樣本數(shù)量;ysi和yei分別是第i條的真實(shí)開始和結(jié)束索引;pK表示向量p的第k個(gè)值。按照語義規(guī)則使用歸并排序輸出概率之和最大的跨度位置。具體而言:

      a)對于長度為n的等長序列PS(X)和PE(X),分別計(jì)算它們的前綴和,得到兩個(gè)數(shù)組P和Q,其中P[i]表示P中前i個(gè)元素的和,Q[j]表示Q中前j個(gè)元素的和。

      b)定義一個(gè)元素為(pair,s)的數(shù)據(jù)結(jié)構(gòu),其中pair表示PS(X)和PE(X)中的元素下標(biāo)對,s表示對應(yīng)的j和。對于所有的pair,按照它們的和s降序排序,存儲(chǔ)在一個(gè)大小為n2的數(shù)組C中。

      c)對于數(shù)組C中的元素,依次檢查它們對應(yīng)的pair是否滿足以下條件:

      (a)越界條件A:

      pair[0]

      (b)語義條件B:

      pair[0]

      (c)更新條件C:

      [pair[0]]+Q[pair[1]]≥P[pair[0]-1]+Q[pair[1]-1](18)

      如果滿足條件A和B、C,則將該元素的pair添加到結(jié)果集中。

      d)返回結(jié)果中前k個(gè)pair,輸出與答案最匹配的一個(gè)。

      2 實(shí)驗(yàn)結(jié)果

      2.1 實(shí)驗(yàn)設(shè)置

      在跨度提取任務(wù)數(shù)據(jù)集SQuAD1.1上評估所提出的SD-SE-BERT模型,SQuAD1.1為包含536篇維基百科文章以及超過100 000個(gè)問題與答案的基準(zhǔn)數(shù)據(jù)集,問題和答案均由人工進(jìn)行標(biāo)注,答案被限定出現(xiàn)在相應(yīng)的段落當(dāng)中。

      實(shí)驗(yàn)采用exact match(EM)和F1 score(F1)作為評價(jià)指標(biāo)。選取bert-base-uncased版本的BERT模型;batch size為16;epochs為4;輸入序列最大長度為384;初始學(xué)習(xí)率為5E-5,使用AdamW優(yōu)化器在每100個(gè)迭代周期衰減學(xué)習(xí)率,衰減系數(shù)為0.1;在數(shù)據(jù)增強(qiáng)模塊EDA中同義詞替換、隨機(jī)插入、隨機(jī)交換、隨機(jī)刪除這四種操作的概率設(shè)置為0.25;在使用基于加權(quán)平均的自集成策略時(shí),取前K=3輪epoch的BERT模型得到self-ensemble-BERT模型。在自蒸餾過程中,溫度系數(shù)τ固定設(shè)置為2,自蒸餾損失函數(shù)權(quán)重λ為0.1,為可學(xué)習(xí)參數(shù),使用AdamW優(yōu)化器進(jìn)行更新;大型語言模型ChatGLM選用ChatGLM-6B的量化int4版本,選擇默認(rèn)參數(shù)配置,一次訓(xùn)練迭代以1的batchsize進(jìn)行16次累加的前后向傳播。實(shí)驗(yàn)在CUDA11.1和PyTorch 1.8.1的環(huán)境中實(shí)現(xiàn)了模型的最優(yōu)性能。

      2.2 實(shí)驗(yàn)結(jié)果與分析

      在SQuAD1.1數(shù)據(jù)集上,將所提出的SD-SE-BERT模型與近些年問答領(lǐng)域表現(xiàn)較為出色的問答模型比較。

      對比模型包括:五種單模型BiDAF[25]、BERT、ALBERT[26]、LinkBERT[9]、RoBERTa;四種蒸餾模型TinyBERT[17]、BERT-PKD[27]、MobileBERT[28]、ITRD[29]以及大型語言模型ChatGLM。實(shí)驗(yàn)結(jié)果對比如表1所示。

      a)在單模型的對比中,BERT相比于BiDAF通過預(yù)訓(xùn)練可以更好地處理長文本與未知單詞,有利于其捕捉問題和段落之間的交互信息。因此,BiDAF實(shí)驗(yàn)效果相比于BERT較差;而ALBERT在BERT的基礎(chǔ)上使用自監(jiān)督損失函數(shù),并將預(yù)訓(xùn)練任務(wù)NSP替換為SOP(sentence order prediction),預(yù)測兩個(gè)句子是否為同一篇文章中的連續(xù)句子,可以更好地學(xué)習(xí)句子語義信息和相互關(guān)系。LinkBERT新增加文檔關(guān)系預(yù)測任務(wù),以學(xué)習(xí)跨文檔的句子之間的關(guān)系。RoBERTa則是在更大的數(shù)據(jù)集和最優(yōu)的參數(shù)中訓(xùn)練BERT。其中,ALBERT、RoBERTa、LinkBERT和ChatGLM模型的思路更為接近,均是在多種類的更大規(guī)模的數(shù)據(jù)集上改變或者增加預(yù)訓(xùn)練任務(wù)。

      b)在蒸餾模型的對比中,BERT-PKD由于使用知識蒸餾差異的方法,可以在保持模型性能的同時(shí),在教師模型網(wǎng)絡(luò)的先前層中提取多層知識,相對于TinyBERT模型在EM指標(biāo)上較優(yōu)。MobileBERT則進(jìn)一步使用特征圖遷移的方式允許學(xué)生模型模仿教師模型在每個(gè)Transformer層的輸出,整體上提高了模型性能。ITRD方法中教師模型使用BERT-base,除只使用12層encoder外,學(xué)生模型架構(gòu)和BERT-base相同,其引入相關(guān)性損失和互信息損失使得學(xué)生模型在特征級別上與教師表示相匹配,并從教師網(wǎng)絡(luò)中提取補(bǔ)充信息。

      SD-SE-BERT在測試集上的EM和F1分別為84.8和89.7,整體上比其他模型有所提升。相比較單模型中性能最佳的LinkBERT,EM指標(biāo)提高2.2,F(xiàn)1指標(biāo)下降0.4。相比五種單模型,EM指標(biāo)平均提高6.52,F(xiàn)1指標(biāo)平均提升4.22;證明了所提方法在改善BERT模型性能上的有效性。相比較四種蒸餾模型,EM指標(biāo)平均提高4.625,F(xiàn)1指標(biāo)平均提升3.275,表明SD-SE-BER相對其他蒸餾模型效果更好。相比較在SQuAD1.1數(shù)據(jù)集上微調(diào)的大型語言模型ChatGLM模型,EM指標(biāo)提高4.5,F(xiàn)1指標(biāo)提高2.5。由于ChatGLM已經(jīng)在其他任務(wù)上進(jìn)行預(yù)訓(xùn)練,其通用性更強(qiáng),在具體數(shù)據(jù)集上微調(diào)后的表現(xiàn)不佳的情況符合文獻(xiàn)[12,13]的結(jié)論。為進(jìn)一步研究自集成和自蒸餾的聯(lián)合使用對于模型訓(xùn)練過程中的影響,在訓(xùn)練時(shí)記錄來自前幾輪訓(xùn)練得出的教師模型的蒸餾損失和當(dāng)前訓(xùn)練的交叉熵?fù)p失,即式(16),得到SD-SE-BERT模型在SQuAD1.1上的訓(xùn)練的誤差收斂曲線,如圖2所示。

      當(dāng)訓(xùn)練開始時(shí),CE損失主導(dǎo)優(yōu)化目標(biāo)。在訓(xùn)練最后階段,交叉熵?fù)p失變小且變化較平穩(wěn),但蒸餾損失繼續(xù)呈現(xiàn)下降趨勢,說明目標(biāo)函數(shù)中的自蒸餾部分對模型貢獻(xiàn)了很大的增益。在訓(xùn)練階段結(jié)束時(shí)優(yōu)化CE損失不能繼續(xù)提高BERT的性能,但以self-ensemble-BERT為教師的自蒸餾將繼續(xù)提高整體預(yù)測能力。

      2.3 消融實(shí)驗(yàn)

      對基線模型添加EDA模塊、采用加權(quán)平均集成策略和使用自蒸餾的訓(xùn)練方法來驗(yàn)證提出方法的有效性。提出方法的幾種組合如表2所示,各項(xiàng)實(shí)驗(yàn)結(jié)果以在SQuAD1.1數(shù)據(jù)集上EM和F1指標(biāo)表示。第一行為基線模型BERT-base的結(jié)果,第二至六行為基線模型與對應(yīng)方法組合的結(jié)果。

      通過第一行和第二行結(jié)果的比較可以看出,在基線模型中添加所提的EDA模塊后,模型性能略有提升。第四行中,使用普通平均策略代替加權(quán)平均集成結(jié)合自蒸餾,模型的性能相較于只使用加權(quán)平均集成的第三行,在提升幅度上更大,說明方法中自蒸餾部分提供的增益較大。通過第一行和第五行結(jié)果的比較可以看出,對跨度提取任務(wù),所提的加權(quán)平均集成策略結(jié)合自蒸餾的訓(xùn)練方法相對基線,在EM和F1指標(biāo)上分別提高了7.5%和4.9%。驗(yàn)證了同時(shí)采用加權(quán)平均集成策略結(jié)合自蒸餾方法的有效性。

      表3給出了部分樣本在經(jīng)過所提方法訓(xùn)練后的答案跨度預(yù)測結(jié)果,第三列probability表示跨度開始位置和結(jié)束位置的概率值。在針對“who”類別的答案預(yù)測里,BERT模型很好地捕捉到了上下文信息,使得其更多地關(guān)注到人物的身份信息,輸出正確答案“Rev.William Corby”,但在第三條樣本示例,答案并未直接在段落給出,需要模型理解文本并推理信息,BERT輸出錯(cuò)誤答案“Rev.Theodore M.Hesburgh”,BERT受限于之前訓(xùn)練中學(xué)到的知識,而所提的方法并不受此影響,進(jìn)一步證明自蒸餾對于模型“知識更新”的有效性。在第一和第二條樣本示例中,雖然BERT和所提方法都預(yù)測正確,但在對于跨度中開始和結(jié)束位置的概率預(yù)測上,所提方法對于正確答案的關(guān)注更強(qiáng),歸功于自蒸餾使得模型能夠更好地關(guān)注到目標(biāo)詞的位置。

      3 結(jié)束語

      針對知識蒸餾結(jié)合預(yù)訓(xùn)練語言模型在問答領(lǐng)域上存在的問題,將自蒸餾和自集成結(jié)合,構(gòu)建出一種基于自蒸餾與自集成的問答模型SD-SE-BERT。使用不同訓(xùn)練階段的BERT模型作為學(xué)生模型,自集成機(jī)制按學(xué)生模型在驗(yàn)證集上的性能,對輸出結(jié)果進(jìn)行加權(quán)平均以作為教師模型提供的監(jiān)督信號,設(shè)計(jì)并結(jié)合自蒸餾損失函數(shù)和交叉熵?fù)p失函數(shù),有效利用模型自身的監(jiān)督信息和模型間的多樣性。該方法提高了模型組合不同文本數(shù)據(jù)特征的能力,避免了事先訓(xùn)練教師模型、以及教師模型與學(xué)生模型不匹配的問題,通過與其他代表性方法的對比,證明了所構(gòu)建的問答模型在跨度提取任務(wù)上的有效性。筆者相信,這項(xiàng)研究對于進(jìn)一步發(fā)展問答模型以及相關(guān)領(lǐng)域的研究具有一定意義。在未來工作中,將繼續(xù)研究自蒸餾結(jié)合其他模型壓縮的方法,進(jìn)一步提高問答模型性能,并將持續(xù)關(guān)注大型語言模型的動(dòng)態(tài),探索在問答領(lǐng)域的各類任務(wù)上微調(diào)其他大型語言模型的效果。

      參考文獻(xiàn):

      [1]Chen Danqi.Neural reading comprehension and beyond[M].Redwood City:Stanford University Press,2018.

      [2]Liu Shanshan,Zhang Xin,Zhang Sheng,et al.Neural machine reading comprehension:methods and trends[J].Applied Sciences,2019,9(18):3698.

      [3]葉俊民,趙曉麗,杜翔,等.片段抽取型機(jī)器閱讀理解算法研究[J].計(jì)算機(jī)應(yīng)用研究,2021,38(11):3268-3273.(Ye Junmin,Zhao Xiaoli,Du Xiang,et al.Research on span-extraction algorithm for machine reading comprehension[J].Application Research of Computers,2021,38(11):3268-3273.)

      [4]王寰,孫雷,吳斌,等.基于閱讀理解智能問答的RPR融合模型研究[J].計(jì)算機(jī)應(yīng)用研究,2022,39(3):726-731,738.(Wang Huan,Sun Lei,Wu Bin,et al.Research on RPR fusion model based on reading comprehension intelligent question answering[J].Application Research of Computers,2022,39(3):726-731,738.)

      [5]Joshi M,Chen Danqi,Liu Yinhan,et al.SpanBERT:improving pre-training by representing and predicting spans[J].Trans of the Association for Computational Linguistics,2020,8:64-77.

      [6]Devlin J,Chang Mingwei,Lee K,et al.BERT:pre-training of deep bidirectional transformers for language understanding[C]//Proc of Conference of the North American Chapter of the Association for Computational Linguistics.Stroudsburg:ACL Press,2019:4171-4186.

      [7]Rajpurkar P,Zhang J.Squad:100,000+questions for machine comprehension of text[C]//Proc of Conference on Empirical Methods in Na-tural Language Processing.Stroudsburg:ACL Press,2016:2383-2392.

      [8]Liu Zhuang,Lin W,Shi Ya,et al.RoBERTa:a robustly optimized BERT pretraining approach[C]//Proc of the 20th Chinese National Conference on Computational Linguistics.Beijing:Chinese Information Processing Society of China Press,2019:1218-1227.

      [9]Yasunaga M,Leskovec J.LinkBERT:pretraining language models with document links[C]//Proc of the 60th Annual Meeting of Association for Computational Linguistics.Stroudsburg:ACL Press,2022:8003-8016.

      [10]Aljanabi M,Ghazi M,Ali A H,et al.ChatGPT:open possibilities[J].Iraqi Journal For Computer Science and Mathematics,2023,4(1):62-64.

      [11]Du Zhengxiao,Qian Yujie,Liu Xiao,et al.GLM:general language model pretraining with autoregressive blank infilling[C]//Proc of the 60th Annual Meeting of the Association for Computational Linguistics.Stroudsburg:ACL Press,2022:320-335.

      [12]Karmakar A,Prenner J A.Codex hacks HackerRank:memorization issues and a framework for code synthesis evaluation[EB/OL].(2022).https://arxiv.org/abs/2212.02684.

      [13]Liu Tiedong,Low B K H.Goat:fine-tuned LLaMA outperforms GPT-4 on arithmetic tasks[EB/OL].(2023).https://arxiv.org/abs/2305.14201.

      [14]Zhang Wenxuan,He Ruidan,Peng Haiyun,et al.Cross-lingual aspect-based sentiment analysis with aspect term code-switching[C]//Proc of Conference on Empirical Methods in Natural Language Processing.Stroudsburg:ACL Press,2021:9220-9230.

      [15]Pranesh R,Shekhar A,Pallavi S.Quesbelm:a BERT based ensemble language model for natural questions[C]//Proc of the 5th Internatio-nal Conference on Computing,Communication and Security.Pisca-taway,NJ:IEEE Press,2020:1-5.

      [16]Pant K,Dadu T,Mamidi R,et al.BERT-based ensembles for modeling disclosure and support in conversational social media text[C]//Proc of the 3rd Workshop on Affective Content Analysis.Menlo Park:AAAI Press,2020:130-139.

      [17]Jiao Xiaoqi,Yin Yichun,Shang Lifeng,et al.TinyBERT:distilling BERT for natural language understanding[C]//Findings of the Association for Computational Linguistics.Stroudsburg:ACL Press,2019:4163-4174.

      [18]Yang Ze,Shou Linjun,Gong Ming,et al.Model compression with two-stage multi-teacher knowledge distillation for Web question answering system[C]//Proc of the 13th International Conference on Web Search and Data Mining.New York:ACM Press,2020:690-698.

      [19]Yuan Fei,Shou Linjun,Pei Jian,et al.Reinforced multiteacher selection for knowledge distillation[C]//Proc of AAAI Conference on Artificial Intelligence.Stroudsburg:ACL Press,2021:14284-14291.

      [20]Chen Defang,Mei Jianping,Zhang Hailin,et al.Knowledge distillation with the reused teacher classifier[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2022:11933-11942.

      [21]He Ruifei,Sun Shuyang,Yang Jihan,et al.Knowledge distillation as efficient pre-training:faster convergence,higher data-efficiency,and better transferability[C]//Proc of IEEE/CVF Conference on Compu-ter Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2022:9161-9171.

      [22]葉榕,邵劍飛,張小為,等.基于BERT-CNN的新聞文本分類的知識蒸餾方法研究[J].電子技術(shù)應(yīng)用,2023,49(1):8-13.(Ye Rong,Shao Jianfei,Zhang Xiaowei,et al.Knowledge distillation of news text classification based on BERT-CNN[J].Application of Electronic Technique,2023,49(1):8-13.)

      [23]Yang Chenglin,Xie Lingxi,Su Chi,et al.Snapshot distillation:teacher-student optimization in one generation[C]//Proc of IEEE/CVF Conference on Computer Vision and Pattern Recognition.Washington DC:IEEE Computer Society,2019:2859-2868.

      [24]Wei J,Zou Kai.EDA:easy data augmentation techniques for boosting performance on text classification tasks[C]//Proc of Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing.Stroudsburg:ACL Press,2019:6382-6388.

      [25]Seo M,Kembhavi A,F(xiàn)arhadi A,et al.Bidirectional attention flow for machine comprehension[C]//Proc of the 5th International Confe-rence on Learning Representations.2017:147-154.

      [26]Lan Zhenzhong,Chen Mingda,Goodman S,et al.ALBERT:a lite BERT for self-supervised learning of language representations[C]//Proc of the 8th International Conference on Learning Representations.2020:344-350.

      [27]Sun Siqi,Cheng Yu,Gan Zhe,et al.Patient knowledge distillation for BERT model compression[C]//Proc of Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing.Stroudsburg:ACL Press,2019:4323-4332.

      [28]Sun Zhiqing,Yu Hongkun,Song Xiaodan,et al.MobileBERT:a compact task-agnostic BERT for resource-limited devices[C]//Proc of the 58th Annual Meeting of the Association for Computational Linguistics.Stroudsburg:ACL Press,2020:2158-2170.

      [29]Miles R,Rodriguez A L,Mikolajczyk K.Information theoretic representation distillation[C]//Proc of the 33rd British Machine Vision Conference.2022:385.

      猜你喜歡
      集成學(xué)習(xí)
      一種不平衡數(shù)據(jù)集成分類方法
      機(jī)器學(xué)習(xí)隨機(jī)森林算法的應(yīng)用現(xiàn)狀
      不平衡數(shù)據(jù)分類問題解決辦法
      基于集成學(xué)習(xí)改進(jìn)的卷積神經(jīng)網(wǎng)絡(luò)的手寫字符識別
      基于阿里巴巴大數(shù)據(jù)重復(fù)購買預(yù)測的實(shí)證研究
      基于集成學(xué)習(xí)的房價(jià)預(yù)測模型
      基于局部有效性的選擇性決策樹集成
      基于集成學(xué)習(xí)的高送轉(zhuǎn)股票研究
      基于稀疏編碼器與集成學(xué)習(xí)的文本分類
      基于屬性權(quán)重的Bagging回歸算法研究
      张家口市| 越西县| 米泉市| 富宁县| 宜州市| 建阳市| 莱西市| 江口县| 兴海县| 白银市| 共和县| 灵宝市| 凤翔县| 临颍县| 绥滨县| 普陀区| 娄底市| 宜宾县| 桐柏县| 安多县| 虎林市| 兴隆县| 茂名市| 封开县| 通化市| 收藏| 唐山市| 桑植县| 博罗县| 图木舒克市| 蒙阴县| 中山市| 敖汉旗| 信丰县| 东阿县| 三都| 雷州市| 昭觉县| 高陵县| 青海省| 灵宝市|