AI可解釋性主體

2021-10-23 21:59:32 字數 2474 閱讀 9423

可解釋性,就是我們需要完成一件事的時候,我們能獲取到的足夠多的,能讓我們自己理解的資訊。當我們不能獲得足夠多的資訊,來理解一件事情的時候,我們可以說這是不可解釋的。所以,解釋性的目的就是以人的思維來理解事物,讓人能懂。但是在深度學習模型中,建立模型的時候往往沒有考慮到它的可解釋性,特別是在深層網路中,我們不知道它是怎麼運作的,我們沒有足夠資訊來處理為何模型得出這樣的結果。所以我們認為深度學習的模型是乙個黑箱,我們知道它的結構,但是我們不知道它為何會產生這樣的結果。

如前所述,ai是乙個「黑箱」,我們並不知道是哪一部分輸入影響了它產生我們希望得到的結果。貝葉斯網路的製造者pearl說過:「幾乎所有的深度學習突破性的本質上來說都只是些曲線擬合罷了。」 特別是在監督學習中,我們需要訓練模型,接著驗證模型,再測試模型,接著進行不斷地優化,調參,在不發生過擬合的情況下讓模型盡可能地擬合資料。這個過程中,我們甚至不知道是哪個引數合適,只能根據經驗設定引數數值,然後像玩猜數字遊戲一樣,不斷接近那個最佳值。我們調整它們的唯一依據,就是輸出結果,訓練了幾天幾個月的模型可能因為調參,又需要重新開始訓練。這是極度浪費時間和精力的,特別是在需要進行快速商業化的今天,時間是十分寶貴的。因此,我們迫切需要乙個可以指導我們設定引數,評估模型的哪一部分,哪些資料對模型結果的影響最大,或者左右了結果產生的說明。這就是可解釋性在ai中發揮的作用,它就像一本指導手冊,它可以讓這個「黑箱」更加透明。

解釋模型的方法分為建立模型前的方法,建立模型時的方法,和建立模型後的方法。建立模型前,我們可以將資料視覺化,讓資料更加直觀地展現在人的眼前,也可以使用樣本資料探索,這樣對樣本的了解更加確切。建模中可以基於目前一些具有可解釋性的方法建立模型,這樣建立的模型它本身就具有可解釋性,但是這樣方法侷限於它自身的結構特點,無法應用於複雜的深度學習網路模型。在應用中,我們往往會不考慮可解釋性來建立模型,這樣更加靈活多變。這導致了建立深度學習網路模型成為「黑箱」的可能性增加,以至於大部分都是「黑箱」。建模後的解釋方法,是根據已有的模型進行解釋,這和資料擬合很相似,我們總是去尋找這樣的方法來解釋未知的問題。不論是建模前,建模中,還是建模後的方法,它們都會輸出結果,這個結果就是我們的評估模型可解釋的指標。

建模前通過資料視覺化或者樣本資料探索,可以直觀地了解到資料對描述事實的準確程度,判斷資料是否適合建模,資料內部的關聯程度和資料樣本的特徵。通過常用的資料分析方式,比如方差分析,假設檢驗,相關性分析,回歸分析,因子分析等,描述資料樣本的趨勢,離散程度,為確定建模方法提供依據。

需要將資料視覺化,然後初步分析資料的質量,從中篩選或者調整資料以供後續繼續進行樣本資料探索,找到合適建模的資料。

建模中可以使用一些具有自解釋性的方法建立可解釋的模型,比如基於規則的方法,基於單個特徵,基於單調性等。不管如何,他們都具有複雜度。複雜度是深度學習模型自身固有的特點,它包含時間和空間複雜度,對應於計算量(模型運算次數)和訪存量(模型引數數量)。

可解釋性差是深度學習的最大缺陷之一。對於大部分的深度學習模型,它們在建立的時候,就沒考慮模型的可解釋性,甚至有的網路的建立僅憑靠建模者的直覺,所以目前還沒有出現統一的指標來解釋為何如此建立模型,建模依據可能都無法提供。對於神經網路來說,它的結構複雜,引數眾多(有的可以多達幾十億引數),我們無法知曉資料在模型中為何會被選擇或者如何被改變。比如inception網路,我們不知道資料適合採用哪一方式來建立神經網路,不知道何時採取池化,何時要卷積,所以在inception網路裡,我們把所有的條件都給了,讓資料來自己選擇是池化還是卷積,我們甚至都不知道為何在某一部分結構中池化起主導作用,而在另一部分卷積起主導作用。神經網路經過訓練,為何會選擇這些數值作為引數,它們對整個網路的貢獻值有多大,我們都不知道。這就是為什麼深度學習模型那麼難解釋,以至於大部分模型都只能看作是黑箱,依靠建模後的方法來對模型進行解釋,進行可解釋性評估。

我們可能暫時無法對既定模型進行解釋,但是在新建立模型的時候,我們可以依據一些方法,建立本身具有可解釋性的模型。這類方法大致分為:基於規則的方法(rule-based),基於單個特徵的方法(per-feature-based),基於例項的方法(case-based),稀疏性方法(sparsity),單調性方法(monotonicity),它們本身擁有很好的解釋性。

這部分主要是把可解釋性運用到已有的模型中,我們在這個階段研究的不夠透徹,目前知道的模型的共同特徵是複雜度以及層數,結構等固有特徵。不詳寫。

對於所有的監督學習模型,我們有準確率,檢錯率等等指標來區分模型的優劣,但是它們並不能為模型提供乙個好的解釋,所以還需要其他解釋辦法,使得黑盒變得更加透明,目前主要的有pdp,ice,ale,fi、pfi等能為模型提供解釋,它們不依賴於模型,所以擁有很大的靈活性,但是也導致了解釋不夠精確。

這些方法只為我們提供了參考,不能依靠其中某一項來評價模型,需要多項參考一起進行。它們都是與模型無關的方法,所以我們可以不考慮原模型的內部結構。

以下主要闡述各個方法實現規則和數學原理

這部分主要是客觀和主觀評價,定性與定量評價。

英文版一級目錄包括但不限於:introduction,scope,terms and definitions,reference architecture,explanation assessment

具體還得等到最終確定方案並被採納才能放出全部內容。相關工作還在進行中。

漏洞可解釋性定位

利用可解釋性做定位,用可解釋的方法來做定位。首先在建模的時候要包括能體現漏洞的特徵,結合汙點分析的原理,可以這樣說,如果在source和sink中間沒有sanitizer操作,這才可能會導致漏洞發生,資料完整性或資料私密性被破壞。都說借助自然語言的處理方法來對程式處理,是為了程式的語義資訊。可是,程...

可解釋性人工智慧粗讀

人工智慧已經成功運用在自然語言 多 計算杋視覺 語音和跨 等相關的特定領域。然而,這一架構在 端到端 模式下 通過計算大量資料來進行誤差後向傳播而優化引數的學習方法被比喻為乙個 黑盒子 可解釋性較弱,人們普遍難以相信乙個不可解釋的黑盒子模型做出的決策。雖然我們造出了準確度極高的機器,但最後只能得到一...

關於深度學習的可解釋性

在這裡學習的,在此簡要做了些筆記。人類對模型決策 結果的理解程度。對於深度學習而言,可解釋性面臨兩個問題 為甚會得到該結果?過程 為甚結果應該是這個?結果 理想狀態 通過溯因推理,計算出輸出結果,可是實現較好的模型解釋性。衡量乙個解釋是否合理,需要考慮 可解釋性 通過人類可以理解的方式描述系統的內部...