丁香五月天婷婷久久婷婷色综合91|国产传媒自偷自拍|久久影院亚洲精品|国产欧美VA天堂国产美女自慰视屏|免费黄色av网站|婷婷丁香五月激情四射|日韩AV一区二区中文字幕在线观看|亚洲欧美日本性爱|日日噜噜噜夜夜噜噜噜|中文Av日韩一区二区

您正在使用IE低版瀏覽器,為了您的雷峰網(wǎng)賬號安全和更好的產(chǎn)品體驗,強烈建議使用更快更安全的瀏覽器
此為臨時鏈接,僅用于文章預(yù)覽,將在時失效
人工智能 正文
發(fā)私信給camel
發(fā)送

0

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

本文作者: camel 2018-03-07 18:49
導(dǎo)語:代碼已公開?。。?

神經(jīng)網(wǎng)絡(luò)的可解釋性一直是所有研究人員心頭的一團(tuán)烏云。傳統(tǒng)的嘗試進(jìn)行可解釋性研究的方法是通過查看網(wǎng)絡(luò)中哪個神經(jīng)元被激發(fā)來來理解,但是即使我們知道“第538號神經(jīng)元被激發(fā)了一點點”也毫無意義,并不能幫助我們理解神經(jīng)元在網(wǎng)絡(luò)中的意義。為了解決這樣的問題 Google Brain的一些研究人員開發(fā)了神經(jīng)網(wǎng)絡(luò)特征可視化方法。

2015 年上半年的時候,谷歌大腦的人員就嘗試將神經(jīng)網(wǎng)絡(luò)理解圖像并生成圖像的過程進(jìn)行可視化。隨后他們開源了他們的代碼 DeepDream。這個方法出乎他們意料的是,竟然促成了一個小小的藝術(shù)運動,很多人通過可視化神經(jīng)網(wǎng)絡(luò)的技術(shù)生成了各種魔幻的作品。

去年在在線期刊 Distill 上,谷歌大腦的研究人員再次使用這項技術(shù)將單個神經(jīng)元在網(wǎng)絡(luò)中是如何工作的進(jìn)行了可視化,這項工作讓我們可以看到在網(wǎng)絡(luò)中間的各個神經(jīng)元如何一步步檢測到圖像中的各個事物,并且讓我們看到隨著網(wǎng)絡(luò)層次的加深圖像如何越來越復(fù)雜。雷鋒網(wǎng)曾經(jīng)在下面這篇文章中詳細(xì)介紹過

谷歌的新CNN特征可視化方法,構(gòu)造出一個華麗繁復(fù)的新世界

但是去年的這項工作漏掉了一項重要的事情:這些神經(jīng)元如何像網(wǎng)絡(luò)那樣連接起來的?

繼去年發(fā)布神經(jīng)網(wǎng)絡(luò)特征可視化方法之后,今天 Google Brain 在神經(jīng)網(wǎng)絡(luò)的可視化上又進(jìn)了一步。Google Brain 將這項工作稱為「神經(jīng)網(wǎng)絡(luò)的核磁共振成像」,我們知道核磁共振技術(shù)是生理學(xué)家可視化大腦工作機理的最有用的工具之一。

Google Brain 在 Distill 發(fā)布的「The Building Blocks of Interpretability」這篇文章中,作者探討了如何將特征可視化與其他可解釋性技術(shù)相結(jié)合,進(jìn)而可以了解網(wǎng)絡(luò)如何一步步做出決策的。這讓我們能夠「站在神經(jīng)網(wǎng)絡(luò)之中」看著網(wǎng)絡(luò)如何一步步做出決策的整個過程。

目前作者已經(jīng)公開其全部代碼 Lucid,并放出 colab notebooks 以方便任何人使用 Lucid 來重現(xiàn)他們的文章。

雷鋒網(wǎng) AI 科技評論將 Google Brain 在 Distill 上的研究內(nèi)容全文翻譯如下:


可解釋性的基石

前言

研究神經(jīng)網(wǎng)絡(luò)可解釋性的技術(shù)往往都是單獨研究的。這篇論文里,作者們提出了強有力的可視化界面,讓讀者得以把各種技術(shù)結(jié)合在一起;不僅如此,現(xiàn)在還可以探索合并后的空間的復(fù)雜結(jié)構(gòu)。

比如,嘗試把特征可視化(一個神經(jīng)元在尋找什么)和歸因(它對輸出的影響如何)結(jié)合起來,我們可以開始探究網(wǎng)絡(luò)是如何把拉布拉多和豹貓區(qū)分開的。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

從網(wǎng)絡(luò)中發(fā)現(xiàn),識別狗時有好幾個檢測軟塌塌的耳朵的檢測器發(fā)揮了重要作用;而檢測貓時就換成了尖耳朵的檢測器

