
機(jī)器學(xué)習(xí)模型可解釋的重要及必要性
不管你是管理自己的資金還是客戶資金,只要你在做資產(chǎn)管理,每一步的投資決策都意義重大,做技術(shù)分析或基本面分析的朋友很清楚地知道每一個(gè)決策的細(xì)節(jié),但是通過機(jī)器學(xué)習(xí)、深度學(xué)習(xí)建模的朋友可能就會很苦惱,因?yàn)橹苯赢a(chǎn)出決策信號的模型可能是個(gè)黑盒子,很難明白為什么模型會產(chǎn)出某一個(gè)信號,甚至很多保守的私募基金把模型的可解釋性放入了事前風(fēng)控。其實(shí),模型的可解釋性是很容易做到的,難點(diǎn)在于研究員是否對模型有深入的思考和理解。
介紹
機(jī)器學(xué)習(xí)領(lǐng)域在過去十年中發(fā)生了顯著的變化。從一個(gè)純粹的學(xué)術(shù)和研究領(lǐng)域方向開始,我們已經(jīng)看到了機(jī)器學(xué)習(xí)在各個(gè)領(lǐng)域都有著廣泛的應(yīng)用,如零售,技術(shù),醫(yī)療保健,科學(xué)等等。在21世紀(jì),數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的重要目標(biāo)已經(jīng)轉(zhuǎn)變?yōu)榻鉀Q現(xiàn)實(shí)問題,自動完成復(fù)雜任務(wù),讓我們的生活變得更加輕松,而不僅僅是在實(shí)驗(yàn)室做實(shí)驗(yàn)發(fā)表論文。機(jī)器學(xué)習(xí),統(tǒng)計(jì)學(xué)或深度學(xué)習(xí)模型工具已基本成型。像Capsule Networks這樣的新模型在不斷地被提出,但這些新模型被工業(yè)采用卻需要幾年時(shí)間。因此,在工業(yè)界中,數(shù)據(jù)科學(xué)或機(jī)器學(xué)習(xí)的主要焦點(diǎn)更多在于應(yīng)用,而不是理論。這些模型可以在正確數(shù)據(jù)上有效應(yīng)用來解決現(xiàn)實(shí)問題是至關(guān)重要的。
機(jī)器學(xué)習(xí)模型本質(zhì)上就是一種算法,該算法試圖從數(shù)據(jù)中學(xué)習(xí)潛在模式和關(guān)系,而不是通過代碼構(gòu)建一成不變的規(guī)則。所以,解釋一個(gè)模型是如何在商業(yè)中起作用總會遇到一系列挑戰(zhàn)。在某些領(lǐng)域,特別是在金融領(lǐng)域,比如保險(xiǎn)、銀行等,數(shù)據(jù)科學(xué)家們通常最終不得不使用更傳統(tǒng)更簡單的機(jī)器學(xué)習(xí)模型(線性模型或決策樹)。原因是模型的可解釋性對于企業(yè)解釋模型的每一個(gè)決策至關(guān)重要。然而,這常常導(dǎo)致在性能上有所犧牲。復(fù)雜模型像如集成學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)通常表現(xiàn)出更好更精準(zhǔn)的性能(因?yàn)檎鎸?shí)的關(guān)系在本質(zhì)上很少可以通過線性劃分的),然而,我們最終無法對模型決策做出合適的解釋。為了解決和探討這些差距,本文中,我會重點(diǎn)解釋模型可解釋性的重要及必要性。
動機(jī)
作為一名在企業(yè)工作的數(shù)據(jù)科學(xué)家并時(shí)常指導(dǎo)他人,我發(fā)現(xiàn)數(shù)據(jù)科學(xué)仍然常常被視為一個(gè)黑盒,它能用“魔法”或“煉金術(shù)”提供人們想要的東西。然而,嚴(yán)酷的現(xiàn)實(shí)是,如果不對模型進(jìn)行合理足夠的解釋,現(xiàn)實(shí)世界的項(xiàng)目很少成功。如今,數(shù)據(jù)科學(xué)家通過構(gòu)建模型并為業(yè)務(wù)提供解決方案。企業(yè)可能不知道模型實(shí)現(xiàn)的復(fù)雜細(xì)節(jié),卻要依靠這些模型做出決策,他們確實(shí)有權(quán)提出這樣的問題:“我怎樣才能相信你的模型?”或“你的模型是如何決策的”?”回答這些問題是數(shù)據(jù)科學(xué)實(shí)踐者和研究人員數(shù)年來一直在嘗試的事情。
數(shù)據(jù)科學(xué)家知道,模型解釋性與模型性能之前有一個(gè)權(quán)衡。在這里,模型性能不是運(yùn)行時(shí)間或執(zhí)行性能,而是模型在做出預(yù)測時(shí)的準(zhǔn)確度。有幾種模型(包括簡單的線性模型甚至基于樹的模型),他們的預(yù)測的原理很好直觀理解,但是需要犧牲模型性能,因?yàn)樗鼈兊漠a(chǎn)生的結(jié)果偏差或者方差很高(欠擬合:線性模型),或者容易過擬合(基于樹的模型)。更復(fù)雜的模型,如集成模型和近期快速發(fā)展的深度學(xué)習(xí)通常會產(chǎn)生更好的預(yù)測性能,但被視為黑盒模型,因?yàn)橐忉屵@些模型是如何真正做出決策是一件非常困難的事情。
雖然有些人說,知道模型性能好就行了,為什么還要知道它背后的原理呢? 然而,作為人類,大多數(shù)決策基于邏輯和推理。 因此,人工智能(AI)作出決策的模式無疑會受到懷疑。 在很多現(xiàn)實(shí)情況下,有偏差的模型可能會產(chǎn)生真正的負(fù)面影響。 這包括預(yù)測潛在的犯罪、司法量刑、信用評分、欺詐發(fā)現(xiàn)、健康評估、貸款借款、自動駕駛等,其中模型的理解和解釋是最重要的。 數(shù)據(jù)科學(xué)家、作家Cathy O’ Neil在她的著名著作《Weapons of Math Destruction》中也強(qiáng)調(diào)了這一點(diǎn)。
著名學(xué)者和作家凱特克勞福德在NIPS 2017主題演講《The Trouble with Bias》中談到了偏差在機(jī)器學(xué)習(xí)中的影響以及它對社會的影響。
有興趣的讀者也可以看看她在紐約時(shí)報(bào)的著名文章《 Artificial Intelligence’s White Guy Problem》,向我們展示了機(jī)器學(xué)習(xí)應(yīng)用的案例,包括圖像分類、犯罪風(fēng)險(xiǎn)預(yù)測、交付服務(wù)可用性等等,這些應(yīng)用對黑人極不親善。 如果我們想利用機(jī)器學(xué)習(xí)來解決這些問題,所有這些真實(shí)世界的場景都在告訴我們模型解釋是多么的重要。
在過去的一年里,我在解決行業(yè)問題的同時(shí)也看到了對模型解釋的需求,同時(shí)我也在寫我的新書《Practical Machine Learning with Python2》。在這段時(shí)間里,我有機(jī)會與DataScience.com的優(yōu)秀員工進(jìn)行互動,他們非常清楚在機(jī)器學(xué)習(xí)模型中人類可解釋性的必要性和重要性。他們也一直在積極研究解決方案,并開發(fā)了流行的python框架Skater。后續(xù)我們將深入研究Skater,并在本系列文章中做一些實(shí)際的模型解釋。
理解模型解釋
機(jī)器學(xué)習(xí)(尤其是深度學(xué)習(xí))僅在最近幾年才得到廣泛的行業(yè)采用。因此,模型解釋作為一個(gè)概念仍然主要是理論和主觀的。
任何機(jī)器學(xué)習(xí)模型都有一個(gè)響應(yīng)函數(shù),試圖映射和解釋自(輸入)變量和因(目標(biāo)或響應(yīng))變量之間的關(guān)系和模式。
模型解釋試圖理解和解釋響應(yīng)函數(shù)做出的這些決定。模型解釋的關(guān)鍵在于透明度以及人們理解模型決策的容易程度。模型解釋的三個(gè)最重要的方面解釋如下。
什么主導(dǎo)了模型預(yù)測?我們應(yīng)該找出特征的相互作用,以了解在模型的決策策略中哪些特征可能是重要的。這確保了模型的公平性。
為什么模型做出某個(gè)特定決策?我們還應(yīng)該能夠驗(yàn)證為什么某些關(guān)鍵特征在預(yù)測期間推動某個(gè)模型所做出的某些決定。這確保了模型的可靠性。
我們?nèi)绾蜗嘈拍P皖A(yù)測?我們應(yīng)該能夠評估和驗(yàn)證任何數(shù)據(jù)點(diǎn)以及模型如何作出決策。對于模型按預(yù)期運(yùn)行的直接利益相關(guān)者來說,這應(yīng)該是可證明的,并且易于理解。這確保了模型的透明度。
可解釋性是指人(包括機(jī)器學(xué)習(xí)中的非專家)能夠理解模型在其決策過程中所做出的選擇(怎么決策,為什么決策和決策了什么)。
在模型比較時(shí),除了模型的性能,如果一個(gè)模型的決策比另一個(gè)模型的決策更容易被人類理解,則說該模型比另一個(gè)模型具有更好的可解釋性。
模型解釋的重要性
在解決機(jī)器學(xué)習(xí)問題時(shí),數(shù)據(jù)科學(xué)家通常傾向于注意模型性能指標(biāo),如準(zhǔn)確性、精確度和召回率等(毫無疑問,這很重要?。5?,度量標(biāo)準(zhǔn)只能說明模型預(yù)測性決策的一部分內(nèi)容。隨著時(shí)間的推移,由于環(huán)境中各種因素造成的模型概念漂移,性能可能會發(fā)生變化。因此,了解什么促使模型作出某些決定是極為重要的。
我們中的一些人可能會認(rèn)為模型已經(jīng)工作得很好了,為什么還要深入挖掘呢?一定要記住,當(dāng)解決現(xiàn)實(shí)世界中的數(shù)據(jù)科學(xué)問題時(shí),為了讓企業(yè)相信你的模型預(yù)測和決策,他們會不斷提問“我為什么要信任你的模型?”,這非常合理。如果一個(gè)人患有癌癥或糖尿病,如果一個(gè)人可能對社會構(gòu)成風(fēng)險(xiǎn),或者即使客戶流失,您是否會滿意于只是預(yù)測和做出決定(如何)的模型?也許另外一種會更好,如果我們可以更多地了解模型的決策過程(為什么以及如何),我們可能更喜歡它。這為我們提供了更多的透明度,說明為什么模型會做出某些決定,在某些情況下可能會出錯(cuò),并且隨著時(shí)間的推移它可以幫助我們在這些機(jī)器學(xué)習(xí)模型上建立一定的信任度。
這一部分關(guān)鍵的一點(diǎn)是,現(xiàn)在是時(shí)候停止將機(jī)器學(xué)習(xí)模型視為黑盒子,不僅嘗試和分析數(shù)據(jù),而且還要分析模型如何做出決策。實(shí)際上,走向這條道路的一些關(guān)鍵步驟是由著名論文《Why Should I Trust You?》(解釋了任意分類器的預(yù)測)”開始的,由MT Ribeiro,S. Singh和C. Guestrin在SIGKDD 2016上介紹了LIME(Local Interpretable Model-Agnostic Explanations)(局部可解釋模型 - 不可知論解釋)的概念。
他們在論文中提到了一些值得記住的關(guān)鍵點(diǎn)。
然而,理解預(yù)測背后的原因在評估信任方面非常重要,如果計(jì)劃基于預(yù)測采取行動,或者選擇是否部署新模型,則對模型的信任是至關(guān)重要的。 無論人類是直接使用機(jī)器學(xué)習(xí)分類器作為工具還是在其他產(chǎn)品中部署模型,仍然存在一個(gè)至關(guān)重要的問題:如果用戶不信任模型或預(yù)測,他們將不會使用它。
這是我們在本文中多次討論的內(nèi)容,也是決定數(shù)據(jù)科學(xué)項(xiàng)目在業(yè)界成功與否的關(guān)鍵因素之一。這就推動了模型解釋的必要性和重要性。
模型解釋方法的標(biāo)準(zhǔn)
對于模型解釋方法的分類有特定的標(biāo)準(zhǔn)。在Christoph Molnar的“Interpretable Machine Learning,Making Guide for Making Black Box Models Explainable”中提到了一個(gè)很好的指導(dǎo)標(biāo)準(zhǔn):
內(nèi)在或事后?內(nèi)在解釋性是關(guān)于利用機(jī)器學(xué)習(xí)模型的,它本質(zhì)上是解釋性的(像線性模型、參數(shù)模型或基于樹的模型)。事后解釋性意味著選擇和訓(xùn)練一個(gè)黑盒模型(集成方法或神經(jīng)網(wǎng)絡(luò))并在訓(xùn)練后應(yīng)用可解釋性方法(特征重要性,部分依賴關(guān)系圖)。我們將在我們的系列文章中更多地關(guān)注事后模型可解釋的方法。
是針對某個(gè)模型的還是通用的?特定于模型的解釋工具對固有模型解釋方法非常具體,這些解釋方法完全取決于每個(gè)模型的能力和特征。這可以是系數(shù),p值,與回歸模型相關(guān)的AIC分?jǐn)?shù),決策樹的規(guī)則等等。通用的模型解釋方法還是依賴于事后對模型的分析,可用于任何機(jī)器學(xué)習(xí)模型。通常通過分析特征輸入和輸出對來運(yùn)行。根據(jù)定義,這些方法無法訪問任何模型內(nèi)部,如權(quán)重,約束或假設(shè)。
本地還是全局?這種解釋的分類會談到解釋方法是解釋單個(gè)預(yù)測還是整個(gè)模型行為?或者如果范圍介于兩者之間?我們將盡快討論更多關(guān)于局部和全局的解釋。
這并不是對可解釋方法進(jìn)行分類的一套完整的標(biāo)準(zhǔn),因?yàn)檫@仍然是一個(gè)新興的領(lǐng)域,但這可以是一個(gè)很好的標(biāo)準(zhǔn),可以在多種方法之間進(jìn)行比較和對比。
模型解釋的范圍
我們?nèi)绾谓缍ń忉尩姆秶徒缦??一些有用的方面可以是模型的透明度,公平性和可靠性。本地還是全局模型解釋是定義模型解釋范圍的明確方法。
全局解釋性
這就是要試圖理解“模型如何做出預(yù)測?”和“模型的子集如何影響模型決策?”。為了一次理解和解釋整個(gè)模型,我們需要全局解釋。全局可解釋性是指能夠基于完整數(shù)據(jù)集上的依賴(響應(yīng))變量和獨(dú)立(預(yù)測)特征之間的條件相互作用來解釋和理解模型決策。試圖理解特征的相互作用和重要性,往往是理解全局解釋的好的一步。當(dāng)然,在嘗試分析交互時(shí),在超過兩個(gè)或三個(gè)維度后對特征進(jìn)行可視化變得非常困難。因此,經(jīng)常查看可能會影響全局知識模型預(yù)測的模塊化部分和特征子集,對全局解釋是有所幫助的。完整的模型結(jié)構(gòu)知識,假設(shè)和約束是全局解釋所必需的。
局部解釋性
這就是要了解“為什么模型會為單個(gè)實(shí)例做出特定決策?”以及“為什么模型會為一組實(shí)例做出特定決策?”。對于局部的可解釋性,我們不關(guān)心模型的內(nèi)在結(jié)構(gòu)或假設(shè),我們把它當(dāng)作一個(gè)黑箱子。為了理解單個(gè)數(shù)據(jù)點(diǎn)的預(yù)測決策,我們專門關(guān)注該數(shù)據(jù)點(diǎn),并在該點(diǎn)附近的特征空間中查看局部子區(qū)域,并嘗試根據(jù)此局部區(qū)域了解該點(diǎn)的模型決策。局部數(shù)據(jù)分布和特征空間可能表現(xiàn)完全不同,并提供更準(zhǔn)確的解釋而不是全局解釋。局部可解釋模型 - 不可知論解釋(LIME)框架是一種很好的方法,可用于模型不可知的局部解釋。我們可以結(jié)合使用全局解釋和局部解釋來解釋一組實(shí)例的模型決策。
模型透明度
這就是要了解“從算法和特征中創(chuàng)建模型的過程如何?”。我們知道,典型的機(jī)器學(xué)習(xí)模型都是關(guān)于利用一個(gè)算法在數(shù)據(jù)特征之上構(gòu)建一個(gè)表示,將輸入映射到潛在的輸出(響應(yīng))。模型的透明性可以嘗試?yán)斫饽P腿绾螛?gòu)建的更多技術(shù)細(xì)節(jié),以及影響其決策的因素。這可以是神經(jīng)網(wǎng)絡(luò)的權(quán)值,CNN濾波器的權(quán)值,線性模型系數(shù),節(jié)點(diǎn)和決策樹的分割。然而,由于企業(yè)對這些技術(shù)細(xì)節(jié)可能并不十分熟悉,試圖用不可知的局部和全局解釋方法來解釋模型決策有助于展示模型的透明度。
結(jié)論
模型可解釋是一個(gè)對現(xiàn)實(shí)世界機(jī)器學(xué)習(xí)項(xiàng)目非常重要的一件事情。讓我們試著去研究人類可解釋的機(jī)器學(xué)習(xí),讓每個(gè)人都打開機(jī)器學(xué)習(xí)模型的黑箱,并幫助人們增加對模型決策的信任。
寫在最后:模型解釋性很重要,這能夠加深我們對模型的信心,尤其是在金融市場中,當(dāng)模型持續(xù)回撤時(shí),信心比黃金還重要。之前有一個(gè)私募團(tuán)隊(duì)使用了StockRanker策略,但是遲遲不肯上實(shí)盤,后來在弄清楚模型的理論原理和每一步細(xì)節(jié)、處理流程后,終于有信心上實(shí)盤,實(shí)盤前期遇到回撤也能明白是正常情況,并非模型預(yù)測失效,扛住前期的回撤后策略凈值開始上升。因此,機(jī)器學(xué)習(xí)模型可解釋很重要,模型也是可以解釋的,只是需要研究員付出更多的心血
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實(shí)戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機(jī)一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價(jià)值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實(shí)戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時(shí),“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗(yàn)與 t 檢驗(yàn):差異、適用場景與實(shí)踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計(jì)學(xué)領(lǐng)域,假設(shè)檢驗(yàn)是驗(yàn)證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計(jì)劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計(jì)劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實(shí)踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(shí)(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價(jià)值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點(diǎn)數(shù)據(jù)的科學(xué)計(jì)數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點(diǎn)數(shù)據(jù)時(shí)的科學(xué)計(jì)數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價(jià)值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運(yùn)營問題、提升執(zhí)行效率的核心手段,其價(jià)值 ...
2025-09-12用 SQL 驗(yàn)證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實(shí)戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計(jì)” 與 “用戶體驗(yàn) ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價(jià)值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實(shí)踐到業(yè)務(wù)價(jià)值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計(jì)模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價(jià)值導(dǎo)向 統(tǒng)計(jì)模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10