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