背景

隨著神經(jīng)網(wǎng)絡(luò)越來越成功,新的需求也隨之而來,那就是解釋它們是如何做出決定的:包括基礎(chǔ)性的研究證據(jù)說明它們在真實世界中的表現(xiàn)如何,如何檢測模型的偏倚,以及純粹為了科研目標(biāo)。為了達(dá)到這些目標(biāo),我們不僅需要構(gòu)建足夠深入的抽象,而且也需要以豐富的可視化形式把它們表現(xiàn)出來。然而,目前關(guān)于可解釋性的絕大多數(shù)研究都并沒有做出很好的成果。(幾個很有價值的是 Visualizing Representations: Deep Learning and Human Beings,Understanding neural networks through deep visualization(arXiv:1506.06579),Using Artificial Intelligence to Augment Human Intelligence)

整個機器學(xué)習(xí)社區(qū)的主要精力都花在了開發(fā)更強有力的新方法上,比如特征可視化(feature visualization)、歸因(attribution)以及降維,以便理解和推理神經(jīng)網(wǎng)絡(luò)的行為。然而,這些技術(shù)都是各自沿著不同的研究路徑在前進(jìn),相應(yīng)需要的把成果具體化、實例化的研究卻被忽略了。另一方面,人機交互研究社區(qū)已經(jīng)開始探索為神經(jīng)網(wǎng)絡(luò)設(shè)計豐富的用戶界面,不過他們對機器學(xué)習(xí)領(lǐng)域的抽象方法并沒有多少接觸。對于如何使用這些抽象結(jié)果,目前都還是以相對標(biāo)準(zhǔn)的方法。所以最終我們看到的就是過于簡單的界面(比如顯著性映射圖或者相關(guān)的抽象神經(jīng)元),其中有許多的值是留著未解釋的。更糟糕的是,有很多關(guān)于可解釋性的技巧并沒有完全實施到抽象中來,因為研究者們并沒有遇到什么壓力來讓結(jié)果更通用化和組合化。

在這篇文章中,作者們把現(xiàn)有的各種可解釋性方法看作基礎(chǔ)的、可以相互組合的基礎(chǔ)結(jié)構(gòu),在它們基礎(chǔ)之上構(gòu)建豐富的用戶界面。他們發(fā)現(xiàn)這些互相獨立的技巧也能夠以統(tǒng)一的形式組合起來,在最后得到的界面中發(fā)揮補充性作用。更重要的是,這種統(tǒng)一的形式可以讓我們系統(tǒng)地探索可解釋性界面的整個空間,讓我們得以評估它們是否達(dá)到了特定目標(biāo)。下文中將展示各種樣式的界面,從中展示網(wǎng)絡(luò)檢測發(fā)現(xiàn)了什么,并且解釋網(wǎng)絡(luò)對物體的理解是如何逐步生成的,同時還把其中涉及到的信息保持在適合人類理解的尺度下。比如,我們將會看到一個看到了拉布拉多犬的網(wǎng)絡(luò)是如何檢測它軟塌塌的耳朵的,以及這種檢測行為是如何影響網(wǎng)絡(luò)的分類結(jié)果的。

這篇文章的研究基于的模型是谷歌 GoogLeNet,選用它展現(xiàn)作者們的界面構(gòu)建想法的原因是因為其中的神經(jīng)元有強于一般網(wǎng)絡(luò)的語義性。雖然這篇文章中作者們采用的是精心選擇的任務(wù)和網(wǎng)絡(luò)結(jié)構(gòu),其中的基礎(chǔ)抽象手段和組合它們的方式還是可以用在其它領(lǐng)域的神經(jīng)網(wǎng)絡(luò)中。

讓隱藏層有意義

近期關(guān)于可解釋性的大部分工作都涉及神經(jīng)網(wǎng)絡(luò)的輸入和輸出層。 可以說,這主要是由于這些層具有明確的含義:在計算機視覺中,輸入層代表輸入圖像中每個像素的紅、綠、藍(lán)通道的值,而輸出層由類標(biāo)簽以及它們相關(guān)的概率。

然而,神經(jīng)網(wǎng)絡(luò)的強大之處是在于它們的隱藏層 —— 在每一層,網(wǎng)絡(luò)都會發(fā)現(xiàn)新的輸入表示。 在計算機視覺中,我們使用神經(jīng)網(wǎng)絡(luò)在圖像中的每個位置運行相同的特征檢測器。我們可以將每個圖層的學(xué)習(xí)表示看作一個三維立方體。立方體中的每個單元格都是一個激活,或者神經(jīng)元激活的數(shù)量。x軸和y軸對應(yīng)圖像中的位置,z軸是正在運行的通道(或檢測器)。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

