傳統(tǒng)的自然語言處理方法具有可解釋性,這些自然語言處理方法包括基于規(guī)則的方法、決策樹模型、隱馬爾可夫模型、邏輯回歸等,也被稱為白盒技術(shù)。近年來,以語言嵌入作為特征的深度學(xué)習(xí)模型(黑盒技術(shù))不斷涌現(xiàn),雖然這些方法在許多情況下顯著提高了模型的性能,但在另一方面這些方法使模型變得難以解釋。用戶難以了解數(shù)據(jù)經(jīng)過怎樣的過程得到所期望的結(jié)果,進而產(chǎn)生許多問題,比如削弱了用戶與系統(tǒng)之間的交互(如聊天機器人、推薦系統(tǒng)等)。機器學(xué)習(xí)社區(qū)對可解釋性重要程度的認(rèn)識日益增強,并創(chuàng)造了一個新興的領(lǐng)域,稱為可解釋人工智能(XAI)。而關(guān)于可解釋性有多種定義,大部分相關(guān)文章的論證也因此有所差異。這里我們關(guān)注的是可解釋人工智能給用戶提供關(guān)于模型如何得出結(jié)果的可解釋,也稱為結(jié)果解釋問題(outcome explanation problem)[1]。在可解釋人工智能中,解釋可以幫助用戶建立對基于NLP的人工智能系統(tǒng)的信任。本文依據(jù)前人的綜述[2]討論了可解釋的分類方式,介紹了能夠給出可解釋的技術(shù)及其具體操作,并簡要地描述了每一種技術(shù)及其代表性論文。
解釋主要有兩種分類方式[1][3]。
局部解釋是模型對特定輸入的預(yù)測結(jié)果提供針對該預(yù)測結(jié)果的解釋,全局解釋是通過揭示模型預(yù)測的過程來解釋如何預(yù)測,與特定的輸入無關(guān)。
解釋的分類除了按局部解釋與全局解釋劃分,根據(jù)解釋是作為預(yù)測過程的一部分,還是需要利用預(yù)測結(jié)果進行后處理得到,還存在另外一種分類方式,即自解釋與事后解釋。自解釋方法,也可以稱為直接解釋(directly Interpretable)[4],利用在預(yù)測過程中產(chǎn)生的信息作為解釋,解釋與模型的預(yù)測結(jié)果同時產(chǎn)生。決策樹和基于規(guī)則的模型是全局自解釋模型,而注意力機制等顯著性特征方法是局部自解釋模型。事后解釋的方法是在給出預(yù)測結(jié)果后需要執(zhí)行額外的操作,LIME[5]使用簡單的模型對復(fù)雜的模型進行解釋,這里簡單的模型是復(fù)雜的模型給出預(yù)測結(jié)果后的額外操作,該方法是局部事后解釋的一個例子。
表1 解釋的分類
主要調(diào)研五種采用不同的機制給用戶提供解釋的可解釋性技術(shù)。
其主要思想是通過研究不同特征對最終預(yù)測結(jié)果的影響程度來得出解釋。這些方法可以建立在不同類型的特征上,例如利用特征工程(feature engineering)[6]手動提取特征、word/token和n-gram等詞法特征[7][8],或神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)到的潛在特征[9]。注意力機制[10]和一階導(dǎo)數(shù)顯著性(first-derivative saliency)[11]是兩個廣泛使用的能夠?qū)崿F(xiàn)基于特征重要性的可解釋技術(shù)?;谖谋镜奶卣鞅举|(zhì)上比一般特征更容易被人類解釋,這也是為什么基于注意力機制的方法在NLP領(lǐng)域廣泛使用。
模型預(yù)測可以通過學(xué)習(xí)另一個具有可解釋能力的模型作為代理來進行解釋。一個非常典型的例子是LIME[5],它使用被稱為輸入擾動(input perturbation)的操作來學(xué)習(xí)一個效果相近的替代模型?;谔娲P偷姆椒ㄊ悄P蜔o關(guān)的(model-agnostic),可用于實現(xiàn)局部[12]或全局[13]解釋。然而,學(xué)習(xí)到的替代模型和原始模型可能有完全不同的機制來進行預(yù)測,這導(dǎo)致了人們對基于替代模型的方法是否忠于原模型持懷疑的態(tài)度。
這種方法通過識別和呈現(xiàn)其他與輸入實例語義相似的已標(biāo)注實例來解釋輸入實例的預(yù)測。它們在思想上類似于基于最近鄰的方法[14],并已應(yīng)用于不同的NLP任務(wù),如文本分類[15]和問答[16]。
通過展示部分或全部的預(yù)測推導(dǎo)過程,當(dāng)最終的預(yù)測是一系列推理步驟的結(jié)果時,這是一種直觀而有效的可解釋性技術(shù)。在問答領(lǐng)域有很多工作采用了這種可解釋方法[16][17][18]。
在設(shè)計過程中直接使用人類可讀、可理解的表示,如規(guī)則[19]、樹結(jié)構(gòu)[6]和程序(program)[20]直接作為解釋。
導(dǎo)數(shù)的大小(絕對值)表明了最終結(jié)果對一個特定維度的變化的敏感性,即該詞的一個特定維度對最終決定的貢獻(xiàn)程度。顯著性的分?jǐn)?shù)是由下面的公式所給出:
這三種模型中'hate'都具最高的顯著性分?jǐn)?shù),并削弱了其他token的影響。LSTM比標(biāo)準(zhǔn)的循環(huán)模型更清晰地關(guān)注'hate',雙向LSTM的效果最為明顯,除了'hate'之外的單詞,其他單詞幾乎沒有影響。這可能是由于LSTMs和Bi-LSTMs中的門結(jié)構(gòu)機制控制了信息流,使得這些架構(gòu)能夠更好地過濾掉不太相關(guān)的信息。此外一階導(dǎo)數(shù)顯著性常用于神經(jīng)網(wǎng)絡(luò)模型,因為可以通過單獨調(diào)用深度學(xué)習(xí)引擎提供的自動求導(dǎo)來計算得到。最近的工作還提出了對一階導(dǎo)數(shù)顯著性的改進[21]。如其名稱和定義所述,一階導(dǎo)數(shù)顯著性可以實現(xiàn)特征重要性的可解釋,特別是在token-level的特征。
以LIME[5]模型舉例,輸入擾動可以通過生成輸入x的隨機擾動并訓(xùn)練一個可解釋的模型(通常是一個線性模型)來解釋輸入x的輸出。LIME 的主要思想是,通過訓(xùn)練一個模擬原模型但更簡單的模型來解釋原模型是如何做出預(yù)測的。因此,可以利用更簡單的模型(也稱為替代模型)來解釋原始模型的預(yù)測。此方法不涉及模型內(nèi)部,而是通過對輸入進行大量且輕微的擾動(例如刪除不同的單詞),觀察黑盒模型的輸出所發(fā)生的變化,然后根據(jù)這些輸入輸出訓(xùn)練簡單且可解釋的模型。由于替代模型是一個簡單的線性分類器,通過給每個單詞分配一個權(quán)重來進行預(yù)測,因此我們可以看到分配給每個單詞的權(quán)重來了解每個單詞如何影響最終預(yù)測。最終得到的效果如下圖所示:
正如舉例的LIME一樣,這類操作常用于替代模型[5]12]。
Attention機制[10]是自然語言處理領(lǐng)域最常采用的可解釋方法之一,其能在一系列任務(wù)上對模型性能產(chǎn)生顯著的提升,尤其是基于循環(huán)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的seq-to-seq模型。Attention機制模擬了人類理解語言時會集中注意到一些關(guān)鍵詞的行為,實現(xiàn)的方式是權(quán)重分配。同時,前人將Attention層引入神經(jīng)網(wǎng)絡(luò)來實現(xiàn)特征重要性的可解釋方法[8][9]。但是人們對其能做到哪種程度是不了解的。'Attention!注意力機制可解釋嗎?'這篇筆記里詳細(xì)討論了attention的可解釋性(點擊下方'閱讀原文'可查看文章內(nèi)容)。
該方法通過模仿人類解決問題的過程設(shè)計神經(jīng)網(wǎng)絡(luò)架構(gòu),由于該架構(gòu)包含模擬人類認(rèn)知的組件,使得學(xué)習(xí)到的模型(部分)可解釋。實現(xiàn)這樣的模型架構(gòu)可用于解決數(shù)學(xué)問題MathQA[18][20]或句子簡化問題[24]。這種設(shè)計也可以應(yīng)用于可解釋的替代模型。以MathQA為例,在數(shù)學(xué)考試中,答題者經(jīng)常被要求逐步給出答案是如何推導(dǎo)得到的,如果缺少推導(dǎo)中的任何關(guān)鍵步驟,那么答題者很大可能不能得到滿分。MathQA模型利用可解釋的結(jié)構(gòu)設(shè)計試圖重現(xiàn)這一推導(dǎo)過程。MathQA是一個大型英語多項選擇數(shù)學(xué)問題的數(shù)據(jù)集,訓(xùn)練數(shù)據(jù)通過眾包的方式進行標(biāo)記。對于一個問題,參與標(biāo)記者會被要求循環(huán)執(zhí)行下面的步驟:首先選出一個操作(加、減、乘、除、平方等),然后從問題題干中或之前操作的計算結(jié)果中標(biāo)記這個方法所需要的參數(shù),直到獲得的操作集合能夠共同作用得出答案。在實際訓(xùn)練中希望獲得的是一個encoder-decoder的結(jié)構(gòu),將輸入的問題題干看作是編碼后的數(shù)據(jù),而目的是將其解碼為一個以各種操作為元素的序列。通過這一序列,可以清楚的認(rèn)識到整個求解過程。實例效果如下:
本文討論了解釋的主要分類(局部解釋與全局解釋、自解釋與事后解釋),實現(xiàn)可解釋的常用技術(shù)以及這些可解釋技術(shù)的具體操作。除此以外,還有其他的可解釋性操作,例如利用強化學(xué)習(xí)來進行簡單否定規(guī)則的學(xué)習(xí)等[19]??山忉屝匀斯ぶ悄苋匀淮嬖谠S多問題亟待解決,諸如對該領(lǐng)域相關(guān)概念更清晰的定義、可解釋性更明確的理解,以及如何與目標(biāo)建立聯(lián)系等。未來期待更多的工作來完善該領(lǐng)域,促進用戶與人工智能之間的交互。
Guidotti R, Monreale A, Ruggieri S, et al. A Survey of Methods for Explaining Black Box Models[J]. ACM Comput. Surv., New York, NY, USA: Association for Computing Machinery, 2018, 51(5).
[2]Danilevsky M, Qian K, Aharonov R, et al. A Survey of the State of Explainable AI for Natural Language Processing[J]. 2020(Section 5).
[3]Tjoa E, Guan C. A Survey on Explainable Artificial Intelligence (XAI): Toward Medical XAI[J]. IEEE Transactions on Neural Networks and Learning Systems, 2020: 1–21.
[4]Arya V, Bellamy R K E, Chen P-Y,et al. One Explanation Does Not Fit All: A Toolkit and Taxonomy of AI Explainability Techniques[J]. 2019.
[5]Ribeiro M T, Singh S, Guestrin C. 《 Why should i trust you?》 Explaining the predictions of any classifier[A]. Proceedings of the 22nd ACM SIGKDD international conference on knowledge discovery and data mining[C]. 2016: 1135–1144.
[6]Voskarides N, Meij E, Tsagkias M, et al. Learning to explain entity relationships in knowledge graphs[J]. ACL-IJCNLP 2015 - 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing of the Asian Federation of Natural Language Processing, Proceedings of the Conference, 2015, 1: 564–574.
[7]Godin F, Demuynck K, Dambre J, et al. Explaining Character-Aware Neural Networks for Word-Level Prediction: Do They Discover Linguistic Rules?[J]. 2018.
[8]Mullenbach J, Wiegreffe S, Duke J, et al. Explainable Prediction of Medical Codes from Clinical Text[J]. 2018.
[9]Xie Q, Ma X, Dai Z, et al. An Interpretable Knowledge Transfer Model for Knowledge Base Completion[J]. 2017.
[10]Bahdanau D, Cho K H, Bengio Y. Neural machine translation by jointly learning to align and translate[A]. 3rd International Conference on Learning Representations, ICLR 2015[C]. 2015.
[11]Li J, Chen X, Hovy E H, et al. Visualizing and Understanding Neural Models in NLP[A]. HLT-NAACL[C]. 2016.
[12]Alvarez-Melis D, Jaakkola T. A causal framework for explaining the predictions of black-box sequence-to-sequence models[A]. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing[C]. 2017: 412–421.
[13]Liu N, Huang X, Li J, et al. On interpretation of network embedding via taxonomy induction[A]. Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining[C]. 2018: 1812–1820.
[14]Dudani S A. The distance-weighted k-nearest-neighbor rule[J]. IEEE Transactions on Systems, Man, and Cybernetics, IEEE, 1976(4): 325–327.
[15]Croce D, Rossini D, Basili R. Auditing deep learning processes through kernel-based explanatory models[A]. Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP)[C]. 2019: 4028–4037.
[16]Abujabal A, Roy R S, Yahya M, et al. Quint: Interpretable question answering over knowledge bases[A]. Proceedings of the 2017 Conference on Empirical Methods in Natural Language Processing: System Demonstrations[C]. 2017: 61–66.
[17]Zhou M, Huang M, Zhu X. An interpretable reasoning network for multi-relation question answering[J]. arXiv preprint arXiv:1801.04726, 2018.
[18]Amini A, Gabriel S, Lin S, et al. MathQA: Towards interpretable math word problem solving with operation-based formalisms[J]. arXiv, 2019: 2357–2367.
[19]Pr?llochs N, Feuerriegel S, Neumann D. Learning interpretable negation rules via weak supervision at document level: A reinforcement learning approach[A]. Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies[C]. Association for Computational Linguistics, 2019, 1: 407–413.
[20]Ling W, Yogatama D, Dyer C, et al. Program induction by rationale generation: Learning to solve and explain algebraic word problems[J]. arXiv preprint arXiv:1705.04146, 2017.
[21]Sundararajan M, Taly A, Yan Q. Axiomatic attribution for deep networks[A]. International Conference on Machine Learning[C]. PMLR, 2017: 3319–3328.
[22]Poerner N, Roth B, Schütze H. Evaluating neural network explanation methods using hybrid documents and morphological agreement[J]. arXiv e-prints, 2018: arXiv-1801.
[23]Croce D, Rossini D, Basili R. Explaining non-linear classifier decisions within kernel-based deep architectures[A]. Proceedings of the 2018 EMNLP Workshop BlackboxNLP: Analyzing and Interpreting Neural Networks for NLP[C]. 2018: 16–24.
[24]Dong Y, Li Z, Rezagholizadeh M, et al. EditNTS: An Neural Programmer-Interpreter Model for Sentence Simplification through Explicit Editing[A]. Proceedings of the 57th Annual Meeting of the Association for Computational Linguistics[C]. 2019: 3393–3402.
聯(lián)系客服