0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

深度神經(jīng)網(wǎng)絡(luò)竟然是模塊化的?

倩倩 ? 來源:量子位 ? 2020-03-27 15:16 ? 次閱讀

深度神經(jīng)網(wǎng)絡(luò)這個黑箱子,似乎有了更清晰的輪廓。

我們都知道深度神經(jīng)網(wǎng)絡(luò)性能十分強大,但具體效果為什么這么好,權(quán)重為什么要這么分配,可能連“設(shè)計者”自己都不知道如何解釋。

最近,一項來自UC伯克利和波士頓大學(xué)的研究,就對這個黑箱子做了進(jìn)一步的解密:

經(jīng)過訓(xùn)練和權(quán)重修剪的多層感知器(MLP),與具有相同權(quán)重分布的隨機網(wǎng)絡(luò)相比,通常模塊化程度更高。

也就是說,在特定條件下,深度神經(jīng)網(wǎng)絡(luò)是模塊化(modularity)的。

研究人員認(rèn)為:

了解神經(jīng)網(wǎng)絡(luò)的模塊化結(jié)構(gòu),可以讓研究工作者更容易理解神經(jīng)網(wǎng)絡(luò)內(nèi)部的工作原理。

這項研究還被ICML 2020接收,也已在GitHub開源(見文末“傳送門”)。

將神經(jīng)網(wǎng)絡(luò)模塊化

為什么要用模塊化來研究深度神經(jīng)網(wǎng)絡(luò)呢?

首先,模塊化系統(tǒng)允許分析系統(tǒng)的研究人員,檢查單個模塊的功能,并將他們對單個模塊的理解合并為對整個系統(tǒng)的理解。

其次,神經(jīng)網(wǎng)絡(luò)由不同的層(layer)組成,在定義網(wǎng)絡(luò)時,不同的層可以單獨配置。

而通過實驗,研究人員發(fā)現(xiàn):

一個深度神經(jīng)網(wǎng)絡(luò)是模塊化的,它可以被分割成神經(jīng)元集合,其中每個神經(jīng)元集合內(nèi)部高度連接,但集合之間的連接度很低。

更具體點來說,研究人員使用圖聚類(graph clustering)算法將訓(xùn)練好的網(wǎng)絡(luò)分解成集群,并將每個集群視為一個“模塊”。

采用的聚類算法叫做譜聚類(spectral clustering),用它來計算一個劃分(partition)以及評估一個聚類的n-cut。

通俗點來說,就是:

先把數(shù)據(jù)轉(zhuǎn)換為圖,所有的數(shù)據(jù)看做是空間中的點,點和點之間用邊相連。距離較遠(yuǎn)的兩個點,它們之間邊的權(quán)重值較低,距離較近的兩點之間邊的權(quán)重值較高。

接下來,進(jìn)行n-cut操作,也就是切圖。目標(biāo)就是要讓切圖后不同的子圖間“邊權(quán)重和”盡可能的低,而子圖內(nèi)的“邊權(quán)重和”盡可能的高。

那么,實驗結(jié)果又如何呢?

實驗主要采用了3個數(shù)據(jù)集,分別是MNIST、Fashion-MNIST和CIFAR10,并在每個數(shù)據(jù)集上訓(xùn)練了10次。

可以看到,對MNIST測試的正確率為98%,F(xiàn)ashion-MNIST的正確率為90%,而CIFAR-10的正確率為40%。修剪后的網(wǎng)絡(luò)通常比隨機網(wǎng)絡(luò)具有更好的聚類性。

下圖顯示了在剪枝前和剪枝后,所有受訓(xùn)練網(wǎng)絡(luò)的n-cut和測試精度結(jié)果。

△每個訓(xùn)練網(wǎng)絡(luò)的n-cut和精度的散點圖

為了幫助解釋這些n-cut值,研究人員還對200個隨機初始化的網(wǎng)絡(luò)進(jìn)行了聚類,n-cut的分布如下圖所示。

△200個隨機初始化網(wǎng)絡(luò)n-cut分布的直方圖和核密度估計

當(dāng)然,作者也指出一點,這項研究的定義只涉及到網(wǎng)絡(luò)的學(xué)習(xí)權(quán)值(learned weight),而不是數(shù)據(jù)分布,更不是模型的輸出或激活的分布。

模塊之間的重要性和依賴性

那么,這些模塊之間的又有怎樣的關(guān)聯(lián)呢?

研究人員進(jìn)一步評估了不同模塊之間的重要性和關(guān)系。

在神經(jīng)科學(xué)領(lǐng)域中,要想確定大腦某個區(qū)域的功能,有一種方法是研究這個區(qū)域意外受損的患者的行為,叫做損傷實驗(lesion experiment)。

類似的,研究人員也采用了這樣的方法:

通過將模塊的神經(jīng)元激活設(shè)置為0,來研究模塊的重要性,并觀察網(wǎng)絡(luò)如何準(zhǔn)確地對輸入進(jìn)行分類。

在這項實驗中,“損傷”的原子單位是每個模塊與每個隱含層的交集,稱之為“子模塊”。

重要性

對于每個子模塊,將傳入組成神經(jīng)元的所有權(quán)重設(shè)置為0,并保持網(wǎng)絡(luò)的其余部分不變。

然后,確定受損網(wǎng)絡(luò)的測試集精度,特別是它比整個網(wǎng)絡(luò)的精度低了多少。

△使用剪枝和dropout在Fashion-MNIST上訓(xùn)練后,不同子模塊的繪圖

如上圖所示,重要的子模塊會先標(biāo)記它的層號,然后再標(biāo)記模塊號。橫軸表示該層神經(jīng)元在子模塊中的比例,縱軸表示由于子模塊受損而導(dǎo)致精度的下降。

這項實驗表明,許多子模塊太小,不能算作重要模塊,而許多子模塊在統(tǒng)計上有顯著影響,但在實際中卻不顯著。然而,有些子模塊顯然對網(wǎng)絡(luò)的運作具有實質(zhì)的重要性。

依賴性

既然已經(jīng)知道了哪些子模塊是重要的,那么最好還能夠理解這些重要的子模塊是如何相互依賴的。

為了做到這一點,研究人員在不同的層中破壞兩個不同的重要子模塊,稱之為X和Y。

通過實驗,研究人員得到了如下結(jié)論:

如果X在Y上不是重要條件,且Y在X上也不是重要條件,那么來自X上的所有信息都傳遞給了Y。

如果X不是以Y為重要條件,而Y是以X為重要條件,則X將其所有信息發(fā)送給Y,并且Y還從其他子模塊中接收到了信息。

如果Y不是以X為條件的重要條件,而是X是以Y為條件的重要條件,則認(rèn)為Y從X接收其所有信息,然后X將信息發(fā)送到其他子模塊。

如果X和Y都是彼此重要的條件,則無法得出任何結(jié)論。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4718

    瀏覽量

    100079
  • 模塊化
    +關(guān)注

    關(guān)注

    0

    文章

    321

    瀏覽量

    21285
  • 數(shù)據(jù)集
    +關(guān)注

    關(guān)注

    4

    文章

    1197

    瀏覽量

    24552