圖中用于計算機視覺任務(wù)的神經(jīng)網(wǎng)絡(luò)的不同的隱含層如何組成了激活值的“立方體”。對立方體的不同分割方法可以把激活值具體到單個神經(jīng)元、單個空間位置或者單個通道

理解這些激活是很困難的,因為我們通常將它們作為抽象向量來工作:

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

通過特征可視化,我們可以將這個抽象矢量轉(zhuǎn)換成更有意義的“語義字典”。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

根據(jù)可視化結(jié)果,似乎可以認(rèn)為網(wǎng)絡(luò)中有一些檢測器,分別對應(yīng)軟塌塌的耳朵、凸鼻子、貓頭、毛茸茸的腿、草地等等。

為了制作一個語義詞典,我們將每個神經(jīng)元激活與該神經(jīng)元的可視化進(jìn)行配對,并根據(jù)激活的大小對它們進(jìn)行排序。 激活與特征可視化的結(jié)合改變了我們與潛在數(shù)學(xué)對象的關(guān)系。 激活現(xiàn)在映射到圖標(biāo)表示,而不是抽象的索引,其中許多表現(xiàn)形式類似于人類的思想,如“松軟的耳朵”、“狗鼻子”或“毛皮”。

語義詞典的強大功能不僅僅是因為它們擺脫了無意義的索引,還因為它們用典型的例子表達(dá)了神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)抽象。通過圖像分類,神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)一組視覺抽象,因此圖像是表示它們的最自然的符號。如果我們使用音頻,更自然的符號很可能是音頻剪輯。這很重要,因為當(dāng)神經(jīng)元看起來符合人類的想法時,很容易將它們縮減為單詞。

但是,這樣做是一項有損失的操作 —— 即使對于熟悉的抽象,網(wǎng)絡(luò)也可能學(xué)到了更深的細(xì)微差別。例如,GoogLeNet具有多個「松軟耳朵」檢測器,它們可以檢測到耳朵的下垂度,長度和周圍環(huán)境略有不同。也可能存在視覺熟悉的抽象概念,但我們?nèi)狈α己玫淖匀徽Z言描述,例如,在太陽浮于水面的地方拍攝特定的光線。此外,網(wǎng)絡(luò)可能會學(xué)習(xí)到對我們來說異乎尋常的新抽象概念 —— 在這里,自然語言會使我們完??!一般來說,規(guī)范化的例子是一種更自然的方式來表示神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)的外來抽象,而不是原生的人類語言。

通過為隱藏層帶來意義,語義字典為我們現(xiàn)有的可解釋性技術(shù)設(shè)置了可組合的構(gòu)建塊。正如我們將看到的,就像它們的基礎(chǔ)向量一樣,我們可以對它們應(yīng)用降維。在其他情況下,語義詞典允許我們進(jìn)一步推進(jìn)這些技術(shù)。例如,除了我們目前使用輸入和輸出層執(zhí)行的單向歸因外,語義詞典還允許我們將特定的隱藏層歸屬到特定的隱藏層。原則上,這項工作可以在沒有語義詞典的情況下完成,但是結(jié)果意味著什么還不清楚。

網(wǎng)絡(luò)看到了什么?

語義詞典讓我們能夠?qū)δ硞€激活進(jìn)行細(xì)致的考察,即每一個單個神經(jīng)元能夠檢測到什么。建立了這種表示之后,我們同樣也可以將一個激活向量作為整體來考慮。這里不再是將單個神經(jīng)元可視化,而是將在給定空間范圍內(nèi)處于 fire 狀態(tài)的神經(jīng)元組合進(jìn)行可視化。(具體來說就是,我們優(yōu)化圖像,以最大化激活點與原始激活向量的點積)

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

將這種技術(shù)應(yīng)用于所有的激活向量,使我們不僅可以看到網(wǎng)絡(luò)在每個位置檢測到的內(nèi)容,而且還可以了解網(wǎng)絡(luò)對整個輸入圖像的理解程度。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

mixed4d 層激活可視化

另外,通過跨層(例如「mixed3a」,「mixed4d」)的工作,我們還可以觀察到網(wǎng)絡(luò)對輸入的理解是如何發(fā)展的:從檢測早期圖層中的邊緣,到后期更復(fù)雜的形狀以及物體的部分。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

同一幅貓狗圖像,不同層的神經(jīng)元對同一個區(qū)域的激活可視化

不過,前面的這些可視化忽略了一個關(guān)鍵的信息——激活的量級大小。我們通過按照激活矢量的大小來縮放每個單元的面積,就可以指出網(wǎng)絡(luò)在該位置檢測到特征的強度了:

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

