傳統的自然語言處理方法具有可解釋性,這些自然語言處理方法包括基于規則的方法、決策樹模型、隱馬爾可夫模型、邏輯回歸等,也被稱為白盒技術。近年來,以語言嵌入作為特征的深度學習模型(黑盒技術)不斷涌現,雖然這些方法在許多情況下顯著提高了模型的性能,但在另一方面這些方法使模型變得難以解釋。用戶難以了解數據經過怎樣的過程得到所期望的結果,進而產生許多問題,比如削弱了用戶與系統之間的交互(如聊天機器人、推薦系統等)。機器學習社區對可解釋性重要程度的認識日益增強,并創造了一個新興的領域,稱為可解釋人工智能(XAI)。而關于可解釋性有多種定義,大部分相關文章的論證也因此有所差異。這里我們關注的是可解釋人工智能給用戶提供關于模型如何得出結果的可解釋,也稱為結果解釋問題(outcome explanation problem)[1]。在可解釋人工智能中,解釋可以幫助用戶建立對基于NLP的人工智能系統的信任。本文依據前人的綜述[2]討論了可解釋的分類方式,介紹了能夠給出可解釋的技術及其具體操作,并簡要地描述了每一種技術及其代表性論文。
摘要: 建模方法的可解釋性指其以可理解的方式表達實際系統行為的能力. 隨著實踐中對可靠性需求的不斷提高, 建立出可靠且可解釋的模型以增強人對實際系統的認知成為了建模的重要目標. 基于規則的建模方法可更直觀地描述系統機理, 并能有效融合定量信息和定性知識實現不確定信息的靈活處理, 具有較強的建模性能. 本文從基于規則的建模方法出發, 圍繞知識庫、推理機和模型優化梳理了其在可解釋性方面的研究, 最后進行了簡要的評述和展望.
深度神經網絡一直在推動自然語言處理領域的發展,被認為是解決機器翻譯、摘要和問答等復雜自然語言處理任務的事實建模方法。盡管深度神經網絡的有效性得到了證實,但它們的不透明性是引起關注的主要原因。
在本教程中,我們將從兩個角度介紹解釋神經網絡模型的細粒度組件的研究工作,一是內在分析,二是因果性分析。前者是一種方法來分析神經元關于一個理想的語言概念或任務。后者研究神經元和輸入特征在解釋模型決策中的作用。我們還將討論解釋方法和因果分析如何能夠更好地解釋模型預測。最后,我們將帶您瀏覽各種工具包,這些工具包有助于細粒度解釋和神經模型的原因分析。
近年來,機器學習發展迅速,尤其是深度學習在圖像、聲音、自然語言處理等領域取得卓越成效.機器學習算法的表示能力大幅度提高,但是伴隨著模型復雜度的增加,機器學習算法的可解釋性越差,至今,機器學習的可解釋性依舊是個難題.通過算法訓練出的模型被看作成黑盒子,嚴重阻礙了機器學習在某些特定領域的使用,譬如醫學、金融等領域. 目前針對機器學習的可解釋性綜述性的工作極少,因此,將現有的可解釋方法進行歸類描述和分析比較,一方面對可解釋性的定義、度量進行闡述,另一方面針對可解釋對象的不同,從模型的解釋、預測結果的解釋和模仿者模型的解釋3個方面,總結和分析各種機器學習可解釋技術,并討論了機器學習可解釋方法面臨的挑戰和機遇以及未來的可能發展方向.
我們給出了一個關于調查透明度和可解釋性的前沿教程,因為它們與NLP有關。研究團體和業界都在開發新的技術,以使黑箱型NLP模型更加透明和可解釋。來自社會科學、人機交互(HCI)和NLP研究人員的跨學科團隊的報告,我們的教程有兩個組成部分:對可解釋的人工智能(XAI)的介紹和對NLP中可解釋性研究的最新回顧; 研究結果來自一個大型跨國技術和咨詢公司在現實世界中從事NLP項目的個人的定性訪談研究。第一部分將介紹NLP中與可解釋性相關的核心概念。然后,我們將討論NLP任務的可解釋性,并對AI、NLP和HCI會議上的最新文獻進行系統的文獻綜述。第二部分報告了我們的定性訪談研究,該研究確定了包括NLP在內的現實世界開發項目中出現的實際挑戰和擔憂。
自然語言處理中可解釋AI的現狀調研
近年來,最領先的模型在性能上取得了重要的進步,但這是以模型變得越來越難以解釋為代價的。本調研提出了可解釋AI (XAI)的當前狀態的概述,在自然語言處理(NLP)領域內考慮。我們討論解釋的主要分類,以及解釋可以達到和可視化的各種方式。我們詳細介紹了目前可用來為NLP模型預測生成解釋的操作和可解釋性技術,以作為社區中模型開發人員的資源。最后,我們指出了在這個重要的研究領域目前的挑戰和未來可能工作方向。
本文主要基于2020 EMNLP Workshop上的一篇綜述文章,介紹了NLP可解釋領域的重大爭議——注意力機制是否能作為解釋?而什么方法才是真正符合解釋邏輯的?
原論文鏈接://arxiv.org/abs/2010.05607
The elephant in the interpretability room: Why use attention as explanation when we have saliency methods?
本文目錄 0. 引言:問題描述 1.注意力方法:是否構成可解釋?
可解釋人工智能(xAI)是近年來出現的一個有趣的問題。許多研究人員正試圖從不同的角度和有趣的結果來處理這個問題。然而,我們在理解這些類型的模型方面仍處于起步階段。在未來的幾年里,深度學習模型的開放性將被討論。在經典的人工智能方法中,我們經常遇到深度學習方法。這些深度學習方法可以根據數據集大小、數據集質量、用于特征提取的方法、用于深度學習模型的超參數集、激活函數和優化算法得出高效的結果。然而,目前的深度學習模型還存在一些重要的不足。這些基于人工神經網絡的模型是黑盒模型,它概括傳輸給它的數據并從數據中學習。因此,輸入和輸出之間的關系是不可觀察的。這是人工神經網絡和深度學習模型的一個重要開放點。由于這些原因,有必要認真研究黑盒模型的可解釋性和可解釋性。
摘要
自然語言處理(NLP)是人工智能的一個子領域,其重點是使計算機能夠理解和處理人類語言。在過去的五年里,我們見證了NLP在機器翻譯、問答和基于深度學習的機器閱讀理解等任務上的快速發展,以及海量的帶注釋和未帶注釋的數據。本文將從建模、學習和推理三個方面綜述基于神經網絡的神經語言處理框架(neural NLP)的最新進展。在建模部分,我們將描述幾種基本的基于神經網絡的建模范例,如單詞嵌入、句子嵌入和序列到序列的建模,這些在現代NLP引擎中被廣泛使用。在學習部分,我們將介紹廣泛使用的NLP模型的學習方法,包括監督學習、半監督學習和無監督學習;多任務學習;遷移學習;和主動學習。我們認為推理是神經NLP的一個新的和令人興奮的方向,但它還沒有被很好地解決。在推理部分,我們將回顧推理機制,包括知識,現有的非神經推理方法,和新的神經推理方法。我們在本文中強調推理的重要性,因為它對于建立可解釋的和知識驅動的神經網絡規劃模型來處理復雜的任務是很重要的。在本文的最后,我們將簡要概述我們對神經語言處理的未來發展方向的思考。
介紹
自然語言處理(Natural Language Processing, NLP)是人工智能(AI)的一個重要分支,通過自然語言研究人與計算機之間的交互。它研究單詞、短語、句子和文檔的意義表達的基礎技術,以及句法和語義處理(如斷句、句法分析器和語義解析)的基礎技術,并開發諸如機器翻譯(MT)、問答(QA)、信息檢索、對話、文本生成和推薦系統等應用程序。NLP對于搜索引擎、客戶支持系統、商業智能和語音助手至關重要。
NLP的歷史可以追溯到20世紀50年代。在NLP研究之初,我們使用基于規則的方法來構建NLP系統,包括單詞/句子分析、QA和MT。這些由專家編輯的規則被用于從MT開始的各種NLP任務的算法中。通常,設計規則需要大量的人力。此外,當規則數量很大時,很難組織和管理規則。20世紀90年代,隨著互聯網的快速發展,出現了大量的數據,這使得統計學習方法可以用于處理NLP任務。使用人工設計的特征,統計學習模型通過使用標記/挖掘數據學習。統計學習方法為許多自然語言處理任務,特別是MT和搜索引擎技術帶來了顯著的改進。2012年,隨著深度學習在ImageNet[1]對象識別和Switchboard[2]語音識別方面的成功,深度學習方法被引入到NLP中。深度學習方法比統計學習方法快得多,結果好得驚人。目前,基于神經網絡的神經語言處理(以下簡稱神經語言處理)框架已經達到了新的質量水平,并且已經成為處理神經語言處理任務的主要方法,例如MT、機器閱讀理解(MRC)、聊天機器人等等。例如,微軟的Bible系統在2017年MT研討會的中英新聞翻譯任務中就取得了能和人媲美的結果。微軟亞洲研究院(MSRA)的R-NET和NLNet在斯坦福問題回答數據集(小組)評估任務中,在精確匹配(EM)得分和模糊匹配(F1)得分上都取得了人機質量結果。最近,生成式預訓練(GPT)[3]、來自 Transformers的雙向編碼器表示(BERT)[4]和XLNet[5]等預訓練模型在多個NLP任務中顯示了強大的能力。神經NLP框架在有大量標記數據用于學習神經模型的監督任務中工作得很好,但在資源有限或沒有標記數據的低資源任務中仍然表現不佳。
建模
NLP系統使用自然語言句子并生成一個類類型(用于分類任務)、一個標簽序列(用于序列標記任務)或另一個句子(用于QA、對話、自然語言生成和MT)。要應用神經語言處理方法,需要解決以下兩個關鍵問題: (1)在神經網絡中對自然語言句子(詞的序列)進行編碼。 (2)生成一個標簽序列或另一個自然語言句子。 從這兩個方面,本節將介紹幾種常用的神經網絡語言處理模型,包括字嵌入、句子嵌入和序列到序列的建模。單詞嵌入將輸入句子中的單詞映射成連續的空間向量。 基于“嵌入”這個詞,復雜網絡如遞歸神經網絡(RNNs)卷積神經網絡(CNNs)和自注意力網絡可以用于特征提取,考慮到整個句子的上下文信息構建嵌入環境敏感詞,句子的或集成所有的信息來構造句子嵌入。上下文感知詞嵌入可用于序列標記任務,如詞性標記(POS)和命名實體識別(NER),句子嵌入可用于句子級任務,如情緒分析和意譯分類。句子嵌入也可以作為另一個RNN或自注意網絡的輸入,生成另一個序列,形成序列-序列建模的編解碼框架。給定一個輸入句子,序列到序列的建模可以用來生成一個問題的答案(即問答任務)或翻譯成另一種語言(即機器翻譯任務)。
學習
目前已經提出了新的和有效的訓練算法,以優化大量的參數在深度學習模型。在訓練神經網絡時,常用的方法是隨機梯度下降(SGD)[18],它通常是基于[19]的反向傳播方法。基于動量的SGD被提出是為了引入動量來加速訓練過程。AdaGrad [20], AdaDelta [21], Adam [22], RMSProp方法嘗試對不同的參數使用不同的學習比率,這進一步提高了效率,穩定了訓練過程。當模型非常復雜時,并行訓練方法被用來利用許多計算設備,甚至數百或數千臺(中央處理單元、圖形處理單元或現場可編程門陣列)。根據參數是否同步更新,分布式訓練方法可以分為同步SGD和異步SGD。 除了一般的優化方法已經取得的進展外,針對特定的NLP任務提出了更好的訓練方法。當大量的訓練數據可用于資源豐富的任務時,使用監督學習方法,深度學習模型可以取得很好的性能。對于一些特定的任務,如具有大量并行數據的語言對(如英語和漢語)的MT,神經模型可以很好地完成,有時在共享任務中實現人的平等。然而,在許多NLP任務中,很難獲得大量的標記數據。這類任務通常被稱為低資源任務,包括對稀有語言的情緒分析MT。利用未標記數據對少量標記數據訓練的模型進行增強,可以采用半監督學習方法。在沒有任何標記數據的情況下,可以利用無監督學習方法來學習NLP模型。利用未標記數據的另一種方法是對模型進行預訓練,通過遷移學習將這些模型轉移到特定的任務中。除了利用任務內標記的數據,其他任務的標記數據也可以在多任務學習的幫助下使用。如果沒有可用的數據,可以引入人力資源來使用主動學習創建學習數據,以便在給定的預算下最大化模型的性能。
推理
神經方法在許多NLP任務中取得了良好的進展,如MT和MRC。然而,他們仍然有一些未解決的問題。例如,大多數神經網絡模型的行為就像一個黑盒子,它從來沒有告訴我們一個系統是如何以及為什么會以這種方式解決了一個問題。此外,對于QA和對話系統這樣的任務,僅僅了解輸入話語的字面意義往往是不夠的。為了生成正確的響應,可能還需要外部和/或上下文知識。為了建立這種可解釋的和知識驅動的系統,推理是必要的。在本文中,我們將推理定義為一種機制,它可以通過使用推理技術操作現有知識來生成未見問題的答案。根據這一定義,推理系統(圖11)應該包括兩個部分:
知識,如知識圖、常識、規則、從原始文本中提取的斷言等;
一個推理引擎,通過操作現有的知識來生成問題的答案。
接下來,我們用兩個例子來說明為什么推理對于NLP任務是重要的。
第一個例子是基于知識的QA任務。“比爾·蓋茨的妻子是什么時候出生的?”, QA模型必須將其解析為生成答案的邏輯形式:
其中需要基于知識圖譜的推理從這個問題開始,可以附加新的問題,例如:“他/她的工作是什么?”,為了回答這種上下文感知的問題,共指解析決定了他/她指的是誰。這也是一個推理的過程,需要一個常識,他只能指男人,她只能指女人。
第二個例子是一個對話任務。例如,如果一個用戶說我現在很餓,更合適的回答應該是:讓我向您推薦一些不錯的餐館,而不是讓我推薦一些好電影給你。這也需要推理,因為對話系統應該知道饑餓會導致尋找餐館而不是看電影的行為。在本節的剩余部分中,我們將首先介紹兩種類型的知識:知識圖譜和常識。接下來,我們將描述典型的推理方法,這些方法在自然語言處理領域已經或正在研究。
隨著機器學習模型越來越多地用于在醫療保健和刑事司法等高風險環境中幫助決策者,確保決策者(最終用戶)正確理解并信任這些模型的功能非常重要。我們將回顧了解模型的可解釋性和explainability的概念,詳細討論不同類型的可說明的模型(例如,基于原型方法,稀疏線性模型、基于規則的技術,廣義可加模型),事后解釋(黑箱解釋,包括反事實解釋和顯著性映射),并探索可解釋性與因果性、調試和公平性之間的聯系。可解釋機器學習這些應用可以極大地受益于模型的可解釋性,包括刑事司法和醫療保健。
【導讀】人工智能領域的國際頂級會議 AAAI 2019 即將于 1 月 27 日至 2 月 1 日在美國夏威夷舉行。AAAI2019第一天的關于可解釋人工智能的Tutorial引起了人們極大的關注,這場Tutorial詳細闡述了解釋黑盒機器學習模型的術語概念以及相關方法,是構建可解釋模型的重要指南.
AI系統--我如何信任它們?
在現實生活中,每一個決策,無論是由機器還是低級員工又或是首席執行官做出的,為了達到提高整體的業務水平的目的,都要通過定期的審查,來解釋他們的決定。這就產生了人工智能的新興分支,稱為“可解釋的人工智能”(XAI)。
什么是可解釋的AI(XAI)?
XAI是人工智能的一個新興分支,用于解釋人工智能所做出的每一個決策背后的邏輯。下圖是對一個完整AI決策流程的簡單描述。
AAAI 2019 tutorial: 可解釋AI –從理論到動機,應用和局限性
一、本教程希望為以下問題提供答案:
什么是可解釋的AI (XAI)?
什么是可解釋的AI(簡稱XAI),即人工智能社區的各種流程 (Machine Learning, Logics, Constraint Programming, Diagnostics)的解釋是什么?解釋的度量標準是什么?
我們為什么要在意?
為什么可解釋的人工智能很重要?甚至在某些應用中至關重要?解釋人工智能系統的動機是什么?
它在哪里至關重要?
在現實世界中,哪些應用程序需要解釋如何大規模部署AI系統?
它是如何工作的?
在計算機視覺和自然語言處理中,最前沿的解釋技術是什么?對于哪種數據格式、用例、應用程序、行業,哪些方法效果好,哪些方法效果不好?
我們學到了什么?
部署現有可解釋AI系統的經驗教訓和局限性是什么?在向人類解釋的過程中學到了什么?
接下來的發展是什么?
可解釋AI未來的發展方向是什么?
二、概述
人工智能的未來在于使人們能夠與機器協作解決復雜的問題。與任何有效的協作一樣,這需要良好的溝通,信任,清晰和理解。 可解釋AI(XAI,eXplainable AI)旨在通過將符號人工智能與傳統機器學習的最佳結合來應對這些挑戰。多年來,人工智能的各個不同社區都在研究這一主題,它們有著不同的定義、評估指標、動機和結果。本教程簡要介紹了可解釋AI到目前為止的工作,并調研了人工智能社區在機器學習和符號人工智能相關方法方面所完成的工作。
在本教程的第一部分中,我們將介紹AI解釋的不同方面。然后我們將本教程的重點放在兩個具體的方法上:(i)使用機器學習的可解釋AI和(ii)使用基于圖(graph)的知識表示和機器學習結合的可解釋AI。對于這兩者,我們深入探討了該方法的具體細節,現有技術以及后續步驟的研究挑戰。本教程的最后一部分概述了可解釋AI的實際應用。
三、大綱
【介紹】
人工智能解釋的廣泛介紹。這將包括從理論和應用的角度描述和激發對可解釋AI技術的需求。在這一部分中,我們還總結了先決條件,并介紹了本教程其余部分所采用的不同視角。
【可解釋AI】
人工智能的各個領域(優化,知識表示和推理,機器學習,搜索和約束優化,規劃,自然語言處理,機器人和視覺)的解釋概述,使每個人對解釋的不同定義保持一致。本教程將涵蓋大多數定義,但只會深入以下領域:(i)可解釋的機器學習,(ii)具有知識圖和ML的可解釋AI。
【可解釋機器學習】
在本節中,我們將解決可解釋的機器學習pipeline的廣泛問題。我們描述了機器學習社區中可解釋性的概念,并通過描述一些流行的可解釋性模型來繼續。本節的核心是對不同類別的黑箱問題進行分析,從黑箱模型講解到黑箱結果講解,最后是黑箱檢查。
【用知識圖譜和ML解釋AI】
在本教程的這一部分中,我們將從兩個不同的角度闡述基于圖的知識庫的解釋力:
用語義網和邏輯解釋AI
我們展示了支持語義web的模式豐富的、基于圖的知識表示范式是如何實現有效解釋的。本節還將重點介紹從大型異構知識庫中表示和推斷有效解釋的邏輯和推理方法。
基于知識圖譜的機器學習
在本節中,我們將重點討論知識圖嵌入模型,即將知識圖中的概念編碼為連續低維向量的神經架構。這些模型已經被證明對許多機器學習任務有效,特別是知識庫的完成。我們解釋了這些模型的基本原理和架構,并從它們的不可預測性以及如何增強第三方模型的可解釋性的角度對它們進行了考察。
【應用】
我們展示了應用解釋技術的真實示例。我們關注一些使用案例:i)具有內置解釋功能的可解釋的航班延誤預測系統; ii)基于知識圖的語義推理,預測和解釋企業項目風險層次的大范圍合同管理系統;iii) 500多個城市的大型組織員工異常報銷的識別、解釋和預測的費用體系。
Tutorial的講者
PPT下載鏈接://pan.baidu.com/s/1dyjGJyhqS3-E77DysIkgHQ 提取碼:aq79