可解釋性的標(biāo)準(zhǔn)是什么?
掃描二維碼
隨時(shí)隨地手機(jī)看文章
有一些特定的標(biāo)準(zhǔn)可用于分類模型解釋方法。Christoph Molnar在2018年“可解釋的機(jī)器學(xué)習(xí),制作黑箱模型可解釋指南”中提到了一個(gè)很好的指南。
內(nèi)在還是事后?內(nèi)在可解釋性就是利用機(jī)器學(xué)習(xí)模型,該模型本質(zhì)上是可解釋的(如線性模型,參數(shù)模型或基于樹(shù)的模型)。事后可解釋性意味著選擇和訓(xùn)練黑匣子模型(集合方法或神經(jīng)網(wǎng)絡(luò))并在訓(xùn)練后應(yīng)用可解釋性方法(特征重要性,部分依賴性圖)。我們將更多地關(guān)注我們系列文章中的事后模型可解釋方法。
模型特定或模型不可知?特定于模型的解釋工具非常特定于內(nèi)在模型解釋方法,這些方法完全依賴于每個(gè)模型的功能和特征。這可以是系數(shù),p值,與回歸模型有關(guān)的AIC分?jǐn)?shù),來(lái)自決策樹(shù)的規(guī)則等等。與模型無(wú)關(guān)的工具與事后方法更相關(guān),可用于任何機(jī)器學(xué)習(xí)模型。這些不可知方法通常通過(guò)分析(和輸入的擾動(dòng))特征輸入和輸出對(duì)來(lái)操作。根據(jù)定義,這些方法無(wú)法訪問(wèn)任何模型內(nèi)部,如權(quán)重,約束或假設(shè)。
本地還是全局?這種解釋分類討論了解釋方法是解釋單個(gè)預(yù)測(cè)還是整個(gè)模型行為?或者如果范圍介于兩者之間?我們將很快談?wù)撊蚝偷胤降慕忉尅?
可解釋性的范圍
如何定義可解釋性的范圍和界限?一些有用的方面可以是模型的透明度、公平性和責(zé)任性。全局和局部模型解釋是定義模型解釋范圍的明確方法。
全局可解釋:就是試圖理解“模型如何進(jìn)行預(yù)測(cè)”和“模型的子集如何影響模型決策”。要立即理解和解釋整個(gè)模型,我們需要全局可解釋性。全局可解釋性是指能夠基于完整數(shù)據(jù)集上的依賴(響應(yīng))變量和獨(dú)立(預(yù)測(cè)變量)特征之間的條件交互來(lái)解釋和理解模型決策。嘗試?yán)斫馓卣鹘换ズ椭匾允冀K是理解全球解釋的一個(gè)很好的一步。當(dāng)然,在嘗試分析交互時(shí),在超過(guò)兩維或三維之后可視化特征變得非常困難。因此,經(jīng)常查看可能影響全局知識(shí)模型預(yù)測(cè)的模塊化部分和特征子集會(huì)有所幫助。全局解釋需要完整的模型結(jié)構(gòu),假設(shè)和約束知識(shí)。
局部解釋:試圖理解“為什么模型為單個(gè)實(shí)例做出具體決策?”和“為什么模型為一組實(shí)例做出具體決策?”。對(duì)于本地可解釋性,我們不關(guān)心模型的固有結(jié)構(gòu)或假設(shè),我們將其視為黑盒子。為了理解單個(gè)數(shù)據(jù)點(diǎn)的預(yù)測(cè)決策,我們專注于該數(shù)據(jù)點(diǎn)并查看該點(diǎn)周圍的特征空間中的局部子區(qū)域,并嘗試基于該局部區(qū)域理解該點(diǎn)的模型決策。本地?cái)?shù)據(jù)分布和特征空間可能表現(xiàn)完全不同,并提供更準(zhǔn)確的解釋而不是全局解釋。局部可解釋模型-不可知解釋(LIME)框架是一種很好的方法,可用于模型不可知的局部解釋。我們可以結(jié)合使用全局和局部解釋來(lái)解釋一組實(shí)例的模型決策。
模型透明度:為試圖理解“如何根據(jù)算法和特征創(chuàng)建模型?”。我們知道,通常機(jī)器學(xué)習(xí)模型都是在數(shù)據(jù)特征之上利用算法來(lái)構(gòu)建將輸入映射到潛在輸出(響應(yīng))的表示。模型的透明度可能試圖了解模型的構(gòu)建方式以及可能影響其決策的更多技術(shù)細(xì)節(jié)。這可以是神經(jīng)網(wǎng)絡(luò)的權(quán)重,CNN濾波器的權(quán)重,線性模型系數(shù),決策樹(shù)的節(jié)點(diǎn)和分裂。但是,由于業(yè)務(wù)可能不太精通這些技術(shù)細(xì)節(jié),因此嘗試使用不可知的局部和全局解釋方法來(lái)解釋模型決策有助于展示模型透明度。
可解釋性的作用
對(duì)于想要了解模型如何工作的數(shù)據(jù)科學(xué)家來(lái)說(shuō),評(píng)估模型的準(zhǔn)確性通常是不夠的。數(shù)據(jù)科學(xué)家通常想知道模型輸入變量如何工作以及模型的預(yù)測(cè)如何根據(jù)輸入變量的值而變化。
機(jī)器學(xué)習(xí)算法和模型的工程應(yīng)用中用到最多的主要是樹(shù)類模型(lgb,xgb)和神經(jīng)網(wǎng)絡(luò)(cnn,rnn),使用者往往習(xí)慣于很少去思考其中的含義和解釋性。需要思考一個(gè)模型的哪些東西是可解釋的,所以有幾個(gè)問(wèn)題值得討論:
哪些特征在模型看到是最重要的?
關(guān)于某一條記錄的預(yù)測(cè),每一個(gè)特征是如何影響到最終的預(yù)測(cè)結(jié)果的?
從大量的記錄整體來(lái)考慮,每一個(gè)特征如何影響模型的預(yù)測(cè)的?
這些解釋信息的作用如下:
?調(diào)試模型:一般的真實(shí)業(yè)務(wù)場(chǎng)景會(huì)有很多不可信賴的,沒(méi)有組織好的臟數(shù)據(jù)。你在預(yù)處理數(shù)據(jù)時(shí)就有可能加進(jìn)來(lái)了潛在的錯(cuò)誤,或者不小心泄露了預(yù)測(cè)目標(biāo)的信息等,考慮各種潛在的災(zāi)難性后果,debug的思路就尤其重要了。當(dāng)你遇到了用現(xiàn)有業(yè)務(wù)知識(shí)無(wú)法解釋的數(shù)據(jù)的時(shí)候,了解模型預(yù)測(cè)的模式,可以幫助你快速定位問(wèn)題。
?指導(dǎo)工程師做特征工程:特征工程通常是提升模型準(zhǔn)確率最有效的方法。特征工程通常涉及到到反復(fù)的操作原始數(shù)據(jù)(或者之前的簡(jiǎn)單特征),用不同的方法來(lái)得到新的特征。有時(shí)候你完成FE的過(guò)程只用到了自己的直覺(jué)。這其實(shí)還不夠,當(dāng)你有上百個(gè)原始特征的時(shí)候,或者當(dāng)你缺乏業(yè)務(wù)背景知識(shí)的時(shí)候,你將會(huì)需要更多的指導(dǎo)方向。如何創(chuàng)造出
這樣優(yōu)秀的特征呢?如何找到最重要的特征的方法,并且可以發(fā)現(xiàn)兩個(gè)特別相關(guān)的特征,當(dāng)面對(duì)越來(lái)越多的特征的時(shí)候,這些方法就會(huì)很重要了。
?指導(dǎo)數(shù)據(jù)采集的方向:對(duì)于網(wǎng)上下載的數(shù)據(jù)集你完全控制不了。不過(guò)很多公司和機(jī)構(gòu)用數(shù)據(jù)科學(xué)來(lái)指導(dǎo)他們從更多方面收集數(shù)據(jù)。一般來(lái)說(shuō),收集新數(shù)據(jù)很可能花費(fèi)比較高或者不是很容易,所以大家很想要知道哪些數(shù)據(jù)是值得收集的?;谀P偷亩床炝Ψ治隹梢越棠愫芎玫睦斫庖延械奶卣鳎@將會(huì)幫助你推斷什么樣子的新特征是有用的。
?指導(dǎo)人們做決策:一些決策是模型自動(dòng)做出來(lái)的,雖然亞馬遜不會(huì)用人工來(lái)決定展示給你網(wǎng)頁(yè)上的商品,但是很多重要的決策是由人來(lái)做出的,而對(duì)于這些決定,模型的洞察力會(huì)比模型的預(yù)測(cè)結(jié)果更有價(jià)值。
?建立模型和人之間的信任:很多人在做重要決策的時(shí)候不會(huì)輕易地相信模型,除非他們驗(yàn)證過(guò)模型的一些基本特性,這當(dāng)然是合理的。實(shí)際上,把模型的可解釋性展示出來(lái),如果可以匹配上人們對(duì)問(wèn)題的理解,那么這將會(huì)建立起大家對(duì)模型的信任,即使是在那些沒(méi)有數(shù)據(jù)科學(xué)知識(shí)的人群中。