如何組裝概念?

特征可視化幫助我們回答了「網(wǎng)絡(luò)能夠檢測到什么」這個問題,但是它并沒有回答網(wǎng)絡(luò)如何組裝這些單獨的部分來達(dá)成后面的決策,或者為什么會做出這些決策。

歸因(Attribution)是一組通過解釋神經(jīng)元之間的關(guān)系來回答這些問題的技術(shù)。現(xiàn)在市場上有各種各樣的歸因方法,但到目前為止卻似乎沒有一個能夠給出明確的、正確的答案;事實上,我們甚至有理由認(rèn)為我們目前的所有答案都不太正確。盡管如此,就本文而言,確切的歸因方法并不重要,所以我們作為案例,使用一種最簡單的方法——線性逼近關(guān)系。這種方法可以很容易地用其他任何技術(shù)來代替,所以未來對歸因的改進(jìn)也會相應(yīng)地改善基于它們的界面。

關(guān)于歸因方法有很多重要的研究,但就本文而言,確切歸因方法并不重要。我們使用一種相當(dāng)簡單的方法,線性逼近關(guān)系,但很容易用其他任何技術(shù)來替代。未來對歸因的改進(jìn),當(dāng)然會相應(yīng)地改善基于它們的界面。

顯著圖的空間歸因

最常見的歸因界面稱為顯著圖(saliency map)——一種簡單的熱圖,突出顯示輸入圖像中最能引起輸出分類的像素部分。我們發(fā)現(xiàn)這種方法存在兩個缺陷。

首先,不清楚個別像素是否應(yīng)該是歸因的主要單元。這里每個像素的含義與其他像素極為糾纏,即使對簡單的視覺變換(例如,亮度,對比度等)也會有很差的魯棒性,此外單個的像素還遠(yuǎn)離高級概念(如輸出類)。其次,傳統(tǒng)的顯著圖是一種非常有限的界面類型——它們一次只能顯示一個類的屬性,并且不允許你更深入地探究單個點。由于它們沒有明確地處理隱藏層,因此很難全面探索隱藏層的設(shè)計空間。

作為一種改進(jìn),我們將歸因視為另一個用戶界面的構(gòu)建塊(building block),并將其應(yīng)用于神經(jīng)網(wǎng)絡(luò)的隱藏層。這樣做了之后,我們同時也改變了我們的問題,我們不再問特定像素的顏色是否對「拉布拉多獵犬」的分類很重要,而是問在這個像素位置檢測到的高級別想法(例如「松軟的耳朵」)是否重要。這種方法與類激活映射(CAM)方法類似,但由于它們將結(jié)果解釋回輸入圖像,因此它們錯過了以網(wǎng)絡(luò)隱藏層的豐富行為進(jìn)行交互的機會。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

越向后的層的歸因結(jié)果看起來有越強的語義性。就像我們期待的那樣,歸因的結(jié)果就是軟塌塌的耳朵、凸鼻子、貓頭之類的我們熟悉的局部特征

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

令人驚訝的是,mixed4d 層中下方的凸鼻子特征和網(wǎng)球的特征有不少重合之處,這個特征之后也為“網(wǎng)球”和“拿著蘋果的奶奶”這樣的識別結(jié)果提供了支持

上圖的界面為我們提供了較為靈活的歸因關(guān)系。首先,我們從每個隱藏層的每個空間位置向所有 1,000 個輸出類顯示屬性。為了將這個 1000 維的向量可視化,我們使用降維來產(chǎn)生多向顯著圖。在我們多尺度的激活網(wǎng)格上疊加這些顯著圖,從而提供歸因空間的信息。激活網(wǎng)格能夠?qū)⒄Z義詞典建立的視覺詞匯屬性固定下來。在某個像素上懸停,我們可以看到這個空間位置最有助于哪些類別的輸出。

也許最有趣的是,這個界面允許我們交互式地查看隱藏層之間的歸因。懸停時,額外的顯著圖會遮蓋隱藏層,這在某種意義上就相當(dāng)于「將光線照入黑箱」。這種層到層的歸因或許將成為界面設(shè)計促進(jìn)傳統(tǒng)意義上可解釋性抽象概括的一個主要例子。

通過這個圖,我們開始考慮更高層次概念的歸因。但是在某個特定位置上,會同時檢測到許多概念,通過這個界面很難將它們分開。如果還繼續(xù)關(guān)注空間位置,那么這些概念將仍然糾纏在一起。

通道歸因

顯著圖通過對隱藏層的空間位置歸因,隱式地切割了我們的激活立方體。在這種切割中聚合了所有的通道(Channel),因此我們無法確定每個位置上的哪個特定檢測器對最終輸出分類貢獻(xiàn)最大。

