創(chuàng)澤機(jī)器人 |
CHUANGZE ROBOT |
自AlphaGo戰(zhàn)勝人類頂尖圍棋手之后,人工智能這一概念真正成為了社會(huì)各界關(guān)注的焦點(diǎn),也為各國(guó)政府所重視。一方面可以給我們帶來(lái)諸多便利,比如可能為我們提供醫(yī)療、法律、金融等方面的建議或決策,也可能直接操控汽車、無(wú)人機(jī),甚至大規(guī)模殺傷性武器。但另一方面,它也被用來(lái)“做壞事”甚至危害人類。如某些網(wǎng)站利用人工智能算法進(jìn)行“大數(shù)據(jù)殺熟”,2017年也發(fā)生了全國(guó)首例利用人工智能技術(shù)進(jìn)行網(wǎng)絡(luò)詐騙的案件。2015年德國(guó)大眾公司甚至發(fā)生了機(jī)器人“殺人事件”。歐盟已經(jīng)要求所有算法解釋其輸出原理[3],這意味著不可解釋的算法模型將成為非法使用。
2.可解釋是人工智能發(fā)展選擇
在時(shí)下熱議的人工智能相關(guān)倫理、算法歧視、算法正確性、安全性等問(wèn)題中,有一個(gè)問(wèn)題被時(shí)常提起,即以深度學(xué)習(xí)算法為代表的人工智能算法的可解釋性問(wèn)題。人類理性的發(fā)展歷程使我們相信,如果一個(gè)判斷或決策是可以被解釋的,我們將更容易了解其優(yōu)點(diǎn)與不足,更容易評(píng)估其風(fēng)險(xiǎn),知道其在多大程度上、在怎樣的場(chǎng)合中可以被信賴,以及我們可以從哪些方面對(duì)其進(jìn)行不斷改善,以盡量增進(jìn)共識(shí)、減少風(fēng)險(xiǎn),推動(dòng)相應(yīng)領(lǐng)域的不斷發(fā)展。這樣的思維范式或許是誕生在人工智能時(shí)代之前的稍顯過(guò)時(shí)的思維模式。或許隨著科技和社會(huì)的發(fā)展,未來(lái)會(huì)演化出新的思維范式,但目前這仍然是我們最成熟、最具共識(shí)、最可信賴的思維模式 。
二、可解釋性方法概述
17年ICML會(huì)議上來(lái)自谷歌的科學(xué)家給出一個(gè)關(guān)于可解釋性的定義是“Interpretation is the process of giving explanations to Human”。許多模型及應(yīng)用不可解釋性的原因主要來(lái)源于對(duì)問(wèn)題和任務(wù)了解得還不夠充分。那么只要在使用模型的過(guò)程中,只要是能夠提供給我們關(guān)于數(shù)據(jù)或模型的可以理解的信息,有助于我們更充分的發(fā)現(xiàn)知識(shí)、理解和解決問(wèn)題的方法,那么都可以歸類為可解釋性方法。同時(shí),這篇文章將可解釋性方法按進(jìn)行的過(guò)程劃分為如下三類:在建模之前的可解釋性方法、建立本身具備可解釋性的模型和建模后使用可解釋性方法對(duì)模型作出解釋,下面對(duì)這三大類方法分別作介紹。
三、建模前:在建模之前的可解釋性方法
在建模之前的可解釋性方法主要涉及一些數(shù)據(jù)預(yù)處理或數(shù)據(jù)展示的方法機(jī)器學(xué)習(xí)解決的是從數(shù)據(jù)中發(fā)現(xiàn)知識(shí)和規(guī)律的問(wèn)題,如果我們對(duì)想要處理的數(shù)據(jù)特征所知甚少,指望對(duì)所要解決的問(wèn)題本身有很好的理解是不現(xiàn)實(shí)的,在建模之前的可解釋性方法的關(guān)鍵在于幫助我們迅速而全面地了解數(shù)據(jù)分布的特征,從而幫助我們考慮在建模過(guò)程中可能面臨的問(wèn)題并選擇一種最合理的模型來(lái)逼近問(wèn)題所能達(dá)到的最優(yōu)解。
數(shù)據(jù)可視化就是一類非常重要的建模前可解釋性方法。很多對(duì)數(shù)據(jù)挖掘稍微有些了解的人可能會(huì)認(rèn)為數(shù)據(jù)可視化是數(shù)據(jù)挖掘工作的最后一步,大概就是通過(guò)設(shè)計(jì)一些好看又唬人的圖表或來(lái)展示你的分析挖掘成果。但實(shí)際上真正要研究一個(gè)數(shù)據(jù)問(wèn)題之前,通過(guò)建立一系列方方面面的可視化方法來(lái)建立我們對(duì)數(shù)據(jù)的直觀理解是非常必須的,特別是當(dāng)數(shù)據(jù)量非常大或者數(shù)據(jù)維度非常高的時(shí)候,比如一些時(shí)空高維數(shù)據(jù),如果可以建立一些一些交互式的可視化方法將會(huì)極大地幫助我們從各個(gè)層次角度理解數(shù)據(jù)的分布。
四、建模中:建立本身具備可解釋性的模型
建立本身具備可解釋性的模型是最關(guān)鍵的一類可解釋性方法,同樣也是一類要求和限定很高的方法,具備可解釋性的模型大概可以分為以下幾種模型。
基于規(guī)則的模型,比如我們提到的非常經(jīng)典的決策樹(shù)模型。這類模型中任何的一個(gè)決策都可以對(duì)應(yīng)到一個(gè)邏輯規(guī)則表示。但當(dāng)規(guī)則表示過(guò)多或者原始的特征本身就不是特別好解釋的時(shí)候,基于規(guī)則的方法有時(shí)候也不太適用。
基于單個(gè)特征的方法主要是一些非常經(jīng)典的回歸模型,比如線性回歸、邏輯回歸、廣義線性回歸、廣義加性模型等。這類模型除了結(jié)構(gòu)比較簡(jiǎn)單之外,更重要的是回歸模型及其一些變種擁有非常堅(jiān)實(shí)的統(tǒng)計(jì)學(xué)基礎(chǔ),上百年來(lái)無(wú)數(shù)統(tǒng)計(jì)學(xué)家探討了在各種不同情況下的模型參數(shù)估計(jì)與修正、假設(shè)檢驗(yàn)、邊界條件等等問(wèn)題,使得他們?cè)诟鞣N不同情況下都能使具有有非常好的可解釋性。
基于實(shí)例的方法主要是通過(guò)一些代表性的樣本來(lái)解釋聚類/分類結(jié)果的方法。比如可以為每一個(gè)聚類簇中選出代表性樣例和重要的子空間。
基于稀疏性的方法主要是利用信息的稀疏性特質(zhì),將模型盡可能地簡(jiǎn)化表示。比如LDA方法,根據(jù)層次性的單詞信息形成了層次性的主題表達(dá),這樣一些小的主題就可以被更泛化的主題所概括,從而可以使我們更容易理解特定主題所代表的含義。
基于單調(diào)性的方法在很多機(jī)器學(xué)習(xí)問(wèn)題中,有一些輸入和輸出之間存在正相關(guān)/負(fù)相關(guān)關(guān)系,如果在模型訓(xùn)練中我們可以找出這種單調(diào)性的關(guān)系就可以讓模型具有更高的可解釋性。比如醫(yī)生對(duì)患特定疾病的概率的估計(jì)主要由一些跟該疾病相關(guān)聯(lián)的高風(fēng)險(xiǎn)因素決定,找出單調(diào)性關(guān)系就可以幫助我們識(shí)別這些高風(fēng)險(xiǎn)因素。
五、建模后:使用可解釋性方法對(duì)模型作出解釋
建模后的可解釋性方法主要是針對(duì)具有黑箱性質(zhì)的深度學(xué)習(xí)模型而言的, 深度學(xué)習(xí)的黑箱性主要來(lái)源于其高度非線性性質(zhì),每個(gè)神經(jīng)元都是由上一層的線性組合再加上一個(gè)非線性函數(shù)的得到,人們無(wú)法像理解線性回歸的參數(shù)那樣通過(guò)統(tǒng)計(jì)學(xué)基礎(chǔ)假設(shè)來(lái)理解神經(jīng)網(wǎng)絡(luò)中的參數(shù)含義及其重要程度、波動(dòng)范圍。但實(shí)際上我們是知道這些參數(shù)的具體值以及整個(gè)訓(xùn)練過(guò)程的,所以神經(jīng)網(wǎng)絡(luò)模型本身其實(shí)并不是一個(gè)黑箱,其黑箱性在于我們沒(méi)辦法用人類可以理解的方式理解模型的具體含義和行為,而神經(jīng)網(wǎng)絡(luò)的一個(gè)非常好的性質(zhì)在于神經(jīng)元的分層組合形式,這讓我們可以用物質(zhì)組成的視角來(lái)理解神經(jīng)網(wǎng)絡(luò)的運(yùn)作方式。主要分為以下幾類的工作:隱層分析方法、模擬/代理模型、敏感性分析方法。
隱層分析方法:該方法通過(guò)對(duì)隱層運(yùn)用一些可視化方法來(lái)將其轉(zhuǎn)化成人類可以理解的有實(shí)際含義的圖像以展示神經(jīng)網(wǎng)絡(luò)中每層都學(xué)到的概念。我們都知道典型的CNN模型的一個(gè)完整卷積過(guò)程是由卷積-激活-池化(pooling)三個(gè)步驟組成的,也可以通過(guò)反池化-反激活-反卷積這樣的一個(gè)逆過(guò)程,并借助特征可視化幫助我們理解CNN的每一層究竟學(xué)到了什么東西。此外,文獻(xiàn)[]提出了一種網(wǎng)絡(luò)切割的方法以提取CNN的語(yǔ)義概念。
模擬/代理模型:該類方法是針對(duì)黑箱模型,使用蒸餾(Model distillation)技術(shù)得到新的可解釋模型,訓(xùn)練這兩個(gè)模型使他們的結(jié)果近似。但這類算法也存在很大的局限性,比如模型本身并不能被“蒸餾”,或者原始模型與蒸餾后的模型差異很大導(dǎo)致可解釋性模型的意義不再存在。
敏感性分析方法:用于定量描述模型輸入變量對(duì)輸出變量的重要性程度的方法。是令每個(gè)屬性在可能的范圍變動(dòng),研究和預(yù)測(cè)這些屬性的變化對(duì)模型輸出值的影響程度。我們將影響程度的大小稱為該屬性的敏感性系數(shù),敏感性系數(shù)越大,就說(shuō)明屬性對(duì)模型輸出的影響越大。一般來(lái)講對(duì)于神經(jīng)網(wǎng)絡(luò)的敏感性分析方法可以分為變量敏感性分析、樣本敏感性分析兩種,變量敏感性分析用來(lái)檢驗(yàn)輸入屬性變量對(duì)模型的影響程度,樣本敏感性分析用來(lái)研究具體樣本對(duì)模型的重要程度,也是敏感性分析研究的一個(gè)新方向。在金融領(lǐng)域,將敏感性分析與局部特征探索方法(主要是樹(shù)類模型),能夠有效解決金融領(lǐng)域普遍存在先驗(yàn)知識(shí)不足問(wèn)題。
機(jī)器人招商 Disinfection Robot 機(jī)器人公司 機(jī)器人應(yīng)用 智能醫(yī)療 物聯(lián)網(wǎng) 機(jī)器人排名 機(jī)器人企業(yè) 機(jī)器人政策 教育機(jī)器人 迎賓機(jī)器人 機(jī)器人開(kāi)發(fā) 獨(dú)角獸 消毒機(jī)器人品牌 消毒機(jī)器人 合理用藥 地圖 |