收藏 人收藏

    評論

    相關(guān)推薦

    詳解深度學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)與卷積神經(jīng)網(wǎng)絡(luò)的應(yīng)用

    在如今的網(wǎng)絡(luò)時代,錯綜復(fù)雜的大數(shù)據(jù)和網(wǎng)絡(luò)環(huán)境,讓傳統(tǒng)信息處理理論、人工智能與人工神經(jīng)網(wǎng)絡(luò)都面臨巨大的挑戰(zhàn)。近些年,深度學(xué)習(xí)逐漸走進(jìn)人們的視線,通過
    的頭像 發(fā)表于 01-11 10:51 ?1645次閱讀
    詳解<b class='flag-5'>深度</b>學(xué)習(xí)、<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>與卷積<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>的應(yīng)用

    從AlexNet到MobileNet,帶你入門深度神經(jīng)網(wǎng)絡(luò)

    思維導(dǎo)圖如下:發(fā)展歷程DNN-定義和概念在卷積神經(jīng)網(wǎng)絡(luò)中,卷積操作和池操作有機的堆疊在一起,一起組成了CNN的主干。同樣是受到獼猴視網(wǎng)膜與視覺皮層之間多層網(wǎng)絡(luò)的啟發(fā),深度
    發(fā)表于 05-08 15:57

    神經(jīng)網(wǎng)絡(luò)資料

    基于深度學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò)算法
    發(fā)表于 05-16 17:25

    卷積神經(jīng)網(wǎng)絡(luò)深度卷積網(wǎng)絡(luò):實例探究及學(xué)習(xí)總結(jié)

    深度學(xué)習(xí)工程師-吳恩達(dá)》03卷積神經(jīng)網(wǎng)絡(luò)深度卷積網(wǎng)絡(luò):實例探究 學(xué)習(xí)總結(jié)
    發(fā)表于 05-22 17:15

    解析深度學(xué)習(xí):卷積神經(jīng)網(wǎng)絡(luò)原理與視覺實踐

    解析深度學(xué)習(xí):卷積神經(jīng)網(wǎng)絡(luò)原理與視覺實踐
    發(fā)表于 06-14 22:21

    怎么解決人工神經(jīng)網(wǎng)絡(luò)并行數(shù)據(jù)處理的問題

    本文提出了一個基于FPGA 的信息處理的實例:一個簡單的人工神經(jīng)網(wǎng)絡(luò)應(yīng)用Verilog 語言描述,該數(shù)據(jù)流采用模塊化的程序設(shè)計,并考慮了模塊間數(shù)據(jù)傳輸信號同 步的問題,有效地解決了人工神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 05-06 07:22

    深度神經(jīng)網(wǎng)絡(luò)是什么

    多層感知機 深度神經(jīng)網(wǎng)絡(luò)in collaboration with Hsu Chung Chuan, Lin Min Htoo, and Quah Jia Yong. 與許忠傳,林敏濤和華佳勇合作
    發(fā)表于 07-12 06:35

    基于深度神經(jīng)網(wǎng)絡(luò)的激光雷達(dá)物體識別系統(tǒng)

    【新技術(shù)發(fā)布】基于深度神經(jīng)網(wǎng)絡(luò)的激光雷達(dá)物體識別系統(tǒng)及其嵌入式平臺部署激光雷達(dá)可以準(zhǔn)確地完成三維空間的測量,具有抗干擾能力強、信息豐富等優(yōu)點,但受限于數(shù)據(jù)量大、不規(guī)則等難點,基于深度神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 12-21 07:59

    卷積神經(jīng)網(wǎng)絡(luò)模型發(fā)展及應(yīng)用

    卷積神經(jīng)網(wǎng)絡(luò)模型發(fā)展及應(yīng)用轉(zhuǎn)載****地址:http://fcst.ceaj.org/CN/abstract/abstract2521.shtml深度學(xué)習(xí)是機器學(xué)習(xí)和人工智能研究的最新趨勢,作為一個
    發(fā)表于 08-02 10:39

    【人工神經(jīng)網(wǎng)絡(luò)基礎(chǔ)】為什么神經(jīng)網(wǎng)絡(luò)選擇了“深度”?

    由 Demi 于 星期四, 2018-09-06 09:33 發(fā)表 現(xiàn)在提到“神經(jīng)網(wǎng)絡(luò)”和“深度神經(jīng)網(wǎng)絡(luò)”,會覺得兩者沒有什么區(qū)別,神經(jīng)網(wǎng)絡(luò)還能不是“
    發(fā)表于 09-06 20:48 ?641次閱讀

    快速了解神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的教程資料免費下載

    本文檔的詳細(xì)介紹的是快速了解神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的教程資料免費下載主要內(nèi)容包括了:機器學(xué)習(xí)概述,線性模型,前饋神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò),循環(huán)神經(jīng)網(wǎng)絡(luò)
    發(fā)表于 02-11 08:00 ?33次下載
    快速了解<b class='flag-5'>神經(jīng)網(wǎng)絡(luò)</b>與<b class='flag-5'>深度</b>學(xué)習(xí)的教程資料免費下載

    什么是神經(jīng)網(wǎng)絡(luò)?什么是卷積神經(jīng)網(wǎng)絡(luò)?

    在介紹卷積神經(jīng)網(wǎng)絡(luò)之前,我們先回顧一下神經(jīng)網(wǎng)絡(luò)的基本知識。就目前而言,神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)算法的核心,我們所熟知的很多深度學(xué)習(xí)算法的背后其實都
    的頭像 發(fā)表于 02-23 09:14 ?3132次閱讀

    卷積神經(jīng)網(wǎng)絡(luò)深度神經(jīng)網(wǎng)絡(luò)的優(yōu)缺點 卷積神經(jīng)網(wǎng)絡(luò)深度神經(jīng)網(wǎng)絡(luò)的區(qū)別

    深度神經(jīng)網(wǎng)絡(luò)是一種基于神經(jīng)網(wǎng)絡(luò)的機器學(xué)習(xí)算法,其主要特點是由多層神經(jīng)元構(gòu)成,可以根據(jù)數(shù)據(jù)自動調(diào)整神經(jīng)元之間的權(quán)重,從而實現(xiàn)對大規(guī)模數(shù)據(jù)進(jìn)行預(yù)
    發(fā)表于 08-21 17:07 ?3687次閱讀

    深度神經(jīng)網(wǎng)絡(luò)模型有哪些

    深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks,DNNs)是一類具有多個隱藏層的神經(jīng)網(wǎng)絡(luò),它們在許多領(lǐng)域取得了顯著的成功,如計算機視覺、自然語言處理、語音識別等。以下是一些常見的深度
    的頭像 發(fā)表于 07-02 10:00 ?634次閱讀

    深度神經(jīng)網(wǎng)絡(luò)與基本神經(jīng)網(wǎng)絡(luò)的區(qū)別

    在探討深度神經(jīng)網(wǎng)絡(luò)(Deep Neural Networks, DNNs)與基本神經(jīng)網(wǎng)絡(luò)(通常指傳統(tǒng)神經(jīng)網(wǎng)絡(luò)或前向神經(jīng)網(wǎng)絡(luò))的區(qū)別時,我們需
    的頭像 發(fā)表于 07-04 13:20 ?361次閱讀