當(dāng)然還有另一種切割激活立方體的方法,那就是對通道的切割,而不是對空間位置的切割。這樣做的結(jié)果就是,我們可以進(jìn)行通道歸因——每個檢測器對最終輸出的貢獻(xiàn)到底有多大?(這種方法類似于Kim等人的同時期工作,他們對學(xué)習(xí)的通道組合進(jìn)行了歸因。)

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

這個圖與我們前面看到的類似:我們進(jìn)行層到層的歸因,但這次是通過通道而不是空間位置。我們再一次使用語義詞典中的圖標(biāo)來表示對最終輸出分類有貢獻(xiàn)的通道。將鼠標(biāo)懸停在單個通道上會顯示覆蓋在輸入圖像上的激活熱圖。

圖例還同時更新顯示其對輸出類的歸因(即此通道支持的top類是什么?)。點擊一個通道可以讓我們深入了解層到層的歸因,讓我們顯式地確定較低層中哪些是最有貢獻(xiàn)的通道,或者較高層中哪些是最受支持的通道。

雖然這些圖側(cè)重于層到層的歸因,但將注意力集中在單個隱藏層上仍然很有價值。 例如,先行圖(teaser ?gure)可以讓我們評估為什么某個類會更有優(yōu)勢。

從以上的討論中,我們可以看到空間位置歸因和通道歸因在揭示網(wǎng)絡(luò)模型方面的強大功能,特別是當(dāng)我們將兩者組合在一起的時候。但不幸的是,這類方法有兩個顯著的問題。一方面,它會給我們反饋大量的信息,由于長尾效應(yīng),這可能需要人工幾個小時的審查才能弄明白哪些對輸出只有輕微的影響;二是,這兩種聚合方法會有大量的丟失,這可能會導(dǎo)致錯過重要的情節(jié)。當(dāng)然,我們可以通過對單個神經(jīng)元進(jìn)行工作來避免有損聚合,或者根本就不聚合,但這反過來又會出現(xiàn)第一個問題。

以人類為尺度

在前面章節(jié)中,我們考慮了三種將激活狀態(tài)的立方體進(jìn)行分割的方法:空間激活、通道、單個神經(jīng)元。每一種方式都存在缺點。如果只使用空間激活或通道,會忽略掉整個情節(jié)中非常重要的部分。例如,「松軟耳朵」探測器(?oppy ear detector)幫助我們將圖像分類為一只拉布拉多犬,當(dāng)與那些沒有利用到的地方相結(jié)合時,情節(jié)會有趣得多。你可以深入到神經(jīng)元的層面來講述整個情節(jié),但是成千上萬的神經(jīng)元中包含太多信息了。即使是數(shù)百個通道,在分裂成單個神經(jīng)元之前,也包含著太多信息!

只是想要在神經(jīng)網(wǎng)絡(luò)中制造有用的界面,還不足以讓事情變得有意義。我們應(yīng)根據(jù)人類需要,而不是依據(jù)大量無用信息。這樣做的關(guān)鍵是找到更有意義的方法將激活分解,有充分的理由相信存在這樣的分解。通常,許多通道或空間位置將以高度相關(guān)的方式協(xié)同工作,最有用的方法是將其視為一個單元。其他通道或位置幾乎沒有活動,在高級概述上可以被忽略。所以,如果我們有正確的工具,那就應(yīng)該能夠找到更好的分解手段。

有一個叫矩陣因子分解(matrix factorization)的研究領(lǐng)域,研究分解矩陣的最優(yōu)策略。通過將立方體壓成空間位置和通道的矩陣,我們可以應(yīng)用這些技術(shù)來獲得更有意義的神經(jīng)元組群。這些組群不會像我們之前看到的組那樣自然地隨著立方體排列整齊,它們將是空間位置和通道的組合。此外,這些組群是用來解釋網(wǎng)絡(luò)在特定圖像上的行為,在另一個圖像上重用相同的分組是無效的,每個圖像都需要計算一組獨特的組。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

除了之前那樣把隱層中的神經(jīng)元自然地分為單個神經(jīng)元、空間位置、不同通道之外,作者們也考慮更靈活地跨越部分空間位置和通道把神經(jīng)元分成不同的組

源于這個因子分解的組將是用戶使用界面的原子。不幸的是,任何分組本質(zhì)上都是將事物減少到人類規(guī)模與保存信息之間的折衷,因為任何聚合都是有損的。矩陣因子分解可以讓我們挑選出針對特定內(nèi)容優(yōu)化的組,這比之前的自然分組要好。

