何愷明團隊新作!深度學習網路架構新視角:通過相關圖表達理解神經網路

【導語】愷明大神出品,必屬精品。Facebook的研究員從一個新奇的角度對神經網路的表示與設計進行探索,提出了一種新穎的相關圖表示方式。它有助於對現有網路架構進行更深層次的分析與性能評價。雖然筆者尚未完全看懂這篇論文的核心,但這種相關圖的表示方式、實驗發現等確實挺有意思,也與現有網路結構設計有一定相通之處,故推薦各位同學。

Abstract

​ 神經網路通用被表示成圖的形式(即神經元之間通過邊進行鏈接),儘管這種表示方式得到了廣泛應用,但關於神經網路結構與性能之間的關係卻鮮少有所了解。

​ 作者系統的研究了神經網路的圖結構是如何影響其性能的,為達成該目的,作者開發了一種新穎的稱之為relational graph(相關圖)的圖表示方式,神經網路的層沿圖結構進行多次資訊交互。基於這種圖表示方式,作者發現了這樣幾點有意思發現:

  • 相關圖的靶點(sweet spot)可以促使神經網路的性能極大提升;
  • 神經網路的性能與聚類係數、平均路徑長度成平滑函數關係;
  • 該發現具有跨數據集、跨任務一致性;
  • 優秀的神經網路結構與真實生物神經網路具有驚人的相似性。
  • 該文為神經網路架構設計與理解提供了一種新方向。

Introduction

​ 神經網路可以通過計算圖方式進行表示,神經元可以表示為節點,不同層神經網路之間的連接可以通過有向邊表示。這種圖表示方式說明了神經網路如何進行資訊傳遞。

​ 已有研究表明:神經網路的性能嚴重依賴於網路架構。但是網路架構與性能之間的關聯性卻鮮少有所研究,而這對於NAS尤為重要。從這個角度出發,有這樣幾個開放性的問題:(1) 網路架構與其性能之間是否存在系統性的聯繫呢?(2) 具有優秀性能的神經網路具有什麼樣的結構形式呢?(3)這種結構形式跨數據集、跨任務的泛化性能如何呢?(4)是否存在一種有效的方式可以確認給定網路具有優秀性能呢?

​ 構建這樣一種關聯性同時具有科學與使用價值,因其有助於設計更高效、更高精度額網路架構,同時有助於新硬體架構的設計,理解神經網路的圖結構有助於促進深度學習的前進。

​ 然而,由於如何將神經網路映射為圖形式並不清晰明了,進而構建這樣一種關聯性是非常困難的。計算圖方式一種自然的選擇,但其存在這樣兩個局限性:(1)泛化性能缺失;(2)生物神經元與神經網路的聯繫缺失(生物神經網路不能通過簡單的有向無環圖表示)。

​ 為系統的研究神經網路的圖結構與性能之間的關聯性,作者設計了一種稱之為相關圖的神經網路圖表示方式。關鍵聚焦於資訊交互,而非交單的有向數據流。下圖a給出了示意圖,神經元之間進行多次資訊交互,進而可以確保新的表示方式具有更豐富多樣性的網路表示。

​ 作者同時還設計了一種稱之為”WS-flex”的圖生成器,它有助於神經網路設計空間的系統探索。基於神經科學的發現,作者通過聚類係數與平均路徑長度描述神經網路,這種網路架構具有靈活性與通用性,可以將其轉換為多層感知器與卷積神經網路(見上圖c和d)。

​ 基於影像分類數據集CIFAR10與ImageNet,作者針對網路結構與性能之間的關聯性進行了系統研究並得到了這樣幾點發現:

  • 相關圖的靶點(sweet spot)可以促使神經網路的性能極大提升;
  • 神經網路的性能與聚類係數、平均路徑長度成平滑函數關係;
  • 該發現具有跨數據集、跨任務一致性;
  • 相關圖的靶點可以進行高效辨別,僅需要少量的相關圖與少量訓練;
  • 優秀的神經網路結構與真實生物神經網路具有驚人的相似性。

