郝雅茹, 董 力, 許 可, 李先賢
(1.微軟亞洲研究院, 北京 100191; 2.北京航空航天大學(xué) 計(jì)算機(jī)學(xué)院, 北京 100083;3.廣西多源信息挖掘與安全重點(diǎn)實(shí)驗(yàn)室(廣西師范大學(xué)), 廣西 桂林 541004)
隨著深度學(xué)習(xí)的迅猛發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的自然語言處理模型逐漸成為主流。近幾年提出的Transformer[1]模型架構(gòu)使得計(jì)算機(jī)在閱讀理解和文本分類等任務(wù)上的表現(xiàn)達(dá)到甚至超越了人類。2018年,谷歌公司發(fā)布了基于Transformer架構(gòu)的大規(guī)模自監(jiān)督預(yù)訓(xùn)練語言模型BERT(bidirectional encoder representations from transformers)[2],在自然語言處理領(lǐng)域取得了巨大的成功,刷新了很多任務(wù)的最佳結(jié)果。BERT模型的提出激發(fā)了研究者對預(yù)訓(xùn)練語言模型的廣泛研究與改進(jìn),例如近年提出的RoBERTa(robustly optimized BERT pretraining approach)[3]、XLNet[4]、UniLM(unified language model pre-training for natural language understanding and generation)[5]和ELECTRA(pre-training text encoders as discriminators rather than generators)[6]等模型。雖然這些大型預(yù)訓(xùn)練模型在各種下游任務(wù)上表現(xiàn)出色,但主要得益于深層神經(jīng)網(wǎng)絡(luò)巨大的參數(shù)量和強(qiáng)大的擬合能力。大部分基于神經(jīng)網(wǎng)絡(luò)的模型對研究者是不透明的,給這些模型的通用化帶來一定程度的風(fēng)險(xiǎn)。因此,解釋模型對理解模型內(nèi)部行為和改進(jìn)模型至關(guān)重要。本文對近年來有關(guān)預(yù)訓(xùn)練語言模型可解釋性的研究工作進(jìn)行綜述,并對深度學(xué)習(xí)模型可解釋性的定義與分類,預(yù)訓(xùn)練語言模型的宏觀可解釋性、主動解釋和事后解釋的相關(guān)工作進(jìn)行詳細(xì)介紹,分析現(xiàn)有工作的不足,闡述未來可能的發(fā)展方向。
人工智能的初衷是讓機(jī)器模仿人類智能,使其可以像人類一樣學(xué)習(xí)、思考和決策。進(jìn)入21世紀(jì)以來,基于神經(jīng)網(wǎng)絡(luò)的深度學(xué)習(xí)模型取得了非常大的進(jìn)展,不僅推動了機(jī)器人、金融、醫(yī)學(xué)、教育等領(lǐng)域的發(fā)展,也激發(fā)了人們廣泛的研究熱情。盡管神經(jīng)網(wǎng)絡(luò)的決策漸漸趨近于人類智能,但其與人類智能仍有著本質(zhì)的區(qū)別,即人們無法解釋模型決策背后的倫理與規(guī)則。人類智能在處理某個(gè)任務(wù)的時(shí)候,對每一項(xiàng)決策都會有相應(yīng)的解釋。比如人類將一張圖片分類為斑馬,相應(yīng)的解釋為圖片中的動物外形像馬,且身體上有黑白相間的條紋,通常這樣的解釋會以自然語言的方式呈現(xiàn)出來。
現(xiàn)有的深度學(xué)習(xí)模型對研究者而言大多是黑盒的,無法做到自我解釋,這給模型的通用化帶來不確定性和不可控性。因此,有效地解釋模型是深度學(xué)習(xí)發(fā)展必不可少的部分,相關(guān)工作也逐漸增多。本章將首先介紹人工智能中模型可解釋性的定義及分類,然后回顧自監(jiān)督預(yù)訓(xùn)練語言模型的發(fā)展,最后介紹與預(yù)訓(xùn)練語言模型可解釋性相關(guān)的綜述論文。
本文中的可解釋性專門針對人工神經(jīng)網(wǎng)絡(luò),從解釋的具體對象來講可分為2個(gè)大類:深度學(xué)習(xí)的可解釋性和深度模型的可解釋性。前者為宏觀角度的可解釋性,主要從模型結(jié)構(gòu)、優(yōu)化方法等角度解釋深度學(xué)習(xí)方法的有效性;后者為微觀角度的可解釋性,一個(gè)深度學(xué)習(xí)模型的可解釋性是其內(nèi)在的固有性質(zhì),指模型的決策在多大程度上可以被人類預(yù)測和理解。模型的可解釋性越強(qiáng),則代表模型的行為對人類越透明,模型的不確定性也就越低;反之,模型的可解釋性越弱,模型做出預(yù)測的機(jī)制就不能被人類所理解,它的不可控性也越大。本文的研究對象是自然語言處理領(lǐng)域中預(yù)訓(xùn)練語言模型的可解釋性。
研究者通過設(shè)計(jì)解釋算法來評估模型的可解釋性。解釋方法的分類與前述模型的可解釋性分類相對應(yīng),分為宏觀的解釋方法與微觀的解釋方法,區(qū)別在于解釋對象不同。宏觀的解釋方法針對深度學(xué)習(xí)的學(xué)習(xí)層面,如不同的損失形式、訓(xùn)練任務(wù)、模型結(jié)構(gòu)和優(yōu)化過程等宏觀因素給模型最終表現(xiàn)帶來的影響。
微觀的解釋方法主要分析某一個(gè)具體的模型,針對某一個(gè)或者某一組輸入來解釋模型的預(yù)測,合理的解釋算法應(yīng)有效展示模型做出預(yù)測背后的規(guī)則與邏輯。微觀解釋方法可進(jìn)一步分為主動解釋和事后解釋:主動解釋為模型在做出預(yù)測的過程中可以同時(shí)生成相應(yīng)的解釋,如注意力顯著性在網(wǎng)絡(luò)前向傳播時(shí)即可生成,自我可解釋的網(wǎng)絡(luò)會設(shè)計(jì)一些可解釋單元;事后解釋為在模型做出決策之后,通過一些算法來后效地揭示模型做出預(yù)測的原因。事后解釋通常也分為黑盒解釋和白盒解釋,黑盒解釋為只對模型進(jìn)行評測的解釋,白盒解釋則會利用模型的參數(shù)和梯度信息。目前事后解釋的相關(guān)研究數(shù)量相對較多。事后解釋預(yù)訓(xùn)練語言模型具體到解釋形式上,可再細(xì)分為一些類別:解釋模型捕獲到的語言知識;通過顯著性圖來展示模型的決策歸因;解釋輸入信息在模型內(nèi)部的交互;設(shè)計(jì)對抗性攻擊方法來揭示模型的脆弱性以及神經(jīng)元級別的解釋方法。表1為這些解釋方法分類的總結(jié)。
表1 解釋方法分類
早期的自然語言處理模型大多基于監(jiān)督學(xué)習(xí)的訓(xùn)練,即訓(xùn)練任務(wù)與模型是一一對應(yīng)的。例如文本分類任務(wù),首先需要大量的人工標(biāo)注數(shù)據(jù)作為訓(xùn)練樣本,之后通過監(jiān)督學(xué)習(xí)來訓(xùn)練模型。對于這種學(xué)習(xí)方式,數(shù)據(jù)量的大小直接影響了模型在下游任務(wù)的表現(xiàn)。在數(shù)據(jù)量稀少的情況下,模型訓(xùn)練容易發(fā)生過擬合,而標(biāo)注更多的數(shù)據(jù)則需要大量的人力成本。相比于有標(biāo)注數(shù)據(jù),無標(biāo)注文本數(shù)據(jù)是海量且容易獲取的。因此,研究者提出自監(jiān)督任務(wù)來預(yù)訓(xùn)練大型語言模型,以此減少對標(biāo)注數(shù)據(jù)的依賴,并取得了巨大成功,文獻(xiàn)[7]為近年來有關(guān)語言模型的研究綜述。
生成式預(yù)訓(xùn)練模型(generative pre-training,GPT)[8]基于Transformer解碼器,通過語言模型任務(wù)來訓(xùn)練,即給定前文來預(yù)測下一個(gè)詞是什么。由于GPT模型只能利用單向信息,語言模型嵌入(embeddings from language models,ELMo)[9]提出基于雙向長短期記憶網(wǎng)絡(luò)(long short-term memory,LSTM)來訓(xùn)練模型,然而ELMo并不是真正意義上的雙向,因?yàn)槠錈o法做到上文和下文的充分融合。因此,BERT提出掩碼語言模型預(yù)訓(xùn)練任務(wù),并應(yīng)用于多層Transformer編碼器,在眾多自然語言處理任務(wù)上刷新了多項(xiàng)紀(jì)錄,被認(rèn)為是自然語言處理領(lǐng)域一個(gè)劃時(shí)代的模型。BERT模型結(jié)構(gòu)如圖1所示。在預(yù)訓(xùn)練階段,每個(gè)輸入包含2個(gè)句子,通過分界符[SEP]分隔,每個(gè)輸入都被掩蓋了15%的詞。預(yù)訓(xùn)練任務(wù)有2個(gè):掩碼語言模型預(yù)測被掩蓋的詞到底是什么;預(yù)測第二個(gè)句子是否為第一個(gè)句子的下一句。微調(diào)階段,只需要在最后一層加一個(gè)全聯(lián)接層即可。
BERT提出之后,預(yù)訓(xùn)練語言模型被廣泛應(yīng)用,也激發(fā)了研究者對其進(jìn)行改進(jìn)和創(chuàng)新,例如近年來提出的RoBERTa、XLNet、UniLM、ELECTRA等模型。這些模型的規(guī)模較大,可解釋性也非常差,因此研究者設(shè)計(jì)了很多解釋方法來對模型進(jìn)行可解釋性分析。
圖1 BERT模型結(jié)構(gòu)Fig.1 BERT model architecture
自然語言處理領(lǐng)域的可解釋性綜述文獻(xiàn)較多。如:Belinkov等[10]對神經(jīng)自然語言處理的分析方法進(jìn)行綜述,分析對象為監(jiān)督學(xué)習(xí)模型;Rogers等[11]整理了理解BERT模型有效的原因的相關(guān)研究,包括分析BERT、訓(xùn)練BERT和模型規(guī)模方面的工作;Madsen等[12]綜述了神經(jīng)自然語言處理領(lǐng)域的事后解釋工作,主要是模型無關(guān)的通用事后解釋方法;Sajjad等[13]綜述了自然語言處理的神經(jīng)元級別的解釋方法和直接應(yīng)用;侯中妮等[14]綜述了面向知識圖譜可解釋推理研究。本文主要針對預(yù)訓(xùn)練語言模型的可解釋性研究進(jìn)行綜述。
宏觀可解釋性的研究主要針對深度學(xué)習(xí)的學(xué)習(xí)層面,如解釋模型結(jié)構(gòu)的有效性、分析模型的自監(jiān)督任務(wù)以及模型的優(yōu)化過程。
多層Transformer是目前主流預(yù)訓(xùn)練語言模型的基礎(chǔ)網(wǎng)絡(luò)。Transformer最先在機(jī)器翻譯領(lǐng)域被提出,而后在自然語言處理各個(gè)領(lǐng)域被廣泛使用。在計(jì)算機(jī)視覺領(lǐng)域,視覺Transformer也逐漸取代卷積神經(jīng)網(wǎng)絡(luò)成為主流模型架構(gòu)。模型每一層分為2個(gè)單元:自注意力單元和前饋神經(jīng)網(wǎng)絡(luò)單元。自注意力單元為Transformer的核心機(jī)制,Abnar等[15]提出注意力rollout和注意力流來將模型對輸入嵌入向量的注意力轉(zhuǎn)化為對輸入詞的注意力。一些工作分析了多頭注意力[16-17],發(fā)現(xiàn)一些注意力頭扮演著可以用語言解釋的角色,而另一些注意力頭則毫無作用。Chefer等[18]提出計(jì)算Transformer網(wǎng)絡(luò)相關(guān)性的方法,該方法基于泰勒分解原理分配局部相關(guān)性,然后通過層傳播這些相關(guān)性分?jǐn)?shù)。
除了注意力機(jī)制,還有一些工作分析了模型的層歸一化和殘差連接結(jié)構(gòu)。Xiong等[19]發(fā)現(xiàn)層歸一化的位置可以影響模型優(yōu)化的穩(wěn)定性,將層歸一化放在殘差塊內(nèi)可以使梯度在初始化時(shí)表現(xiàn)良好,并且不需要學(xué)習(xí)率預(yù)熱階段。Xu等[20]從梯度方面分析和理解了層歸一化的有效性。還有一些工作致力于對層歸一化機(jī)制進(jìn)行改進(jìn)[21-23]。
預(yù)訓(xùn)練階段對大型語言模型至關(guān)重要,它使用大量無標(biāo)注語料來學(xué)習(xí)語言知識。對于預(yù)測下一個(gè)詞的語言模型,文獻(xiàn)[24-25]提供了其有效性的數(shù)學(xué)解釋。Tamkin等[26]研究預(yù)訓(xùn)練語言模型的可遷移性,設(shè)計(jì)了簡單的消融技術(shù)來衡量每個(gè)預(yù)訓(xùn)練層對遷移任務(wù)性能的影響;Hao等[27]通過可視化損失表面和優(yōu)化軌跡的方法來理解預(yù)訓(xùn)練過程的有效性。對于掩碼語言模型,很多工作研究什么掩碼方式是有效的。Wettig等[28]分析了不同掩碼率對預(yù)訓(xùn)練模型性能的影響;Cui等[29]提出掩蓋整個(gè)詞而非子詞;Joshi等[30]提出掩蓋連續(xù)的詞而不是單個(gè)詞;Sun等[31]發(fā)現(xiàn)掩蓋短語和實(shí)體有助于提升模型對結(jié)構(gòu)化知識的表示。
對于模型在下游任務(wù)上的微調(diào)訓(xùn)練階段,Dodge等[32]分析了模型初始化和訓(xùn)練數(shù)據(jù)順序?qū)Y(jié)果的影響;Mosbach等[33]研究了微調(diào)過程中的不穩(wěn)定性,發(fā)現(xiàn)它是由導(dǎo)致梯度消失的優(yōu)化困難引起的,并提出了強(qiáng)于之前方法的微調(diào)基線。微調(diào)過程僅僅使用很少的數(shù)據(jù)就在下游任務(wù)上達(dá)到了很高的性能,Shachaf等[34]從理論上分析了微調(diào)的有效性,發(fā)現(xiàn)微調(diào)的成功取決于源任務(wù)和目標(biāo)任務(wù)之間的相關(guān)性。
神經(jīng)網(wǎng)絡(luò)通過優(yōu)化過程降低訓(xùn)練損失來減小模型在下游任務(wù)上的泛化誤差。Kong等[35]展示了預(yù)訓(xùn)練語言模型表示是在最大化一個(gè)目標(biāo)函數(shù),該目標(biāo)函數(shù)是單詞序列不同部分之間互信息的下界,論文里的公式統(tǒng)一了經(jīng)典詞嵌入和上下文編碼的嵌入;Jiang等[36]發(fā)現(xiàn)預(yù)訓(xùn)練模型在微調(diào)階段存在對預(yù)訓(xùn)練知識的遺忘,提出了平滑誘導(dǎo)正則化和Bregman近點(diǎn)優(yōu)化來對預(yù)訓(xùn)練模型進(jìn)行穩(wěn)定和高效的微調(diào);Bu等[37]利用經(jīng)典的凸優(yōu)化理論來解釋預(yù)訓(xùn)練模型的收斂行為。
主動解釋是在模型做出預(yù)測的過程中就生成相應(yīng)的解釋。如注意力機(jī)制,輸入詞在前向傳播的過程中,Transformer中每一層都會生成注意力分?jǐn)?shù)圖,注意力分?jǐn)?shù)越高代表某個(gè)詞越關(guān)注另一個(gè)詞。此外,一些模型設(shè)計(jì)了可解釋單元,可以實(shí)時(shí)生成模型預(yù)測的解釋,這類模型也稱為自我解釋模型。
Transformer模型的成功主要來自它的注意力機(jī)制,可以有效地編碼上下文信息。Transformer在其注意力模塊通常有多個(gè)注意力頭,被認(rèn)為編碼了不同角度的語言信息。很多工作致力于解釋模型在做預(yù)測的同時(shí)生成的注意力分?jǐn)?shù)。直觀上來講,一個(gè)注意力得分越大,則表明某一個(gè)詞越關(guān)注另一個(gè)詞,兩詞之間的注意力分?jǐn)?shù)越大則對最終預(yù)測的影響越大。
一個(gè)有趣的問題是注意力分?jǐn)?shù)到底是否能反映其對模型決策的影響程度。文獻(xiàn)[38-39]表明注意力分?jǐn)?shù)并不是直接可解釋的,實(shí)驗(yàn)發(fā)現(xiàn)將注意力大的連接遮蔽依然不會明顯改變模型的預(yù)測結(jié)果,且注意力分?jǐn)?shù)的解釋結(jié)果和顯著性圖解釋的結(jié)果并不一致。Meister等[40]著重于解釋稀疏注意力,研究了稀疏性如何影響注意力作為解釋工具的能力。Pruthi等[41]和Marecek等[42]設(shè)計(jì)了基于自注意力機(jī)制的解釋方法,包括訓(xùn)練模型用來產(chǎn)生欺騙性的注意力掩碼,以及從注意力分?jǐn)?shù)中導(dǎo)出語言知識相關(guān)的語法樹。Wiegreffe等[43]設(shè)計(jì)了4種替代測試來確定什么時(shí)候可以使用注意力做為模型的解釋。Brunner等[44]從數(shù)學(xué)角度證明高層的詞嵌入已經(jīng)無法代表單個(gè)輸入,而是所有輸入的融合,將注意力作為解釋方法時(shí)也需要注意這一點(diǎn)。Clark等[45]和Kovaleva等[46]分析了BERT模型內(nèi)部的注意力模式,發(fā)現(xiàn)大體可以分為幾個(gè)固定的類別,如圖2所示。由于BERT內(nèi)注意力大多是無意義的連接,Hao等[47]提出自注意力歸因方法使得Transformer內(nèi)部的注意力變得可解釋。
圖2 BERT注意力模式Fig.2 BERT attention patterns
大多數(shù)有關(guān)可解釋性的工作都為事后解釋,能在模型預(yù)測階段就生成相應(yīng)的解釋更具有挑戰(zhàn)性。一些工作在網(wǎng)絡(luò)內(nèi)部設(shè)計(jì)了可解釋單元,用于實(shí)時(shí)生成對模型的解釋,這類模型也叫自我解釋模型。Melis等[48]提出分階段設(shè)計(jì)自我解釋模型,逐步將線性分類器推廣到復(fù)雜但架構(gòu)明確的模型,通過專門為此類模型定制的正則化機(jī)制來保證自我解釋模型的忠實(shí)性和穩(wěn)定性。Zhao等[49]提出一種通過利用線性整流單元-深度神經(jīng)網(wǎng)絡(luò)(rectified linear unit-deep neural network,ReLU-DNN)中固有的局部線性模型來解釋基于卷積神經(jīng)網(wǎng)絡(luò)的文本分類模型。為了獲得一個(gè)整體的可自我解釋的模型,來自ReLU-DNN的局部線性模型系統(tǒng)通過最大池過濾器映射回適當(dāng)?shù)膎-gram。Wang等[50]研究發(fā)現(xiàn),現(xiàn)有的解釋可能會受到輸入的擾動和轉(zhuǎn)換的干擾,為了解決這個(gè)問題,提出了通過自我解釋模型中的變換正則化來學(xué)習(xí)穩(wěn)定的解釋。
事后解釋為在訓(xùn)練好的模型做出預(yù)測之后針對特定的一個(gè)或一組輸入來生成對應(yīng)解釋。事后解釋包括:通過一些探測任務(wù)解釋模型預(yù)訓(xùn)練過程學(xué)習(xí)到的語言知識;通過顯著性圖將模型決策歸因到單個(gè)輸入上;解釋模型內(nèi)部的信息流動和交互;通過對抗性攻擊來揭示模型的脆弱性;網(wǎng)絡(luò)中神經(jīng)元級別的解釋方法。
大型預(yù)訓(xùn)練語言模型能在多種自然語言處理任務(wù)上都達(dá)到非常好的效果,說明模型內(nèi)部已經(jīng)掌握大量關(guān)于自然語言的知識,如語法知識和語義知識等。許多工作致力于研究探測模型獲取到的知識,與此同時(shí)可以確定模型對哪些語言方面的理解是薄弱的。
Coenen等[51]研究了BERT如何在模型內(nèi)部編碼通用語言特征。研究發(fā)現(xiàn),在高層次上,語言特征似乎在單獨(dú)的語義和句法子空間中表示,并且提供了詞義的細(xì)粒度幾何表示的證據(jù)。Rosa等[52]使用從BERT模型中提取出的語法信息來構(gòu)造完整的依賴樹。Jawahar等[53]通過實(shí)驗(yàn)發(fā)現(xiàn)BERT的短語表示在較低層捕獲短語級信息,中間層則構(gòu)成了豐富的語言信息層次結(jié)構(gòu),從底部的表面特征開始,之后是中間的句法特征,然后是頂部的語義特征。此外,Hewitt等[54]和Niven等[55]也在BERT模型內(nèi)部發(fā)現(xiàn)了類似現(xiàn)象,并從中導(dǎo)出相應(yīng)的語法樹,圖3為不同模型語法樹樣例。
顯著性方法將模型的決策歸因到輸入特征上,通過一些可視化的圖像來展示解釋結(jié)果。比如自然語言處理任務(wù)的輸入通常是一段文本序列,包含多個(gè)單詞,其中每個(gè)單詞對模型最終預(yù)測的貢獻(xiàn)程度不同,某個(gè)詞的顯著性越強(qiáng),則代表它對模型最終決策的影響越大。一些研究工作提出了不同的顯著性解釋方法,如:綜合梯度方法[56]、DeepLift方法[57]、LRP(layerwise relevance propagation)方法[58]等。
圖3 不同模型中導(dǎo)出的語法樹Fig.3 Syntactic trees from different models
綜合梯度方法通過計(jì)算模型關(guān)于輸入特征的梯度集成來作為每個(gè)輸入的歸因分?jǐn)?shù),并證明了該方法滿足解釋方法的2條基本公理:敏感性和實(shí)現(xiàn)不變性。綜合梯度方法并不需要對原始網(wǎng)絡(luò)進(jìn)行修改,只需要幾次簡單的梯度運(yùn)算符的調(diào)用,本質(zhì)上是一種白盒解釋方法。DeepLift方法旨在根據(jù)輸入與某些參考輸入的差異來解釋輸出與某些參考輸出的差異。它將每個(gè)神經(jīng)元的激活與其“參考激活”進(jìn)行比較,并根據(jù)差異分配顯著性分?jǐn)?shù)。此外,通過選擇性地分別考慮正面和負(fù)面貢獻(xiàn),DeepLift還可以揭示其他方法遺漏的依賴關(guān)系。LRP方法目的是解釋任何神經(jīng)網(wǎng)絡(luò)在其輸入域中的輸出。直觀地說,LRP所做的是使用網(wǎng)絡(luò)權(quán)重和前向傳遞創(chuàng)建的神經(jīng)元激活將輸出通過網(wǎng)絡(luò)傳播回送到輸入層。在那里能夠可視化哪些輸入特征真正對輸出有貢獻(xiàn)。LRP是一種保守的解釋方法,這意味著任何輸出的大小通過反向傳播過程后保持不變,并且等于輸入層相關(guān)圖的總和。圖4為不同顯著性方法的可視化結(jié)果。
圖4 顯著性方法可視化結(jié)果Fig.4 A visualization of saliency methods
顯著性方法把模型輸出歸因到單個(gè)輸入上,然而模型最終的預(yù)測是輸入特征之間互相作用的結(jié)果,并不是依靠單個(gè)輸入的影響。從模型的第一層到模型的最后一層,輸入特征到底是如何進(jìn)行深度交互的也是一個(gè)熱門研究方向。
自注意力本質(zhì)上是輸入特征之間的兩兩交互,Hao等[47]提出自注意力歸因方法,并從每層的歸因得分中提取出了模型的歸因樹,結(jié)果顯示歸因樹可以很好地解釋Transformer模型內(nèi)部的信息交互。沙普利值是由博弈論提出的一個(gè)概念,用以描述2個(gè)因素之間的作用對最終決策的影響。Sundararajan等[59]將沙普利值應(yīng)用于深度學(xué)習(xí)的可解釋性研究,使用公理化方法來研究沙普利歸因值許多操作之間的差異,并提出一種稱為沙普利基線的方法。為了解釋預(yù)訓(xùn)練語言模型如何處理語義組合,Jin等[60]將層次結(jié)構(gòu)中的非可加性和上下文無關(guān)重要性屬性確定為突出單詞和短語組合的2個(gè)理想屬性。該研究展示了一些關(guān)于分層解釋的先前工作,例如上下文分解,其在數(shù)學(xué)上不滿足所需的屬性,導(dǎo)致該方法在不同模型中的解釋效果不一致,因此提出一種通用方法來量化每個(gè)單詞和短語的重要性,以此構(gòu)建語義組合的層次化解釋,圖5即為該方法的解釋示例。
圖5 BERT模型在SST-2數(shù)據(jù)集上的層次化解釋Fig.5 Hierarchical explanation of a prediction by the BERT Transformer model on SST-2
要理解模型的行為,不僅需要解釋模型如何做出預(yù)測,也需要理解模型為什么會做出錯(cuò)誤預(yù)測。一般情況下,人類對輸入的微小擾動并不敏感。而現(xiàn)有的深度學(xué)習(xí)模型通常對這些細(xì)微變化非常敏感,例如將同一個(gè)句子的轉(zhuǎn)述輸入到文本分類模型中,模型的輸出隨即改變,這側(cè)面反映了深度模型的脆弱性。對抗性攻擊相關(guān)研究致力于通過設(shè)計(jì)對抗性樣本來攻擊模型,以揭示模型在哪些語言方面是脆弱的。
盡管現(xiàn)在的大型預(yù)訓(xùn)練語言模型在多個(gè)下游任務(wù)上都取得了成功,但是一些研究工作[61-62]表明它們對對抗性樣例依舊非常敏感。Alzantot等[63]提出基于遺傳算法的對抗性攻擊方法,使用基于黑盒群體的優(yōu)化算法來生成語義和句法相似的對抗性示例。Ebrahimi等[64]提出HotFlip方法,即基于梯度的字翻轉(zhuǎn)對抗性攻擊,通過采用字符級別的增刪改操作來實(shí)現(xiàn)對字符級別文本分類器的對抗性攻擊。Mudrakarta等[65]提出基于綜合梯度的對抗性攻擊方法,研究對象為視覺問答模型,發(fā)現(xiàn)所有網(wǎng)絡(luò)都忽略了問題中最重要的部分,可以通過改進(jìn)訓(xùn)練數(shù)據(jù)或引入歸納偏差來解決此問題。此外,Wallace等[66]針對BERT、GPT等大型預(yù)訓(xùn)練語言模型設(shè)計(jì)了模型通用的對抗性觸發(fā)器—— 一個(gè)與單詞無關(guān)的輸入句子,當(dāng)與數(shù)據(jù)集中的任何輸入連接時(shí),這些序列會觸發(fā)模型以產(chǎn)生特定的預(yù)測,且這些預(yù)測是不可控的。圖6為通用對抗性觸發(fā)器示例。
圖6 通用對抗性觸發(fā)器Fig.6 Universal adversarial triggers
神經(jīng)元級別的解釋方法更為細(xì)粒度,主要分析大型神經(jīng)網(wǎng)絡(luò)模型內(nèi)部的神經(jīng)元和神經(jīng)元組。一種簡單的方法是可視化不同神經(jīng)元的激活值[67-68]。然而,對于大型預(yù)訓(xùn)練語言模型來說,單個(gè)模型內(nèi)部就有數(shù)以億計(jì)的神經(jīng)元,要可視化全部神經(jīng)元是非常難的。Li等[68]通過設(shè)計(jì)相應(yīng)規(guī)則來篩選出最重要的神經(jīng)元,而忽略沒有活性的神經(jīng)元。此外,Valipour等[69]通過神經(jīng)元探測任務(wù)來實(shí)現(xiàn)神經(jīng)元級別的解釋。例如,給定一個(gè)概念的監(jiān)督數(shù)據(jù)集(比如名詞),神經(jīng)元探測會訓(xùn)練一個(gè)事后分類器來識別模型中與名詞相關(guān)的那些神經(jīng)元。
神經(jīng)網(wǎng)絡(luò)以及大型預(yù)訓(xùn)練語言模型的分析與解釋已成為自然語言處理領(lǐng)域研究的熱門課題。本文試圖回顧并總結(jié)盡可能多的當(dāng)前研究,同時(shí)圍繞幾個(gè)突出的主題進(jìn)行組織。 盡管現(xiàn)有的方法能在一定程度上幫助研究者解釋模型的行為,但是仍然存在一些局限性。
由于缺少統(tǒng)一的定量評估指標(biāo),導(dǎo)致大多數(shù)的可解釋方法主要依賴定性評價(jià)。統(tǒng)一的評價(jià)指標(biāo)有助于研究者對不同可解釋方法進(jìn)行定量比較,從而對不同方法的優(yōu)缺點(diǎn)能有更清晰的認(rèn)識。為了達(dá)到這一目標(biāo),需要對現(xiàn)有的理論方法進(jìn)行更完備的數(shù)學(xué)建模,并用精確的數(shù)學(xué)語言進(jìn)行描述,來指引研究者定義明確的定量評估指標(biāo)。
可解釋性方法的魯棒性和可信賴性對實(shí)際應(yīng)用也有重要意義??山忉屝苑椒ㄐ枰獙斎搿⒛P徒Y(jié)構(gòu)、訓(xùn)練方式等因素較為魯棒。在面對細(xì)微的輸入擾動情況下,需要產(chǎn)生一致的解釋輸出。其次,現(xiàn)有大多數(shù)可解釋性方法與特定模型耦合,對模型結(jié)構(gòu)的遷移能力不強(qiáng)。未來研究工作需要更多地考慮模型無關(guān)的通用可解釋性方法,以拓寬適用范圍。除了魯棒性,在現(xiàn)有解釋的基礎(chǔ)上,可以對模型解釋的可信賴性進(jìn)行打分?;诳尚刨囆栽u估, 可以幫助用戶更好地理解模型預(yù)測和解釋。
解釋模型內(nèi)部的高維信息交互也是當(dāng)下的研究難點(diǎn)。通常模型的決策是多個(gè)輸入特征互相作用的結(jié)果,如何定量地分析它們的高維交互對理解模型預(yù)測十分重要。但由于高維特征的組合爆炸問題,往往需要面對計(jì)算效率低下的問題。所以如何高效處理高階的特征交互,目前還是一個(gè)開放性問題。此外,因?yàn)楦唠A交互自身的復(fù)雜性,如何對此類的解釋輸出進(jìn)行評估、可視化、驗(yàn)證,也值得進(jìn)一步研究。
可解釋性方法最終是為了幫助人類對模型預(yù)測進(jìn)行理解,如何更好地將可解釋性輸出呈現(xiàn)給用戶,就成為一個(gè)重要課題?,F(xiàn)有解釋方法往往使用較為抽象的呈現(xiàn)方式,需要人工進(jìn)行二次加工才能對模型預(yù)測有直觀理解。這需要人機(jī)交互領(lǐng)域有更深入的參與來構(gòu)建面向終端用戶的可視化交互界面。此外,將模型解釋轉(zhuǎn)換為自然語言輸出,也可以輔助用戶更自然地對結(jié)果進(jìn)行理解。
如何基于可解釋性方法的輸出對原有模型進(jìn)行改進(jìn),也是一個(gè)極有意義的研究方向。通過構(gòu)建合理的調(diào)試數(shù)據(jù)集,開發(fā)者能對模型的預(yù)測特性有更全面的理解?;诎l(fā)現(xiàn)的缺點(diǎn),可以對模型結(jié)構(gòu)作進(jìn)一步修改,或是擴(kuò)充訓(xùn)練數(shù)據(jù)集來對模型偏差進(jìn)行修正。此外,用戶通過對模型解釋輸出進(jìn)行標(biāo)注,也可以對模型進(jìn)行更細(xì)粒度的引導(dǎo),使模型的內(nèi)在機(jī)制更符合人類認(rèn)知,從而提升模型的泛化性能。
此外,隨著預(yù)訓(xùn)練模型規(guī)模的不斷擴(kuò)大,模型推理所需的時(shí)間和內(nèi)存相應(yīng)增大,這使可解釋性方法的運(yùn)行成本也大幅提高。如何構(gòu)建高效、低成本的可解釋性模型具有十分重要的價(jià)值。可以將可解釋性方法和模型壓縮相結(jié)合,在模型蒸餾后得到的學(xué)生模型上進(jìn)行可解釋性建模,從而近似原有大模型預(yù)測。
本文綜述有關(guān)預(yù)訓(xùn)練語言模型的可解釋性研究,列舉了當(dāng)下的研究熱點(diǎn)方向并對其進(jìn)行分類,回顧了宏觀角度和微觀角度的可解釋性研究工作,包括注意力機(jī)制、顯著性圖和信息交互等方面。設(shè)計(jì)有效的解釋方法不僅有助于人類理解模型,降低模型的不可控性,還有助于發(fā)現(xiàn)模型的不足之處以指導(dǎo)未來對模型的改進(jìn)工作。