用戶界面的目標(biāo)應(yīng)該會影響矩陣因子分解優(yōu)化的優(yōu)先級。例如,如果想要優(yōu)先考慮網(wǎng)絡(luò)檢測到的東西,我們就希望因子分解能充分地描述激活。相反,如果想要優(yōu)先考慮改變網(wǎng)絡(luò)行為的因素,我們希望因子分解能充分描述梯度。最后,如果想要優(yōu)先考慮是什么導(dǎo)致了現(xiàn)在的行為,我們希望因子分解能充分地描述歸因。當(dāng)然,我們可以在這三個目標(biāo)之間實現(xiàn)平衡,而不是僅僅只優(yōu)化一個目標(biāo)。

下圖中,我們已經(jīng)構(gòu)建了一些組,我們利用非負(fù)矩陣因子分解,按優(yōu)先級來分解激活。請注意大量神經(jīng)元被簡化成一小套組群的過程。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

通過非負(fù)的矩陣分解,作者們把總數(shù)目很大的神經(jīng)元分為一個個小組,讓它們簡明地總結(jié)出整個網(wǎng)絡(luò)的運行狀況。右圖小方塊的不同顏色對應(yīng)了下方不同的特征分別占不同空間的激活值的主要成分

該圖只關(guān)注單個層,但是,正如我們前面看到的,查看多個層以了解神經(jīng)網(wǎng)絡(luò)是如何將低級檢測器聚合到高級概念中是很有用的。

我們優(yōu)化了之前構(gòu)造的組,以理解獨立于其他層的單個層。為了同時理解多個層,我們希望每一層的因子分解都是「兼容的」——將早期層的組自然地組合到后面的層組中。這里我們也可以進(jìn)行因子分解優(yōu)化。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

綠線表示正影響,紅線表示負(fù)影響

在這一節(jié)中,我們認(rèn)識到對激活立方體的分割方法是一個重要的接口決策。我們不再執(zhí)著于于自然的切割,而是構(gòu)建更優(yōu)化的神經(jīng)元組合。這些改進(jìn)的分組更有意義,也更人性化,讓了解網(wǎng)絡(luò)的行為不再那么乏味。

我們這次的可視化方法只是基于提供更好的原子來理解神經(jīng)網(wǎng)絡(luò),探索潛在可能性的一個開始。例如,當(dāng)我們專注于創(chuàng)建更少指示來解釋獨立案例時,最近發(fā)現(xiàn)了有意義的「全局」指示,這是令人興奮的工作——這樣的依據(jù)在嘗試一次理解多個例子或?qū)Ρ饶P蜁r尤其有用。

解釋界面空間

本文中提到的界面思想將功能可視化和歸因等模塊兒結(jié)合在一起。編寫這些模塊兒不是一個隨意的過程,而是遵循基于界面目標(biāo)的結(jié)構(gòu)。例如,如果界面強調(diào)網(wǎng)絡(luò)所能識別的內(nèi)容,則優(yōu)先考慮其認(rèn)知將如何發(fā)展,或者專注于讓事情發(fā)展在人類可控范圍內(nèi)。為了評估這些目標(biāo),并理解這種權(quán)衡,我們需要能夠系統(tǒng)地考慮可能的替代方案。

我們可以將界面視為各個元素的集合。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

每個元素使用特定的呈現(xiàn)風(fēng)格(例如,特征可視化或傳統(tǒng)信息可視化)來顯示特定類型的內(nèi)容(例如,激活或歸因)。該內(nèi)容存在于由網(wǎng)絡(luò)給定層如何分解為原子而定義的底層上,并且可以通過一系列操作(例如,將其過濾或?qū)⑵渫队暗搅硪坏讓由希┻M(jìn)行轉(zhuǎn)換。例如,我們的語義詞典使用特征可視化來顯示隱藏層神經(jīng)元的激活。

表達(dá)這種思維方式的一種方法是使用常規(guī)語法,但我們發(fā)現(xiàn)它對視覺化思考空間是有幫助的。我們可以將網(wǎng)絡(luò)的底層(我們展示的那些層,以及如何將它們分開)作為網(wǎng)格,將網(wǎng)格的內(nèi)容和風(fēng)格繪制為點和連接。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

這個設(shè)置為我們提供了一個框架,開始逐步探索可解釋界面的空間。例如,讓我們再次考慮我們的先行圖(teaser figure)。其目標(biāo)是幫助我們比較輸入圖像的兩種潛在分類。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

在這篇文章中,我們只是抓住了可能性的表面。我們的模塊兒有很多可供探索的組合,并且設(shè)計空間為我們提供了一種系統(tǒng)化的方法。

