神經(jīng)網(wǎng)絡到底是如何運作的?
雖然機器視覺系統(tǒng)在越來越多的領(lǐng)域得到應用,從醫(yī)療保健到自動駕駛汽車,但是要真的理解機器的眼睛到底是如何“看到”事物,為什么它將甲歸類為行人,但將乙歸類為路標,仍然是一個迷。
今日,谷歌與OpenAI發(fā)布新研究,希望通過繪制這些系統(tǒng)用于理解世界的視覺數(shù)據(jù),來進一步打開人工智能視覺領(lǐng)域的黑匣子。
此項研究被稱為“激活地圖集”(Activation Atlases),是一種神經(jīng)元交互方式的最新可視化技術(shù)。
該研究一經(jīng)發(fā)布,就在全網(wǎng)引發(fā)熱議。它能夠像“顯微鏡”一樣,幫助研究人員分析各種算法的工作原理。
不僅能夠揭示它們識別的抽象形狀、顏色與圖案,還能夠揭示它們?nèi)绾螌⑦@些元素結(jié)合起來以識別特定的物體、動物與場景。
如果將之前的研究比作在算法的視覺字母表中顯示單個字母,那么激活地圖集則提供了整個字典,它能夠顯示字母是如何組合在一起制作實際詞匯的。
視覺分類網(wǎng)絡的激活圖集,揭示了許多完全被識別出的特征,如電子設(shè)備、建筑、食物、動物耳朵、植物和水樣背景等等
激活地圖集建立在特征可視化的基礎(chǔ)上,是一種研究神經(jīng)網(wǎng)絡隱藏層究竟可以表示什么的技術(shù)。特征可視化的早期工作主要集中在單個神經(jīng)元上。通過收集數(shù)以萬計的神經(jīng)元相互作用和可視化的樣例,激活地圖集將關(guān)注點從單個神經(jīng)元轉(zhuǎn)移到可視化這些神經(jīng)元所共同代表的空間。
OpenAI的博客介紹稱:激活地圖集比預期的效果更好,似乎有力地表明神經(jīng)網(wǎng)絡的激活層對人類而言是有意義的。這能讓我們更加樂觀地認為,視覺模型能取得非常好的可解釋性。
從不同的訓練樣例中收集一百萬個激活向量,將它們安排在二維空間中,使相似的激活向量緊密地結(jié)合在一起。然后,在每個單元的平均值上施加一個網(wǎng)格并使用特征可視化。
谷歌的Shan Carter是這項工作的首席研究員。Carter說:“拿'鯊魚'這一圖像類別為例,其中會有很多激活因素,比如'牙齒'和'水'。
這項工作并不一定是一項巨大科學突破,但它確實是更廣泛的特征可視化這一研究領(lǐng)域中向前邁出的重要一步。佐治亞理工學院的博士生Ramprasaath Selvaraju(未參與這項工作)認為這項研究“非常令人著迷”,它結(jié)合了許多現(xiàn)有的想法來創(chuàng)造一項”非常有用“的新工具。
因為通常情況下,如果要部署一個關(guān)鍵的軟件,程序員可以通過檢查代碼的所有執(zhí)行路徑,甚至進行形式化驗證來確保安全。但是目前而言如果用到了神經(jīng)網(wǎng)絡,我們進行這種檢查的能力將會受到很大的限制。
有了激活地圖集,人類就可以發(fā)現(xiàn)那些存在于神經(jīng)網(wǎng)絡中而未曾被預料到的問題。例如,神經(jīng)網(wǎng)絡可能會依賴虛假相關(guān)性對圖像進行分類,或者因為重復利用了不同類別間共有的某個特征而導致奇怪的錯誤。人類甚至可以利用這種理解來“攻擊”模型,修改圖像來欺騙它。
部分依賴面條的存在來區(qū)分炒鍋和煎鍋。加入面條會有45%的可能欺騙模型。
在未來,這樣的研究將有很多用途,比如幫助我們建立更高效和先進的算法,還能夠通過讓研究人員進入模型的內(nèi)部來提高其安全性并消除偏誤。“由于神經(jīng)網(wǎng)絡固有的復雜性,它們?nèi)狈山忉屝裕盨elvaraju在采訪中說。但是在未來,當這種網(wǎng)絡經(jīng)常被用于駕駛汽車以及引導機器人時,可解釋性將非常重要。
OpenAI的Chris Olah也參與了這個項目,他說,“感覺有點像創(chuàng)造一個顯微鏡。至少,這就是我們所追求的目標。“
激活地圖集允許研究人員將視覺數(shù)據(jù)算法用于理解世界
激活地圖集的工作原理
要了解激活地圖集和其他功能可視化工具的工作原理,首先需要了解一下AI系統(tǒng)如何識別對象。
實現(xiàn)這一目標的基本方法是使用神經(jīng)網(wǎng)絡:一種與人類大腦大致相似的計算結(jié)構(gòu)(雖然它在復雜性方面落后了無數(shù)倍)。在每個神經(jīng)網(wǎng)絡內(nèi)部有像網(wǎng)狀物一樣連接的人造神經(jīng)元層。像大腦中的細胞一樣,這些細胞會響應刺激——這一過程被稱為激活。重要的是,它們不僅僅能夠被開啟或關(guān)閉;它們有一定的取值范圍,能夠為每次激活賦予特定值或“權(quán)重”。
要將一個神經(jīng)網(wǎng)絡變?yōu)檎嬲杏玫臇|西,你必須提供大量的訓練數(shù)據(jù)。在視覺算法的情況下,這將意味著數(shù)十萬甚至數(shù)百萬被標記為特定類別的圖像。在谷歌和OpenAI的研究人員為這項工作測試的神經(jīng)網(wǎng)絡的情況下,這些類別非常廣泛:從羊毛到溫莎領(lǐng)帶,從安全帶到加熱器。
神經(jīng)網(wǎng)絡使用互相連接的人工神經(jīng)元層來處理數(shù)據(jù)。不同的神經(jīng)元反映圖像的不同部分。
當我們使用這些數(shù)據(jù)訓練網(wǎng)絡時,神經(jīng)網(wǎng)絡中的不同神經(jīng)元會響應對應的圖像。此規(guī)律會連接到圖像的標簽,這種聯(lián)系允許網(wǎng)絡“學習”事物的樣子。一旦經(jīng)過訓練,你就可以向網(wǎng)絡顯示它以前從未見過的圖片。神經(jīng)元將會被新圖片激活,將該圖片與特定類別相匹配。恭喜!您剛剛訓練了機器學習視覺算法。
如果這些解釋聽起來都簡單到令人不安,那是因為,從很多方面而言,它就是這么簡單。像許多機器學習程序一樣,視覺算法本質(zhì)上只是模式匹配。這給予了它們一定的優(yōu)勢(例如,只要你擁有必要的數(shù)據(jù)和計算能力,就可以直接進行訓練算法)。但這也給了它們某些弱點,比如說它們很容易被之前從未見過的圖像輸入弄糊涂這一事實。
自研究人員在2010年初發(fā)現(xiàn)了神經(jīng)網(wǎng)絡在視覺任務方面潛力以來,他們一直在鉆研機制,試圖弄清楚這些算法到底是如何完成任務的。
有一項名為DeepDream的早期實驗,這是2015年發(fā)布的計算機視覺計劃,意圖將任何圖片變成了自身的幻覺版本。DeepDream的視覺效果肯定是有趣的(在某些方面,它們定義了所謂人工智能美學),但該程序也是一個像算法一樣的早期嘗試。Olah說:“在某些方面,這一切都始于DeepDream。”
像這樣的DeepDream圖像都被機器學習算法設(shè)計得盡可能有趣
DeepDream也即將圖像調(diào)整為盡可能有趣的算法。看起來它似乎是在圖像中發(fā)現(xiàn)“隱藏”的圖案,但它更像是有人在著色書中涂鴉:用眼睛、莖桿、螺紋和鼻子填充每一寸空白——盡可能地激發(fā)算法。
后來的研究采用了同一基本方法并對其進行了微調(diào):首先看是什么激發(fā)了網(wǎng)絡中的單個神經(jīng)元、神經(jīng)元群以及網(wǎng)絡中不同層的神經(jīng)元組合。如果說早期的實驗就像Isaac Newton用鈍針扎自己的眼睛來理解視覺一樣太專注,其結(jié)果很偶然,那么最近的研究工作就像Newton用棱鏡分解光線一樣更有目的性。通過反復繪制神經(jīng)網(wǎng)絡每個部分被激活的視覺元素,最終得到神經(jīng)網(wǎng)絡核心的視覺索引圖集。
縮小或放大激活地圖集
激活地圖集展示算法的內(nèi)部運作
激活地圖集實際上向我們展示了關(guān)于算法的內(nèi)部運作的什么內(nèi)容呢?我們可以先看看谷歌和OpenAI的例子,這是為了了解名為GoogLeNet或InceptionV1的著名神經(jīng)網(wǎng)絡的內(nèi)部結(jié)構(gòu)是如何創(chuàng)建的。
例子:
https://distill.pub/2019/activation-atlas/
你可以看到網(wǎng)絡的不同部分怎么對不同的概念做出反應,以及這些概念被怎樣地聚集在一起(例如,狗和鳥被完全分開)。你還可以看到網(wǎng)絡的不同層如何代表不同類型的信息。較低層更為抽象,響應基本的幾何形狀,而較高層將這些解析為可識別的概念。
當你深入研究分類時,你會發(fā)現(xiàn)這才是相當有趣的地方。谷歌和OpenAI給出的一個例子是通氣管和戴水肺的潛水員這兩類之間的區(qū)別。
在下圖中,你可以看到神經(jīng)網(wǎng)絡用于識別標簽的各種激活。左邊是與通氣管高度相關(guān)的激活,右邊是與戴水肺的潛水員密切相關(guān)的激活。中間是兩類共享的激活,而邊緣部分的激活則差異更加明顯。
與通氣管(左)和戴水肺的潛水員(右)緊密相關(guān)的激活
你一眼就能看出一些明顯的顏色和圖案。頂部看起來像顏色鮮艷的魚身上的斑點和條紋,底部則像面具。右邊突出顯示的是一個奇怪的識別,很像火車頭。當研究人員發(fā)現(xiàn)這一點時,他們很困惑。是不是關(guān)于火車頭的視覺信息對戴水肺潛水員的識別很重要?
Carter說:所以我們測試了下,我們想如果我們加入一張蒸汽火車的車頭的圖片,它會有助于識別嗎?意想不到的是,它真的有用。”
三張圖片展示了如何再分類同一張圖片。左邊被識別為通氣管;中間加入火車頭之后識別為潛水員;當火車頭的照片足夠大時被識別為火車頭。
該團隊最終找到了原因:這是由于火車頭的光滑金屬曲線在視覺上接近于潛水員的空氣罐。所以對于神經(jīng)網(wǎng)絡來說,這是潛水員和通氣管之間的一個明顯區(qū)別。為了節(jié)省區(qū)分這兩類的時間,它就從其他地方借用了所需的視覺識別數(shù)據(jù)。
這個例子神奇地揭示了神經(jīng)網(wǎng)絡的工作方式。對于懷疑論者而言,它展示了神經(jīng)網(wǎng)絡的局限性。他們會說,視覺算法可能是有效的,但他們學到的信息實際上和人類理解世界的方式天差地別。這會讓他們懷疑一些做法。例如,你只是在圖片中故意加入幾個像素,神經(jīng)網(wǎng)絡就可能認不出這張圖片。
但對于Carter和Olah這類人來說,激活地圖集和類似的工具所揭示的信息展示了這些算法所達到的驚人的深度和靈活性。例如,Carter指出,算法為了區(qū)分潛水員和通氣管,它還將不同類型的動物與這兩類做分析。
關(guān)注算法內(nèi)部結(jié)構(gòu)可以讓他們更為準確有效
“深水中的動物,比如海龜,會被識別為水肺,水面上的,比如鳥,會被識別為通氣管,”他說。他指出,這是從未讓系統(tǒng)學習的信息,但它自己學習了這些。 “這有點接近對世界更深層次的理解。這讓我很興奮。“
Olah同意,“我發(fā)現(xiàn)在高分辨率下看這些圖集令人震撼,我看到了這些網(wǎng)絡的巨大潛力。”
他們二人希望通過開發(fā)這樣的工具,能有助于推動人工智能整個領(lǐng)域的發(fā)展。通過了解機器視覺系統(tǒng)如何觀看這個世界,理論上我們可以更加有效地構(gòu)建它們并更細致地檢查它們的準確性。
目前工具有限,Olah說我們可以給系統(tǒng)拋出測試數(shù)據(jù)來試著欺騙他們,但這種方法總是受到已知錯誤的限制。 他說:“但如果我們想投入精力的話,這給了我們一個揭露未知問題的新工具,這感覺就像每一代工具都能讓我們更加理解這些網(wǎng)絡的內(nèi)部核心。”
-
神經(jīng)網(wǎng)絡
+關(guān)注
關(guān)注
42文章
4814瀏覽量
103552 -
AI
+關(guān)注
關(guān)注
88文章
35093瀏覽量
279490
原文標題:OpenAI發(fā)布神經(jīng)網(wǎng)絡可視化神器!
文章出處:【微信號:MachineEpoch,微信公眾號:MachineEpoch】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
結(jié)構(gòu)可視化:利用數(shù)據(jù)編輯器剖析數(shù)據(jù)內(nèi)在架構(gòu)?
可視化組態(tài)物聯(lián)網(wǎng)平臺是什么
VirtualLab Fusion中的可視化設(shè)置
VirtualLab Fusion應用:光波導k域布局可視化(“神奇的圓環(huán)”)
BP神經(jīng)網(wǎng)絡與卷積神經(jīng)網(wǎng)絡的比較
BP神經(jīng)網(wǎng)絡的優(yōu)缺點分析
什么是BP神經(jīng)網(wǎng)絡的反向傳播算法
BP神經(jīng)網(wǎng)絡與深度學習的關(guān)系
人工神經(jīng)網(wǎng)絡的原理和多種神經(jīng)網(wǎng)絡架構(gòu)方法

智慧能源可視化監(jiān)管平臺——助力可視化能源數(shù)據(jù)管理

卷積神經(jīng)網(wǎng)絡與傳統(tǒng)神經(jīng)網(wǎng)絡的比較
RNN模型與傳統(tǒng)神經(jīng)網(wǎng)絡的區(qū)別
Moku人工神經(jīng)網(wǎng)絡101

評論