Relational Graph

​ 為更好的探索神經網路的圖結構,我們首先介紹一下相關圖的概念,並說明相關圖的可以靈活的表示不同的神經網路架構。

Message Exchange over Graph

​ 首先從圖的結果對神經網路進行回顧,定義圖[公式],其中[公式]表示圖的節點,[公式]表示節點之間的邊,同時每個節點具有一個節點特徵[公式]。當神經元之間存在資訊交互時,我們稱上述圖定義為相關圖。資訊交互通過資訊函數(輸入為節點特徵,輸出為資訊)與匯聚函數(輸入為資訊集合,輸出為節點特徵)進行定義。在每一輪資訊交互過程中,每個節點向其近鄰節點發送資訊,並對收到的資訊進行匯聚。每個資訊通過資訊函數[公式]進行變換並在每個節點通過匯聚函數[公式]進行集成。假設進行了R輪資訊交互,那麼第r次的資訊交互可以描述為:

其中[公式]表示近鄰節點集合,註:每個節點都與自身存在連接邊。上式提供了一種廣義的資訊交互。下表給出了不同結構的相關圖的表示配置。

​ 下圖示出了具有4層64維的多層感知器的相關圖表示示意圖。

### Fixed-width MLPs as Relational Graph

​ 多層感知器由多個多層神經元構成,每個神經元進行輸入的加權求和,同時後接激活層。假設MLP的第r層以[公式]作為輸入,[公式]作為輸出,那麼神經元的計算可以描述為:

​ 我們來考慮一種極端情況(輸入與輸出具有相同的維度),此時的多層感知器可以描述為完整相關圖(complete relational graph),它的每個節點[公式]與其他所有節點[公式]相關聯。定長全連接MLP具有特殊的資訊交互定義,[公式]。定長MLP是更廣義模型下的一種特例,此時資訊函數、匯聚函數以及相關圖結構具有可變性。基於上述資訊交互定義,此時有:

### General Neural Networks as Relational Graph

​ 前述公式描述奠定了定長MLP表示為相關圖的基礎,在這部分內容中,我們將進一步討論如何將其擴展為更廣義的神經網路。

  • Variable-width MLP. 變長MLP是一種更通用的形式,無論在MLP中還是在CNN中,特徵維度通常是變長的。作者提出通過Concat方式將特徵擴展為特徵向量,同時將資訊函數擴展為矩陣形式,此時的變換過程描述為:

同時允許(1) 不同層的相同階段具有不同的維度;(2) 同一層內,不同節點具有不同的維度。這種更廣義的定義可以得到更靈活的圖表示。

  • CNN as relational graph. 我們進一步將相關圖應用到CNN,它的輸入為張量[公式],資訊函數同樣進行類似擴展,此時的變換過程可以描述為:

前述Table1給出了更詳細的節點特徵、資訊函數以及匯聚函數在不同網路中的表現形式。

Exploring Relational Graph

​ 在該部分內容中,我們將描述如何設計與探索相關圖空間以更好的研究神經網路結構與其性能之間的關聯性。需要從三個維度進行考慮:

  • Graph Measures;
  • Graph Generators;
  • Control Computational Budget

Selection of Graph Measure

​ 給定複雜的圖結構,GraphMeasures將用於對圖屬性進行描述。該文主要聚焦於一個全局圖度量(average path length)與一個局部圖度量(clustering coefficient)。註:這兩個度量方式已被廣泛應用與神經科學領域。更詳細定義如下:

  • Average path length measure the average shortest path distance between any pairs of nodes;
  • clustering coefficient measure the proportion of edges between the nodes within a given node’s neighborhood, divided by the number of edges that could possibly exist between them, averaged over all the nodes.

Design of Graph Generators

​ 給定所選擇的圖度量方式後,我們期望生成大量的滿足圖度量空間的相關圖,此時需要一個圖生成器。然而,傳統的圖生成器僅僅能生成有限類別的圖,而基於學習的方法則主要用於模仿樣板圖。