而且,每個模塊兒都代表了一大類技術(shù)。我們的界面只采用一種方法,但正如我們在每節(jié)中看到的,還有許多功能可視化,歸因和矩陣分解的替代方法。下一步就是嘗試使用這些替代技術(shù)和研究方法來改進(jìn)它們。

最后,這不是一套完整的模塊。隨著新的發(fā)現(xiàn),研究員們擴大了空間。例如,Koh&Liang 提出了解數(shù)據(jù)集示例對模型行為影響的方法。我們可以將數(shù)據(jù)集示例作為我們設(shè)計空間中的另一個底層,從而成為與其他基礎(chǔ)塊兒完全組合的另一個模塊兒。

在這樣做的時候,我們可以想象界面不僅允許我們檢查「數(shù)據(jù)集示例」對最終輸出分類的影響(如 Koh 和 Liang 提出的),而且可以觀察「數(shù)據(jù)集示例」如何影響隱藏層的特征以及它們?nèi)绾斡绊戇@些功能與輸出之間的關(guān)系。例如,如果我們考慮我們的「拉布拉多獵犬」(Labrador retriever)圖像,我們不僅可以看到哪些「數(shù)據(jù)集示例」對模型分類的影響最大,而且可以看到哪些「數(shù)據(jù)集示例」最能引起「松軟耳朵」檢測器觸發(fā),以及哪個數(shù)據(jù)集對探測器影響最大,增加了「拉布拉多獵犬」的分類。

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

盡管今天大多數(shù)模型都經(jīng)過了優(yōu)化簡單目標(biāo)函數(shù)的訓(xùn)練,而我們希望模型在現(xiàn)實世界中做的許多事情都是微妙的,并且很難用數(shù)學(xué)來描述。為這些微妙目標(biāo)去訓(xùn)練模型的一個非常有用的方法是從人類的反饋中學(xué)習(xí)。然而,即使有了人類的反饋,如果模型的有問題的方面在人類反饋的訓(xùn)練體系中沒有表現(xiàn)出強烈的意圖,那么仍然很難訓(xùn)練模型讓它以我們想要的方式行事。

人們對模型決策過程的反饋,可通過可解釋界面進(jìn)行推動,這可能是解決這些問題的有力解決方案。它可以讓我們訓(xùn)練模型,不僅是為了做出正確的決定,也是是為了正確的可解釋性。(然而,這里存在危險:我們正在優(yōu)化我們的模型,以便我們的界面中查找我們想要的方式;如果不小心,這可能會導(dǎo)致模型愚弄我們)

另一個可能性是比較多個模型界面。例如,我們可能想要了解一個模型在訓(xùn)練期是如何演變的,或者當(dāng)你把它遷移到新任務(wù)時,模型會如何變化?;蛘?,可能想了解整個模型家族是如何相互比較的?,F(xiàn)有的工作主要側(cè)重于比較模型的輸出行為,但最近的工作也開始探索比較它們的內(nèi)部表示。這項工作的挑戰(zhàn)之一是我們可能想要對齊每個模型的原子; 如果我們有完全不同的模型,我們能找到它們之間最相似的神經(jīng)元嗎?再聚焦,我們能開發(fā)接口,讓我們一次性評估模型的大型空間嗎?

這些界面有多大可信度?

為了讓這些提供解釋性的界面發(fā)揮出效果,我們就需要相信它們給出的故事和結(jié)論是可靠的。對于目前我們用的這一組技術(shù)和架構(gòu),作者們認(rèn)為其中有兩點是有疑慮的。

  • 對于不同的輸入圖像,神經(jīng)元們的意義是相對固定的嗎,并且特征可視化這個過程對這些意義的表達(dá)是準(zhǔn)確的嗎?語義字典,以及在語義字典基礎(chǔ)上建立的界面,都是建立在前面的問題有肯定答案的基礎(chǔ)上的。

  • 歸因的結(jié)果是合理的嗎?我們目前有的歸因方法都是可以信任的嗎?

有許多更早的研究都發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)中的「方向」從語義角度講是有意義的。其中有一個非常有力的例子,就是可以做「語義算數(shù)」,比如「皇帝」-「男人」+「女人」=「皇后」。在前一篇關(guān)于特征可視化的文章中作者們就基于 GoogLeNet 深入探索了這個問題,發(fā)現(xiàn)其中的多數(shù)神經(jīng)元都可以對應(yīng)某個有意義的想法。然而除了這部分神經(jīng)元之外,作者們也發(fā)現(xiàn)了有很多神經(jīng)元并沒有非常確定的意義,其中有一些神經(jīng)元會同時會對幾種突出的特征產(chǎn)生響應(yīng)(比如同時對汽車和貓)。對于這種狀況,上述提出的界面也有自然的方法可以處理:可以用差異化的特征可視化結(jié)果發(fā)掘神經(jīng)元可以接受的各種不同的含義,或者對語義字典做一些調(diào)整,讓其中的部件之間更加去耦合。當(dāng)然了,就像模型可以被欺騙一樣,這些組成了可視化的特征也可以被欺騙,包括對于對抗性樣本的情況。在作者們看來,思考研究特征的時候并不需要它們是完美無缺的,現(xiàn)在就已經(jīng)可以起到很大作用。實際上,檢測器「走火」的情況可能會更值得仔細(xì)琢磨。

