由機器學習和深度學習驅動的人工智能領域在過去十年中經歷了一些驚人的變化。從一個純粹的學術和研究領域開始,我們已經看到廣泛的行業采用跨越多個領域,包括零售、技術、醫療保健、科學等等。21世紀數據科學和機器學習的關鍵目標不僅僅是運行實驗室實驗來發表研究論文,而是轉變為解決和解決現實問題,自動化復雜任務,讓我們的生活更輕松,更好。通常,機器學習,統計學或深度學習模型的標準工具箱保持不變。像膠囊網絡這樣的新模型確實存在,但同樣的行業采用通常需要幾年時間。因此,在行業中,數據科學或機器學習的主要焦點是更'應用'而不是理論上,有效地將這些模型應用于正確的數據以解決復雜的現實世界問題是至關重要的。
機器學習模型本身由一種算法組成,該算法試圖從數據中學習潛在模式和關系,而無需硬編碼固定規則。因此,解釋模型如何對業務起作用總是會帶來一系列挑戰。行業中有一些領域,特別是在保險或銀行等金融領域,數據科學家通常最終不得不使用更傳統的機器學習模型(線性或基于樹的)。原因是模型可解釋性對于企業解釋模型所采取的每個決策非常重要。但是,這通常會導致性能下降。這就是集成和神經網絡等復雜模型通??梢詾槲覀兲峁└茫鼫蚀_的性能(因為真正的關系本質上很少是線性的)。但是,我們 最終無法對模型決策進行適當的解釋。為了解決和討論這些差距,我將撰寫一系列文章,我們將深入探討可解釋的人工智能(XAI)和人類可解釋的機器學習中的一些挑戰。
這些內容將在本系列的幾篇文章中進行介紹,如上所述,以使事情簡潔有趣,這樣每個人都可以從每篇文章中獲得一些關鍵的內容。
作為行業的數據科學家并在該領域為人們提供指導,我看到數據科學仍然經常被視為一個能夠表現魔法或煉金術的黑匣子,可以為人們提供他們想要的東西。
然而,嚴酷的現實是,如果沒有對機器學習模型或數據科學管道如何運作的合理理解,現實世界的項目很少會成功。
考慮到現實世界中的任何數據科學項目,您通常會有業務方面以及技術或解決方案方面?,F在,數據科學家通常致力于構建模型并為業務提供解決方案。但是,企業可能不知道模型如何工作的復雜細節。但是,由于這個模型最終將為他們做出很多決定,他們確實有權提出
'我怎么能相信你的模型?'
'你的模型如何真正做出決定?'
這些問題是數據科學從業者和研究人員多年來一直在嘗試的問題。
數據科學從業者將知道存在典型的模型可解釋性與模型性能權衡。這里要記住的一點是模型性能不是運行時或執行性能,而是模型在決策中的準確程度。有幾種模型,包括簡單的線性模型甚至是基于樹的模型,它們可以很容易地解釋模型為獲得特定的洞察力或預測而做出的決策,但是你可能需要犧牲模型性能,因為它們總是不能產生最好的結果是由于高偏差(線性模型)或高方差的固有問題,導致過度擬合(完全成長的樹模型)。更復雜的模型,如集成模型和最新的深度學習模型系列通常會產生更好的性能,但被認為是黑盒模型,因為很難解釋模型如何真正做出決定。
雖然有些人可能會爭辯說,如果某些事情運作良好(暫時),為什么會質疑它是如何運作的?
然而,作為人類,邏輯和推理是我們為大多數決策所堅持的。因此,人工智能(AI)制定決策的范式轉變無疑會受到質疑。有很多現實世界的場景,有偏見的模型可能會產生真正的負面影響。這包括預測潛在的犯罪分子、司法判刑風險評分、信用評分、欺詐檢測、健康評估、貸款借貸、自駕車等等,其中模型理解和解釋至關重要。
著名的數據科學家和作家Cathy O'Neil在她著名的書中也強調了這一點,'數學毀滅武器'。
著名的研究人員和作家凱特克勞福德在NIPS 2017主題演講中討論了偏見對機器學習的影響以及它對社會的影響,'麻煩與偏見'。
有興趣的讀者也一定要查看她在紐約時報上的著名文章'人工智能的白人問題',她向我們展示了機器學習應用的例子,包括圖像分類,犯罪風險預測,交付服務可用性以及更多有偏見和屈服的不利黑人社區的成果。所有這些真實場景都是模型解釋應該如何重要的含義,以及我們是否想利用機器學習來解決這些問題。
機器學習僅在過去幾年中得到了廣泛的行業采用。因此,模型解釋作為一個概念仍然主要是理論和主觀的。
任何機器學習模型的核心都有一個響應函數,它試圖映射和解釋獨立(輸入)變量和從屬(目標或響應)變量之間的關系和模式。
當模型預測或找到我們的見解時,需要做出某些決定和選擇。模型解釋試圖理解和解釋響應函數所做出的這些決策,即什么,為什么以及如何。模型解釋的關鍵是透明度,質疑能力以及人類理解模型決策的難易程度。模型解釋的三個最重要的方面解釋如下。
1. 什么驅動模型預測?我們應該能夠查詢我們的模型并找出潛在的特征交互,以了解哪些特征在模型的決策策略中可能是重要的。這確保了模型的公平性。
2. 為什么模型會做出某個決定?我們還應該能夠驗證并證明為什么某些關鍵特征在預測期間驅動模型所做出的某些決策時負有責任。這確保問責制的模型和可靠性。
3. 我們如何信任模型預測?我們應該能夠評估和驗證任何數據點以及模型如何對其進行決策。對于模型按預期工作的關鍵利益相關者而言,這應該是可證明且易于理解的。這確保了模型的透明度。
解釋性也通常被稱為機器學習模型的人類可解釋性解釋(HII),是人類(包括非機器學習專家)能夠理解模型在決策過程中所做出的選擇的程度(如何,為什么和什么)。
在比較模型時,除了模型性能之外,如果模型的決策比其他模型的決策更容易被人理解,那么模型被認為比其他模型具有更好的可解釋性。
在解決機器學習問題時,數據科學家往往傾向于關注模型性能指標,如準確性,精確度和召回等等(毫無疑問,這很重要?。?。這在大多數圍繞數據科學和機器學習的在線競賽中也很普遍。
但是,指標只能說明模型預測決策的部分故事。
隨著時間的推移,由于環境中的各種因素導致的模型概念漂移,性能可能會發生變化。因此,了解推動模型采取某些決策的因素至關重要。
我們中的一些人可能會爭辯說,如果一個模型工作得很好,為什么還要深入挖掘呢?永遠記住,在解決現實世界中的數據科學問題時,為了讓企業信任您的模型預測和決策,他們會不斷提出'我為什么要相信您的模型?'這一問題,這一點非常有意義。
如果,一個人患有癌癥或糖尿病,一個人可能對社會構成風險,或者即使客戶會流失,種種以后個別情況,你會對預測和做出決定的模型(即什么)感到滿意嗎?也許不是,如果我們能夠更多地了解模型的決策過程(原因和方式),我們可能會更喜歡它。
這使我們更加透明地了解模型為何做出某些決策,在某些情況下可能出現的問題以及隨著時間的推移它有助于我們在這些機器學習模型上建立一定程度的信任。
本節的主要內容是,現在是時候停止將機器學習模型視為黑盒,不僅要嘗試分析數據,還要分析模型如何做出決策。
然而,了解預測背后的原因在評估信任方面非常重要,如果計劃基于預測采取行動,或者選擇是否部署新模型,則信任是至關重要的。
無論人類是直接使用機器學習分類器作為工具,還是在其他產品中部署模型,一個至關重要的問題仍然存在:如果用戶不信任模型或預測,他們就不會使用它。
這是我們在本文中多次討論的內容,也是決定數據科學項目在行業中取得成功的關鍵區別之一。這推動了模型解釋的必要性和重要性的緊迫性。
有一些特定的標準可用于分類模型解釋方法。提到了一個很好的指南,:Christoph Molnar,2018年
· 內在的還是事后的?內在的可解釋性就是利用機器學習模型,該模型本質上是可解釋的(如線性模型,參數模型或基于樹的模型)。事后可解釋性意味著選擇和訓練黑匣子模型(集合方法或神經網絡)并在訓練后應用可解釋性方法(特征重要性,部分依賴性圖)。我們將更多地關注我們系列文章中的事后模型可解釋方法。
· 模型特定或模型不可知?特定于模型的解釋工具非常特定于內在模型解釋方法,這些方法完全依賴于每個模型的功能和特征。這可以是系數,p值,與回歸模型有關的AIC分數,來自決策樹的規則等等。模型不可知工具與事后方法更相關,可用于任何機器學習模型。這些不可知方法通常通過分析(和輸入的擾動)特征輸入和輸出對來操作。根據定義,這些方法無法訪問任何模型內部,如權重,約束或假設。
· 本地還是全局?這種解釋分類討論了解釋方法是解釋單個預測還是整個模型行為?或者如果范圍介于兩者之間?我們將很快談論全局和本地的解釋。
這不是一套詳盡的可解釋方法分類標準,因為這仍然是一個新興領域,但這可以成為比較和對比多種方法的一個很好的尺度。
我們如何定義可解釋性的范圍和界限?一些有用的方面可以是模型的透明度,公平性和責任性。全局和局部模型解釋是定義模型解釋范圍的明確方法。
總結全局和局部解釋
這就是試圖理解'模型如何進行預測?'和'模型的子集如何影響模型決策?'。要立即理解和解釋整個模型,我們需要全球可解釋性。全局可解釋性是指能夠基于完整數據集上的依賴(響應)變量和獨立(預測變量)特征之間的條件交互來解釋和理解模型決策。嘗試理解特征交互和重要性始終是理解全球解釋的一個很好的一步。當然,在嘗試分析交互時,在超過兩維或三維之后可視化特征變得非常困難。因此,經常查看可能影響全局知識模型預測的模塊化部分和特征子集會有所幫助。全球解釋需要完整的模型結構,假設和約束知識。
局部本地解釋
這就是試圖理解'為什么模型為單個實例做出具體決策?'和'為什么模型為一組實例做出具體決策?'。對于本地可解釋性,我們不關心模型的固有結構或假設,我們將其視為黑盒子。為了理解單個數據點的預測決策,我們專門關注該數據點并查看該點周圍的特征空間中的局部子區域,并嘗試基于該局部區域理解該點的模型決策。本地數據分布和特征空間可能表現完全不同,并提供更準確的解釋而不是全局解釋。局部可解釋模型 - 不可知解釋(LIME)框架是一種很好的方法,可用于模型不可知的局部解釋。我們可以結合使用全局和局部解釋來解釋一組實例的模型決策。
模型透明度
這就是試圖理解'如何根據算法和特征創建模型?'。我們知道,通常機器學習模型都是在數據特征之上利用算法來構建將輸入映射到潛在輸出(響應)的表示。模型的透明度可能試圖了解模型的構建方式以及可能影響其決策的更多技術細節。這可以是神經網絡的權重,CNN濾波器的權重,線性模型系數,決策樹的節點和分裂。但是,由于業務可能不太熟悉這些技術細節,因此嘗試用不可知的局部和全局解釋方法解釋模型決策有助于展示模型透明度。
模型解釋可以創造或破壞行業中的現實世界機器學習項目,并幫助我們更接近可解釋的人工智能(XAI)。讓我們努力實現人類可解釋的機器學習和XAI,為每個人揭開機器學習的神秘面紗,并幫助提高對模型決策的信任。