​ 上圖左說明了現有圖生成技術的局限性:僅能生成特定類型的圖。為此作者提出了一種新的圖生成器WS-flex,它可以生成更廣義的圖結果(考考上圖右)。關於WS-flex影像生成器的描述見下圖,為避免誤導各位同學,直接將原文搬移過來。

WS-flex可以生成更多樣性的相關圖,也就是說它幾乎可以覆蓋所有經典圖生成方法所生成的圖,見上示意圖。它通過鬆弛節點的約束性得生成WS模型。特別的,WS-flex可以通過節點參數n、平均自由度k以及重置概率p進行描述。而圖中的邊數量可以通過[公式]決定。WS-flex首先常見了一個包含[公式]節點連接的圖,然後隨機挑選e與n節點並進行連接,最後所有邊以概率p重置。作者採用WS-flex生成器在相應空間進行均勻平滑取樣,最終得到了3942個圖,見Figure1c。

Controlling Computational Budget

​ 為更好的對不同圖表示的神經網路進行比較,我們需要確保所有的網路具有相同的複雜度,從而確保了其性能差異僅源自結構的差異。作者提出採用FLOPS作為度量準則,首先計算baseline網路的FLOPS,然後將其作為參考調節不同的網路以匹配該複雜度(容差0.5%)。

Experimental Setup

​ 在CIFAR10實驗過程中,作者採用具有5層512隱層神經元的MLP作為baseline,輸入為3072維,每個MLP層具有ReLU激活與BatchNorm。Batch=128,合計訓練200epoch,初始學習率為0.1,學習率衰減機製為cosine。採用不同種子點訓練5次取平均。

​ 在ImageNet實驗過程中,採用了三種類型的ResNet(ResNet34,ResNet34-sep,ResNet50)、EfficientNet-B0以及簡單的類似VGG的8層CNN。所有模型分別訓練100epoch,學習率方面同前,ResNet的Batch=256,EfficientNet-B0的batch=512。採用了不同種子點訓練三次取平均。

​ 下圖給出了不同實驗結果的系統性效果圖,acf則給出了圖度量的熱圖與性能的示意圖。

​ 總而言之,上圖f示出了現有圖結構優於完整圖baseline,而最佳相關圖在CIFAR10上以1.4%指標優於完整圖baseline,在ImageNet上0.5%~1.2%的指標優於完整圖baseline。

​ 與此同時,我們可以看到:具有優異性能的相關圖傾向於聚焦於靶點附近(見上圖f)。可以通過這樣幾個步驟尋找該靶點:

  • 將上圖a中的3942圖下取樣為52個粗粒度的區域,每個區域記錄了對應區域圖的性能;
  • 記錄具有最佳平均性能的粗粒度區域;
  • 與此同時記錄下與最佳平均性能相關的其他區域;
  • 覆蓋上述區域的最小面積框即為靶點。CIFAR10數據集上的對於5層MLP而言,它的靶點區域為[公式]

​ 如上圖bd所示,模型性能與圖度量準則之間存在二階多項式關係,呈現平滑U型相關性。

​ 接下來,我們再來分析一下相關圖跨跨數據集方面的一致性。從上圖f可以看到:靶點位置具有跨網路結構一致性。

​ 全文到底結束,更多實驗結果建議去查看原文。作者在文中進行了大量的消融實驗、關聯性討論、實現探討以及神經網路與GNN的關聯性。為避免誤導各位同學,這裡就不對實驗部分進行過多介紹,前面主要針對核心實驗結果進行了說明。更多的實驗分析建議各位同學去查看原文,以更好的理解作者想要表達的意思,上文僅為筆者的一點點記錄,難免有理解錯誤之處,還望擔待。

Conclusion

​ 該文提出了一種新的視角:採用相關圖表達分析理解神經網路。該文為為傳統計算架構到圖架構研究提供了一種資訊過渡。與此同時,其他科學領域的的優秀圖結構與方法可以為深度神經網路的理解與設計提供幫助,該文所提方法有助於深度學習網路架構的理解與設計,為未來高效而輕量的網路設計提供了一種引導。