读后感与机翻《AOGNets》
本文是在研究朱松純團(tuán)隊中大量使用的“與或圖”概念而找到的一篇學(xué)習(xí)論文,下述論文并非朱松純團(tuán)隊的,而是北卡州立大學(xué)一個博士生發(fā)明的,其實驗室專門研究可解釋性深度學(xué)習(xí)。
?
讀后感
-
作者干了什么事?
- 業(yè)界第一個將圖像語法(與或圖)和深度學(xué)習(xí)相結(jié)合,創(chuàng)造出一種新型網(wǎng)絡(luò)結(jié)構(gòu):Deep Grammer Model,該結(jié)構(gòu)在目標(biāo)分類和目標(biāo)檢測數(shù)據(jù)集上,獲得堪比ResNet的效果。
-
怎么實現(xiàn)的?
- (細(xì)節(jié)暫時還沒看,下一步結(jié)合源碼詳細(xì)研究下)
-
是否有落地的價值?
- 無論是精度還是速度,似乎很有開展遷移測試的價值。
?
《AOGNets: Compositional Grammatical Architectures for Deep Learning》,
基于語法模型(與或圖語法)的深度學(xué)習(xí),CVPR2019,https://github.com/iVMCL/AOGNet-v2
?
摘要
神經(jīng)結(jié)構(gòu)是提高深度神經(jīng)網(wǎng)絡(luò)(DNNs)性能的基礎(chǔ)。這篇文章介紹了深層的語法結(jié)構(gòu),利用了兩個世界的最好:語法模型和DNNs。所提出的結(jié)構(gòu)原則地結(jié)合了前者的可組合性和可重構(gòu)性,以及后者的可學(xué)習(xí)性和豐富的特征。在本文中,我們利用和或語法(AOG)[55, 75, 74]作為網(wǎng)絡(luò)生成器,并將生成的網(wǎng)絡(luò)稱為AOGNets。一個AOGNet由許多階段組成,每個階段都由許多AOG構(gòu)建塊組成。一個AOG構(gòu)建塊將它的輸入fea- ture map沿著特征通道分成N組,然后把它當(dāng)作一個包含N個單詞的句子。然后在自底向上的句子分析中共同實現(xiàn)了短語結(jié)構(gòu)語法和依賴語法,以更好地解釋句子的特征和重用。它為最先進(jìn)的DNNs開發(fā)的最佳實踐提供了一個統(tǒng)一的框架。在實驗中,對AOGNet進(jìn)行了CIFAR-10、CIFAR-100和ImageNet-1K分類基準(zhǔn)測試和MS- COCO目標(biāo)檢測和分割基準(zhǔn)測試。在ci遠(yuǎn)-10、ci遠(yuǎn)-100和ImageNet-1K中,AOGNet的性能優(yōu)于ResNet[23]及其大多數(shù)變異螞蟻、ResNeXt[66]和基于注意的變體SENet[27]、DenseNet[29]、DualPathNet[7]。AOGNet還通過網(wǎng)絡(luò)分析[4]得到了最佳模型可解釋性評分。AOGNet在對抗性防御中顯示出了更好的潛力。在MS-COCO中,AOGNet獲得比Mask R-CNN[22]中的ResNet和ResNeXt脊骨更好的表現(xiàn)。
1 介紹
1.1?動機(jī)和目的
近年來,深度神經(jīng)網(wǎng)絡(luò)(DNNs)[38,33]在許多視覺任務(wù)中顯著提高了預(yù)測精度,并在圖像分類任務(wù)中獲得了超人的性能[23,58,29,7]。這些進(jìn)展主要是通過共同解決兩個問題的工程網(wǎng)絡(luò)架構(gòu)來實現(xiàn)的:通過深入或擴(kuò)展來增加代表性的能力,以及通過使用隨機(jī)梯度下降的反向傳播來保持優(yōu)化的可行性(例如,van- ishing和/或爆炸梯度問題)。鑒于目前DNNs缺乏理論基礎(chǔ),這一戲劇性的成功并不一定說明其足夠充分。不同的方法值得探索,以擴(kuò)大神經(jīng)結(jié)構(gòu)的范圍,尋求更好的DNNs。例如,Hinton最近指出了當(dāng)前卷積神經(jīng)網(wǎng)絡(luò)的一個關(guān)鍵缺陷:根據(jù)最近的神經(jīng)科學(xué)研究,這些人工網(wǎng)絡(luò)沒有包含足夠的層次結(jié)構(gòu)[25,53]。在本文中,我們感興趣的是語法引導(dǎo)的網(wǎng)絡(luò)生成器(圖1)。
圖1所示。說明我們的AOG構(gòu)建塊語法指導(dǎo)網(wǎng)絡(luò)生成器。由此產(chǎn)生的網(wǎng)絡(luò)AOGNets在Ima- geNet中使用了40.3M參數(shù),獲得了80.18%的top-1精度,顯著優(yōu)于ResNet-152 (77.0%, 60.2M)、ResNeXt-101(79.6%, 8390萬)、DenseNet-Cosine-264 (79.6%, 73M)和DualPathNet-98(79.85%, 6160萬)。參見正文。(彩色觀看效果最佳)
神經(jīng)結(jié)構(gòu)設(shè)計和搜索可以作為乘積空間中包含兩個子空間的組合搜索問題(圖2 (a)):
- 由所有有向無環(huán)圖(DAGs)組成的結(jié)構(gòu)空間,開始節(jié)點表示輸入原始數(shù)據(jù),結(jié)束節(jié)點表示任務(wù)丟失函數(shù)。為獲得可行的補(bǔ)償,必須提供折扣。
- 一個DAG中包含所有可能的im- plementing節(jié)點的轉(zhuǎn)換函數(shù)的節(jié)點操作空間,如Convolu- tion+BatchNorm [31]+ReLU[33],及其在不同內(nèi)核大小和不同特征通道數(shù)下實現(xiàn)的瓶頸[23]。
圖2。舉例說明(a)神經(jīng)結(jié)構(gòu)的空間,(b)基于構(gòu)造塊的設(shè)計,(c) GoogLeNet [58], ResNet [23], ResNeXt [66], DenseNet[29]和DualPathNets[7]中流行的構(gòu)造塊的例子。詳情見正文。
結(jié)構(gòu)空間幾乎是無界的,給定結(jié)構(gòu)的節(jié)點操作空間也是組合的。神經(jīng)結(jié)構(gòu)的設(shè)計和搜索是一個具有挑戰(zhàn)性的問題,由于搜索空間呈指數(shù)大,且目標(biāo)函數(shù)高度非凸。如圖2 (b)所示,為了減輕這種差異,模擬神經(jīng)結(jié)構(gòu)設(shè)計和搜索,以設(shè)計或搜索積木結(jié)構(gòu)。然后,DNN由預(yù)定義數(shù)量的階段組成,每個階段都有少量的構(gòu)建塊。在一定假設(shè)條件下,[1]的理論研究也為這種基于分段的設(shè)計提供了理論支持。圖2 (c)顯示了一些具有不同結(jié)構(gòu)的常用構(gòu)造塊的例子。兩個問題自然出現(xiàn)了:
- 我們能否在一個簡單而優(yōu)雅的框架中統(tǒng)一流行的構(gòu)建塊所使用的最佳實踐?更重要的是,我們能否以一種有原則的方式生成建筑塊,從而形成網(wǎng)絡(luò),從而有效地展開空間(圖2 (a)) ?(如果可行)
- 在不增加模型復(fù)雜性和計算成本的情況下,統(tǒng)一的構(gòu)建塊/網(wǎng)絡(luò)生成器能否在精度、模型可解釋性和對抗魯棒性方面證明性能?如果是的話,其潛在的影響將是廣泛而深刻的,因為表征學(xué)在許多實際應(yīng)用中都是如此。
為了解決上述問題,我們首先需要在站在設(shè)計底層智慧更好的網(wǎng)絡(luò)體系結(jié)構(gòu):它通常在于找到網(wǎng)絡(luò)結(jié)構(gòu)能夠支持靈活多樣的信息流動為探索新功能,重用現(xiàn)有的功能在以前的層和back-propagating學(xué)習(xí)信號(例如,漸變)。那么,我們需要開發(fā)和制定哪些關(guān)鍵原則,以使我們能夠以一種比現(xiàn)有網(wǎng)絡(luò)更好的方式有效地展開圖2 (a)中的結(jié)構(gòu)空間?組合性、可重構(gòu)性和橫向連通性是認(rèn)知科學(xué)、神經(jīng)科學(xué)和模式理論中眾所周知的原則[13,47,19,14,34,14]。它們是人類學(xué)習(xí)豐富知識和適應(yīng)不同環(huán)境的非凡能力的基礎(chǔ),尤其是在視覺和語言方面。然而,它們還沒有完全明確地集成到DNNs中。
在本文中,我們提出了一種構(gòu)造語法結(jié)構(gòu),它可以實現(xiàn)構(gòu)造塊設(shè)計的組合性、可重組性和橫向連通性。我們使用and - or語法(AOG)[55, 75, 74],并建議采用AOG構(gòu)建塊來統(tǒng)一在現(xiàn)有流行構(gòu)建塊中開發(fā)的最佳實踐。我們的方法深度集成了分層和組合語法以及DNNs,以便在深度表示學(xué)習(xí)中充分利用這兩個世界的優(yōu)點。
為什么語法?在自然語言處理和計算機(jī)視覺中,語法模型是眾所周知的。圖像語法[75,10,74,13]是在深度神經(jīng)網(wǎng)絡(luò)最近重新流行之前計算機(jī)視覺的主要方法之一。隨著(DNN)最近的復(fù)蘇,一個基本的難題出現(xiàn)了,語法模型更明確的組成結(jié)構(gòu)和更好的分析和理論潛力,往往比他們的神經(jīng)網(wǎng)絡(luò)對手表現(xiàn)得更差。
正如大衛(wèi)·芒福德(David Mumford)所指出的那樣,語言語法只不過是更古老語法的最新延伸,所有智能動物的大腦都內(nèi)置了這些語法,用來分析感官輸入,構(gòu)造它們的動作,甚至形成它們的思維。[46]。我們提出的AOG構(gòu)建塊在分析感覺輸入方面表達(dá)能力很強(qiáng),彌補(bǔ)了文法和DNNs之間的性能差距。它還實現(xiàn)了靈活多樣的網(wǎng)絡(luò)結(jié)構(gòu),以滿足Hinton在DNNs[25]中提高結(jié)構(gòu)充大性的要求。
1.2?方法概述
我們首先總結(jié)現(xiàn)有構(gòu)建塊中的最佳實踐,然后簡要概述我們提出的AOG構(gòu)建塊(圖1),以及它如何統(tǒng)一現(xiàn)有的構(gòu)建塊。
現(xiàn)有的構(gòu)建模塊通常不能完全實現(xiàn)這三個原則(組合性、可重構(gòu)性和橫向連接)。
- InceptionNets或GoogLeNets[58]采用了一種淺層前饋的分裂變換-聚合啟發(fā)式進(jìn)行特征探索,其靈感來自于網(wǎng)絡(luò)中的網(wǎng)絡(luò)設(shè)計[42]和[1]分期設(shè)計的理論研究。然而,過濾器的數(shù)量和大小是為每個單獨的轉(zhuǎn)換而定制的,模塊是逐步定制的。交錯組卷積[71]具有類似的精神,但使用更簡單的方案。
- 受高速公路網(wǎng)[56]的啟發(fā),ResNets[23]提供了一種簡單而有效的解決方案,使網(wǎng)絡(luò)能夠在不犧牲優(yōu)化可行性的情況下享受深入或擴(kuò)展的樂趣。從表示學(xué)習(xí)的角度來看,ResNet[23]中的跳轉(zhuǎn)連接有助于有效的特性重用。然而,他們沒有意識到在GoogLeNets中所做的拆分部分。
- ResNeXts在ResNets中添加了spit組件,并在轉(zhuǎn)換中使用組卷積解決了Inception模塊的缺點。
- Deep Pyramid ResNets[20]不像vanilla ResNets那樣在每個殘差單元下采樣時急劇增加特征通道,而是在構(gòu)建塊之間逐漸增加特征通道。
- DenseNets[29]明確區(qū)分了添加到網(wǎng)絡(luò)的信息和保存的信息。使用了與特征圖連接在一起的密集連接,這對于特征探索是有效的,但缺乏像ResNets中那樣的特征重用能力。
- 雙路徑網(wǎng)絡(luò)(DPN)[7]并行利用ResNet塊和DenseNet塊來平衡feature重用和feature exploration。
- Deep Layer Aggregation networks (DLA)[69]在堆疊構(gòu)建塊(如ResNet塊)時迭代和分層地聚合特征層次。
我們的AOG構(gòu)建塊是分層的,組成和可重新配置的橫向連接設(shè)計。如圖1所示,一個AOG構(gòu)建塊將其輸入的feature map沿著feature channels分成N組,并將其視為一個包含N個單詞的句子。然后共同實現(xiàn)了自下而上解析句子的短語結(jié)構(gòu)語法(垂直組合)[12,13,11,75,74,55]和依賴語法(圖1中粉紅色的水平連接)[21,75,14],以便更好地挖掘和重用特征:
- 短語結(jié)構(gòu)語法是[55,65]方法的一維特例。它也可以理解為自然語言處理中著名的Cocke- young - kasami (CYK)解析算法根據(jù)二進(jìn)制合成規(guī)則的修改版本。
- 依賴文法被集成以捕獲橫向連接,并提高表示的靈活性和功能。
在一個AOG構(gòu)建塊中,每個節(jié)點對其輸入應(yīng)用一些基本操作T(·)(例如,Conv-BN-ReLU),節(jié)點有三種類型:
- 終端節(jié)點以輸入特征圖的一個按通道劃分的切片(即k-gram)作為輸入。
- and -node實現(xiàn)復(fù)合,它的輸入是通過連接其語法子節(jié)點的特征來計算的,如果存在橫向連接,則添加橫向連接。
- or節(jié)點表示備選組合,其輸入是其句法子節(jié)點的特征和如果存在橫向連接的元素智慧的總和。
我們的AOG構(gòu)建塊統(tǒng)一了在流行構(gòu)建塊中開發(fā)的最佳實踐,
- 終端節(jié)點實現(xiàn)了在GoogLeNets[58]和ResNeXts[66]中所做的分裂轉(zhuǎn)換啟發(fā)式(或組卷積),但在多個級別上(包括重疊的組卷積)。它們還在多個級別上實現(xiàn)跳轉(zhuǎn)連接。與ResNets、densenet和DPNs中的基于級聯(lián)的疊加方案不同,termninel節(jié)點可以并行計算以提高效率。非終端節(jié)點實現(xiàn)聚合。
- and節(jié)點實現(xiàn)類似densenet的聚合(即連接)[29],用于特性探索。
- or節(jié)點實現(xiàn)類似resnet的聚合(例如,求和)[23]以實現(xiàn)特性重用。
- 這種層次性使得Deep Pyramid ResNets[20]中特征通道逐漸增加,也使得網(wǎng)絡(luò)的深度和寬度得到很好的平衡。
- 復(fù)合結(jié)構(gòu)提供了比DPN[7]和DLA更靈活的信息流[69]。
- 橫向連接在不引入額外參數(shù)的情況下,產(chǎn)生了特征多樣性,增加了節(jié)點沿路徑的有效深度。
我們堆疊AOG構(gòu)建塊,形成一個深層的AOG網(wǎng)絡(luò),稱為AOGNet。圖3示出了一個三級AOGNet。我們的AOGNet利用了語法的兩個優(yōu)良特性:(1)基于原語字典和一組生成規(guī)則,有原則地構(gòu)造不同網(wǎng)絡(luò)結(jié)構(gòu)的靈活性和簡便性;以及(ii)它們明確的層次結(jié)構(gòu)和組合結(jié)構(gòu)的高度表達(dá)力和簡約緊湊。
圖3。3階段AOG網(wǎng)絡(luò)示意圖,第1、3階段為1個AOG構(gòu)建塊,第2階段為2個AOG構(gòu)建塊。注意,不同的階段可以使用不同的AOG構(gòu)建塊。為了簡單起見,我們展示了相同的一個。主干可以是普通卷積也可以是卷積+MaxPooling。(彩色觀看效果最佳)
2 相關(guān)工作和我們的貢獻(xiàn)
網(wǎng)絡(luò)架構(gòu)是提高DNNs性能的基礎(chǔ)。在本節(jié)中,我們主要關(guān)注手工構(gòu)建的架構(gòu)。神經(jīng)結(jié)構(gòu)搜索的相關(guān)工作可參考調(diào)查論文[9,68]。
手工制作的網(wǎng)絡(luò)架構(gòu)。在5層LeNet5[38]提出20多年后,8層AlexNet[33]在2012年ImageNet[52]上的突破性表現(xiàn)引發(fā)了最近神經(jīng)網(wǎng)絡(luò)的復(fù)蘇。AlexNet在操作員領(lǐng)域提出了兩種新的見解:直線單元(ReLu)和Dropout。從那時起,人們花了很多精力去學(xué)習(xí)更深入的類似alexnet.com的網(wǎng)絡(luò),他們的直覺是越深越好。VGG網(wǎng)[5]提出了一個19層的網(wǎng)絡(luò),其思路是使用多個連續(xù)層的小濾波器(如33)通過一層大濾波器獲得接受場,以及在卷積中采用較小的步長來保存信息。network-in-network[42]中提出了一種特殊的情況11卷積,用于減小或擴(kuò)展連續(xù)層之間的特征維數(shù),并在許多網(wǎng)絡(luò)中得到了廣泛的應(yīng)用。VGG網(wǎng)絡(luò)還顯著增加了計算成本和內(nèi)存占用。
22層的GoogLeNet[59]引入了第一個inception模塊和一個11卷積實現(xiàn)的瓶頸方案來降低計算量。進(jìn)一步深層的主要障礙在于優(yōu)化中的梯度消失問題,該問題在高速公路網(wǎng)[56]中提出并由ResNets[23]推廣的一種新的結(jié)構(gòu)設(shè)計——短路徑或跳接解決,特別是與批量標(biāo)準(zhǔn)化(BN)[31]相結(jié)合時。在最近的文獻(xiàn)[23,58]中,超過100個層是流行的設(shè)計,甚至在像ImageNet這樣的大規(guī)模數(shù)據(jù)集上訓(xùn)練了超過1000個層[30,72]。分形網(wǎng)絡(luò)[37]和深度融合網(wǎng)絡(luò)[63]提供了一種實現(xiàn)無殘差超深網(wǎng)絡(luò)訓(xùn)練的捷徑的替代方法。作為對更深層次的補(bǔ)充,寬度在resnet和基于起始的網(wǎng)絡(luò)中也很重要[70,66,71]。DenseNets[29]超越了ResNets中的一階跳躍連接,提出了一種密集連接的網(wǎng)絡(luò)架構(gòu)和連接方案,以實現(xiàn)特征的重用和挖掘;DPNs[7]提出了剩余和密集連接交替結(jié)合的方式,以實現(xiàn)更有效的特征挖掘和重用。DLA networks[69]進(jìn)一步發(fā)展了迭代和層次聚合模式,獲得了很好的性能。跳連接和密集連接都使順序結(jié)構(gòu)適應(yīng)于有向和無環(huán)圖(DAG)結(jié)構(gòu)的網(wǎng)絡(luò),這在較早的遞歸神經(jīng)網(wǎng)絡(luò)(RNN)[3,18]和ConvNets[67]中被探索過。
大部分工作集中在提高空間編碼和利用空間維數(shù)減少。壓縮和激發(fā)模塊[27]是最近提出的一種簡單而有效的方法,專注于信道編碼。沙漏網(wǎng)絡(luò)[48]提出了沙漏模塊,包括子抽樣和上抽樣,以享受自底向上/自頂向下的重復(fù)特性探索。
我們的AOGNet是由直觀的簡單但有原則的語法創(chuàng)建的。它與初始模塊[58]、深度融合網(wǎng)[63]和國防后偵局[69]具有相同的精神。
語法。[75]提出了圖像語法的一般框架。目標(biāo)檢測語法是目標(biāo)檢測的主要方法[10,74,55,41,39,40],最近已經(jīng)與DNNs相結(jié)合[60,61,6]。概率程序歸納[57,35,36]已成功地應(yīng)用于許多場合,但在諸如大規(guī)模圖像分類和目標(biāo)檢測等困難的視覺理解任務(wù)中并沒有表現(xiàn)出良好的性能。最近,遞歸皮層網(wǎng)絡(luò)[14]被提出在學(xué)習(xí)中具有更好的數(shù)據(jù)效率,它采用了AND-OR語法框架[75],顯示了文法在開發(fā)通用AI系統(tǒng)中的巨大潛力。
我們的貢獻(xiàn)。本文在深度表示學(xué)習(xí)領(lǐng)域做出了兩大貢獻(xiàn):
- 提出了用于深度學(xué)習(xí)的復(fù)合語法結(jié)構(gòu),并提出了深度和或語法網(wǎng)絡(luò)(AOGNets)。AOGNets以分層和組合的方式促進(jìn)了特性探索和特性重用。AOGNets統(tǒng)一了最先進(jìn)的DNNs(如GoogLeNets、ResNets、ResNeXts、DenseNets、DPN和DLA)開發(fā)的最佳實踐。據(jù)我們所知,這是設(shè)計語法引導(dǎo)的網(wǎng)絡(luò)生成器的第一項工作。
- 它在CIFAR和ImageNet-1K分類基準(zhǔn)測試和MS-COCO目標(biāo)檢測和分割基準(zhǔn)測試中取得了比許多先進(jìn)網(wǎng)絡(luò)更好的性能。它也獲得了更好的模型可解釋性,顯示了更大的潛力對抗性防御。
3 AOGNets
在本節(jié)中,我們首先介紹構(gòu)建我們的AOGNets結(jié)構(gòu)的細(xì)節(jié)。然后,為AOGNet中的節(jié)點定義節(jié)點操作函數(shù)。我們還提出了一種簡化整個結(jié)構(gòu)的方法,該方法刪除了語法上對稱的節(jié)點。
3.1?AOGNet的結(jié)構(gòu)
公式較多,見原文。
算法1:構(gòu)造一個AOG積木塊
?
3.2 AOGNet中的節(jié)點操作
公式較多,見原文。
3.3?簡化AOG構(gòu)建塊
短語結(jié)構(gòu)語法是一種句法冗余的語法,它通過二元組合規(guī)則揭示了所有可能的構(gòu)象。在表示學(xué)習(xí)中,我們也希望增加網(wǎng)絡(luò)中不同階段的特征維數(shù)以獲得更好的表示能力,但盡量不顯著增加參數(shù)總數(shù)。為了平衡我們的AOG構(gòu)建塊的結(jié)構(gòu)復(fù)雜性和特性維度,我們建議通過刪除一些語法上冗余的節(jié)點來簡化一個AOG構(gòu)建塊的結(jié)構(gòu)。如圖4所示,修剪算法很簡單:給定一個完整結(jié)構(gòu)的AOG構(gòu)建塊,我們從一個空的簡化塊開始。我們首先將根或節(jié)點添加到簡化的塊中。然后,我們遵循整個結(jié)構(gòu)塊中節(jié)點的BFS順序。對于遇到的每個or節(jié)點,我們只保留簡化塊中當(dāng)前子節(jié)點集合中沒有語法上對稱的左-右對應(yīng)項的子節(jié)點。對于遇到的節(jié)點和終端節(jié)點,我們將它們添加到簡化塊中。修剪算法可以集成到算法1中。例如,考慮圖4左邊的根or節(jié)點的四個子節(jié)點,第四個子節(jié)點被刪除,因為它與第二個對稱。
圖4。說明通過修剪語法上對稱的or節(jié)點的子節(jié)點來簡化AOG構(gòu)建塊。左:一個完整結(jié)構(gòu)的AOG積木塊,由10個終端節(jié)點、10個和節(jié)點、10個或節(jié)點組成。要修剪的節(jié)點和邊用黃色標(biāo)出。右:簡化的AOG積木塊,由8個終端節(jié)點、5個和節(jié)點、8個或節(jié)點組成。(彩色觀看效果最佳)
4 實驗
我們的AOGNet在CIFAR-10和CIFAR- 100[32]、ImageNet-1K[52]分類基準(zhǔn)和MS-COCO目標(biāo)檢測和分割基準(zhǔn)[43]中進(jìn)行了測試。
4.1?實現(xiàn)設(shè)置和詳細(xì)信息
公式較多,見原文。
4.2?ImageNet 1K中的圖像分類
ILSVRC 2012分類數(shù)據(jù)集[52]由大約120萬張用于訓(xùn)練的圖像和50000張用于驗證的圖像組成,來自1000個類。我們采用與[23,29]相同的數(shù)據(jù)增強(qiáng)方案(隨機(jī)裁剪和水平翻轉(zhuǎn))來訓(xùn)練圖像,并在測試時使用尺寸為224 224的單次裁剪。根據(jù)通用協(xié)議,我們評估驗證集上的top-1和top-5分類錯誤率。
模型參數(shù)。我們測試了三種具有不同模型復(fù)雜性的AOGNets。相比之下,我們使用模型尺寸作為AOGNet的名稱標(biāo)簽(例如,AOGNet- 12M表示AOGNet有1200萬個參數(shù)左右)。莖(見圖3)使用三個Conv3x3-BN層(第一層是stride 2),然后是一個2倍最大的pooling層,使用stride 2。這三個AOGNets都使用四個階段。在一個階段中,我們使用相同的AOG構(gòu)建塊,而不同的階段可能使用不同的塊。然后Nn指定一個階段,其中N是原始大小(算法1),N是塊的數(shù)量。過濾器通道由一個5元組定義,用于指定4個階段的輸入和輸出維度。三種AOGNet的詳細(xì)規(guī)格為:AOGNet- 12m使用(22、41、43、21)的分級,帶有過濾通道(32,128,256、512,936);AOGNet- 40m使用(22、41、44、21)的分級,帶有過濾通道(60,240、448,968、1440);AOGNet- 60M使用(22、42、45、21)的分級,帶有過濾通道(64,256,512、1160、1400)。
訓(xùn)練設(shè)置。濾波器權(quán)值采用隨機(jī)參數(shù)初始化。對于批處理標(biāo)準(zhǔn)化(BN)層,我們使用0初始化所有偏移量參數(shù)。我們使用1來初始化所有的尺度參數(shù),除了每個T()中的最后一個BN層,在這里我們將尺度參數(shù)初始化為0,就像在[17]中所做的那樣。在最后兩個階段,我們使用Dropout[33],其下降率為0.1。我們在培訓(xùn)中使用8個gpu (NVIDIA V100)。批處理大小是128每個GPU(總共1024)。初始學(xué)習(xí)率為0.4,使用余弦學(xué)習(xí)率調(diào)度器[44],權(quán)值衰減0.0004,動量0.9。我們用SGD對AOGNet進(jìn)行120個epoch的訓(xùn)練,其中包括5個epoch的[17]后的線性熱身。
結(jié)果和分析:AOGNets獲得了最好的準(zhǔn)確性和模型可解釋性。表1顯示了結(jié)果,圖5顯示了前1的錯誤率和訓(xùn)練損失。在模型尺寸比較的模型中,我們的AOGNets在top-1和top-5的準(zhǔn)確率方面是最好的。我們的小型AOGNet-12M的表現(xiàn)分別比ResNets [23] (44.5M和60.2M)高出1.32%和0.72%。我們注意到,我們的AOGNets使用與ResNets相同的瓶頸操作功能,因此改進(jìn)必須由AOG構(gòu)建塊結(jié)構(gòu)做出貢獻(xiàn)。我們的AOGNet-40M在性能上比其他所有方法都要好,其中包括ResNeXt- 101 [66]+SE [27] (48.9M),是實際應(yīng)用中最強(qiáng)大、應(yīng)用最廣泛的組合。AOGNet-40M的性能也優(yōu)于第二名DPN-98 [7] (61.6M),說明我們的AOG構(gòu)建塊中的DenseNet-和resnet聚合的層次化和組分集成比DPN[7]中的級聯(lián)集成更有效。我們的AOGNet-60M達(dá)到了最好的效果。我們的AOGNet-60M的失敗次數(shù)略高于DPN-98,部分原因是DPN使用ResNeXt操作(即group conv.)。在我們正在進(jìn)行的實驗中,我們正在測試使用ResNeXt節(jié)點操作的AOGNets。
表1。使用單模型和單作物測試的ImageNet-1K驗證集的前1和前5的錯誤率(%)。
圖5。ImageNet中三個AOGNets的top-1錯誤率和訓(xùn)練損失的圖。(彩色和放大效果最佳)
在開發(fā)基于深度學(xué)習(xí)的人工智能系統(tǒng)[8]中,模型可解釋性被認(rèn)為是一個關(guān)鍵問題。我們使用網(wǎng)絡(luò)剖析度量[4]來比較最后一個卷積層中唯一檢測器(即濾波器核)的數(shù)量。在對比中,我們的AOGNet獲得了最好的分?jǐn)?shù)(圖6),說明了該AOG構(gòu)建塊在獲得最佳精度性能的同時,在通過設(shè)計誘導(dǎo)模型可解釋性方面具有很大的潛力。
圖6。利用[4]網(wǎng)絡(luò)解剖方法對ImageNet預(yù)訓(xùn)練網(wǎng)絡(luò)進(jìn)行模型可解釋性比較。
對抗的穩(wěn)健性是許多DNNs[2]所面臨的另一個關(guān)鍵問題。我們進(jìn)行了一個簡單的實驗來共同削減不同DNNs的開箱即用的對抗魯棒性。表2顯示了結(jié)果。在常規(guī)條件下,我們的AOGNets表現(xiàn)出更好的對抗能力,特別是當(dāng)攝動能量控制在相對較低(即?= 0.1)。我們將在以后的工作中通過不同的攻擊和對抗性的訓(xùn)練來研究這個問題。
表2。使用1步FGSM[16]和傻瓜工具箱[51]在白盒對敵攻擊下的最高精度比較。
手機(jī)設(shè)置。我們在典型的移動設(shè)置[26]下訓(xùn)練一個AOGNet-4M。表3給出了比較結(jié)果。我們獲得性能par的流行網(wǎng)絡(luò)專門為移動平臺,如mobilenet[26,54]和shufflenet[73]。我們的AOGNet也超過了自動搜索網(wǎng)絡(luò)NASNet[76](它在搜索中使用了大約800個gpu)。我們注意到,我們使用了相同的AOGNet結(jié)構(gòu),因此顯示了我們的AOGNets有前途的設(shè)備不可知功能。這對于在不同的平臺上部署DNNs是非常重要和有用的,因為不需要額外的手工制作或搜索神經(jīng)結(jié)構(gòu)。如果大型模型共享完全相同的結(jié)構(gòu),這對于從大型模型中提取小型模型也有潛在的用處。
表3。移動設(shè)置下ImageNet-1K驗證設(shè)置的前1和前5的錯誤率(%)。
4.3 COCO中的目標(biāo)檢測和分割
MS-COCO是[43]中廣泛使用的對象檢測和分割基準(zhǔn)之一。它由80個對象類別組成。我們在COCO train2017集合中訓(xùn)練AOGNet,在COCO val2017集合中評估。我們報告了用于包圍盒檢測(APbb)和實例分割(即掩模預(yù)測(APm))的平均精度(AP)、AP50和AP75的COCO標(biāo)準(zhǔn)度量標(biāo)準(zhǔn)。我們在Mask-RCNN系統(tǒng)[22]上進(jìn)行實驗,使用最先進(jìn)的實現(xiàn),maskrcnn-benchmark[45]。我們使用ImageNet-1K上預(yù)訓(xùn)練的AOGNets作為骨架。在對目標(biāo)檢測和分割進(jìn)行微調(diào)時,我們凍結(jié)了所有的BN參數(shù),就像對ResNet[23]和ResNeXt[66]骨干所做的那樣。我們保持所有其他方面不變。我們測試了C4和FPN設(shè)置。
結(jié)果。表4給出了比較結(jié)果。我們的AOGNets獲得了比ResNet[23]和ResNeXt[66]脊柱更好的結(jié)果,模型尺寸更小,推理時間類似或稍好。實驗結(jié)果表明,我們的AOGNets學(xué)習(xí)更好的特征在目標(biāo)檢測和分割任務(wù)的有效性。
表4。Mask-RCNN結(jié)果coco val2017使用1x訓(xùn)練計劃。ResNets和ResNeXts的結(jié)果由maskrcnn基準(zhǔn)報告。
4.4 在CIFAR數(shù)據(jù)集上的實驗
CIFAR-10和CIFAR-100數(shù)據(jù)集[32]分別用C10和C100表示,由10個類和100個類繪制的32 32幅彩色圖像組成。訓(xùn)練集和測試集分別包含50000張圖像和10000張圖像。在訓(xùn)練數(shù)據(jù)的準(zhǔn)備中,我們采用了廣泛使用的標(biāo)準(zhǔn)數(shù)據(jù)增強(qiáng)方案——隨機(jī)裁剪和鏡像。
在隨機(jī)參數(shù)初始化條件下,用隨機(jī)梯度下降(SGD)訓(xùn)練了300個epoch的AOGNets。前端(見圖3)使用單一卷積層。初始學(xué)習(xí)率設(shè)置為0.1,分別在150和225 epoch時除以10。對于CIFAR-10,我們選擇批量大小64,權(quán)重衰減0.0001,而對于CIFAR-100,我們選擇批量大小128,重量衰減0.00001。動量設(shè)定為0.9。
結(jié)果和分析。我們在表5中總結(jié)了結(jié)果。通過更小的模型尺寸和更低的計算復(fù)雜度(FLOPs),我們的AOGNets獲得更好的性能比ResNets[23]和一些變體,ResNeXts[66]和DenseNets[29]一致在兩個數(shù)據(jù)集。我們的小型AOGNet (0.78M)的表現(xiàn)已經(jīng)超過ResNet [23] (10.2M)和WideResNet [70] (11.0M)。由于使用了相同的節(jié)點操作,因此改進(jìn)必須來自于AOG構(gòu)建塊結(jié)構(gòu)。與densenet相比,我們的AOGNets在C100上有了更多的改進(jìn),并且對于類似的型號尺寸使用了不到一半的延遲。延遲減少的原因是densenet在每個稠密塊之后采用了向下采樣,而我們的AOGNets在終端節(jié)點上進(jìn)行子采樣。
表5所示。兩個CIFAR數(shù)據(jù)集[32]的錯誤率(%)。參數(shù)使用的單位是百萬。DenseNet中的k為增長率。
4.5?消融研究
我們進(jìn)行了一項消融研究,調(diào)查(i) RS:去除修剪后的AOG建筑塊中ORnodes的對稱子節(jié)點,以及(ii) LC:增加橫向連接的影響。如表6所示,RS和LC這兩個組件提高了性能。結(jié)果與我們的設(shè)計直覺和原則一致。RS分量降低了結(jié)構(gòu)復(fù)雜性,促進(jìn)了更高的特征維數(shù),LC分量增加了側(cè)向流動節(jié)點的有效深度。
表6所示。利用5次運行的平均錯誤率對我們的AOGNets進(jìn)行消融研究。在前兩行中,AOGNets使用完整的結(jié)構(gòu),最后兩行使用修剪后的結(jié)構(gòu)。相應(yīng)地指定節(jié)點操作的特征維數(shù),以保持模型大小的可比性。
5?結(jié)論與討論
本文提出了一種語法引導(dǎo)的網(wǎng)絡(luò)生成器,它可以有效地構(gòu)建用于深度學(xué)習(xí)的語法結(jié)構(gòu)。它提出了深度和或語法網(wǎng)絡(luò)(AOGNets)。AOG包括一個短語結(jié)構(gòu)語法和一個依賴語法。一個AOGNet由許多階段組成,每個階段都由許多AOG構(gòu)建塊組成。我們的AOG構(gòu)建塊利用了最好的語法模型和DNNs進(jìn)行深度學(xué)習(xí)。AOGNet獲得國家最先進(jìn)的表現(xiàn)。在CIFAR-10/100[32]和ImageNet- 1K[52]中,在公平比較下,AOGNet獲得了比所有先進(jìn)網(wǎng)絡(luò)更好的性能。AOGNet還利用網(wǎng)絡(luò)剖分[4]得到了最佳模型可解釋性評分。AOGNet在對抗性防御中顯示出了更好的潛力。在MS-COCO[43]中,AOGNet的性能優(yōu)于Mask R-CNN[22]中的ResNet和ResNeXt backbones。
討論。希望本文能對學(xué)習(xí)語法引導(dǎo)的網(wǎng)絡(luò)生成器進(jìn)行進(jìn)一步的探索。AOG可以很容易地擴(kuò)展為k-分支分裂規(guī)則;2.?其他類型的邊緣也可以很容易地在AOG中引入,比如密集的橫向連接和自上而下的連接。節(jié)點操作還可以擴(kuò)展以利用語法指導(dǎo)的轉(zhuǎn)換。對于AOG結(jié)構(gòu),需要研究更好的參數(shù)初始化方法。
ZIZHU
?
?
?
?
總結(jié)
以上是生活随笔為你收集整理的读后感与机翻《AOGNets》的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 运算放大器使用的一些经验
- 下一篇: 《STM32从零开始学习历程》——USA