對于歸因方法,近期有研究表明許多目前所用的方法都不是很可靠。有的人可能會問,既然一個函數(shù)的輸出是它的輸入的非線性互動產(chǎn)生的結(jié)果,那么歸因的設(shè)想怎么會有根本性問題呢。這種互動有可能展現(xiàn)出的一種問題就是「路徑依賴」。對這個問題的自然的回答是在用戶界面中顯式地展現(xiàn)出這個信息:這個歸因結(jié)果的路徑依賴程度有多高。然而,我們還有更深入的擔(dān)憂,就是這種路徑依賴性是否是歸因結(jié)果的主要成因。很顯然,對于相鄰的層來說,由于它們之間的連接映射很簡單(近乎于線性),所以這并不是個問題。但同時相關(guān)聯(lián)的輸入也會帶來一些技術(shù)問題,所以作者們相信歸因方法還是站得住腳的。并且,即便對于相聚較遠(yuǎn)的層,作者們的經(jīng)驗也是高級別特征與輸出結(jié)果之間的歸因的穩(wěn)定性也要比高級別特征與輸入之間的穩(wěn)定性更好。所以作者們認(rèn)為在這里路徑依賴并不是一個重要影響因素。

模型行為是非常復(fù)雜的一件事,受到目前的基礎(chǔ)技術(shù)的限制,現(xiàn)在所能揭示出的只有其中的部分視角。關(guān)于可解釋性的未來研究的一個重要方向?qū)情_發(fā)新的技術(shù),借助它們覆蓋到模型行為的更多方面。不過,即便有了這些改進(jìn),作者們也認(rèn)為讓人們對這些方法建立起信心的關(guān)鍵因素應(yīng)當(dāng)是展現(xiàn)出的界面不會誤導(dǎo)人們。接觸到和界面上顯示出的顯式信息的同時,不應(yīng)該引發(fā)用戶對模型產(chǎn)生不正確的隱式推斷。作者們認(rèn)為這篇文章中展示出的界面毋庸置疑在這方面還有提高的空間?;A(chǔ)研究,在機器學(xué)習(xí)和人機交互的交叉口部分的基礎(chǔ)研究,必須要想辦法解決這些問題。

對于可解釋性的種種應(yīng)用,作者們認(rèn)為很大程度上需要相信他們的方法有效、可靠。這一方面是因為不考慮可解釋性的風(fēng)險很高(比如在安全和醫(yī)療領(lǐng)域),另一方面也是因為人們已經(jīng)有了這樣的想法,想要訓(xùn)練一個帶有可解釋性反饋的模型,就可以在對抗性訓(xùn)練的過程中使用所提的可解釋性方法。

結(jié)論 & 未來研究

關(guān)于如何和枚舉性的算法互動,還有非常大的設(shè)計空間,作者們相信和神經(jīng)網(wǎng)絡(luò)互動的設(shè)計空間也同樣地大。為了構(gòu)建出強有力的、值得信任的關(guān)于可解釋性的用戶界面,研究者們面前還有很多的工作要做,不過一旦做出了全面的成果,可解釋性必將成為人類指導(dǎo)構(gòu)建公平、安全、協(xié)調(diào)的 AI 系統(tǒng)的有力方法。

via GoogleBlog & Distill,雷鋒網(wǎng) AI 科技評論編譯

相關(guān)文章:

谷歌的新CNN特征可視化方法,構(gòu)造出一個華麗繁復(fù)的新世界

雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知

谷歌大腦發(fā)布神經(jīng)網(wǎng)絡(luò)的「核磁共振」,并公開相關(guān)代碼

分享:
當(dāng)月熱門文章
最新文章
請?zhí)顚懮暾埲速Y料
姓名
電話
郵箱
微信號
作品鏈接
個人簡介
為了您的賬戶安全,請驗證郵箱
您的郵箱還未驗證,完成可獲20積分喲!
請驗證您的郵箱
立即驗證
完善賬號信息
您的賬號已經(jīng)綁定,現(xiàn)在您可以設(shè)置密碼以方便用郵箱登錄
立即設(shè)置 以后再說