999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

熵啟發的分級可微分網絡架構搜索

2021-08-11 01:03:30李建明孫曉飛
哈爾濱工業大學學報 2021年8期
關鍵詞:實驗

李建明,陳 斌,孫曉飛

(1.中國科學院 成都計算機應用研究所,成都 610041;2.中國科學院大學,北京 100049;3.哈爾濱工業大學(深圳)國際人工智能研究院,廣東 深圳 518055)

自深度學習技術興起以來,神經網絡架構設計一直是計算機視覺中最重要的基礎研究之一,人類專家手工設計了大量優秀的神經網絡架構(如AlexNet[1]、ResNet[2]、DenseNet[3]、SENet[4]等)。手工設計的神經網絡架構,往往需要專家進行大量的試錯實驗。因此在限定的搜索空間中,采用網絡架構搜索(neural architecture search,NAS)方法模擬專家自動設計更好神經網絡架構的研究,受到了越來越多的關注[5-13]。

不同于采用強化學習[6](reinforcement learning,RL)和進化算法[7](evolutional algorithm,EA)作為優化策略的NAS方法,文獻[8]提出了可微分架構搜索算法(differentiable architecture search,DARTS),創造性地把離散空間的架構搜索問題轉化為連續空間的參數優化問題[8]。在相同的搜索空間中,采用性能相近的圖形處理單元(graphics processing unit,GPU),該方法可更高效地搜索架構。例如,后者計算資源需求僅為4 GPU·d,前兩者則分別需要2 000 GPU·d[6]和3 150 GPU·d[7]。同時,在CIFAR-10[14]和ImageNet數據集上,后者搜得架構的性能也能達到前兩種方法相近的水平[8],且3種方法搜得的架構都超越了先前人類專家設計的架構。

DARTS算法高效的架構搜索能力,吸引了眾多學者的關注,并出現了一系列的改進方法[15-20]。文獻[15]提出了漸進的可微分架構搜索算法(progressive differentiable architecture search,P-DARTS),以改善搜索架構的超網絡與架構評測網絡在網絡深度上存在“鴻溝”(depth gap)的問題。文獻[16]提出了隨機神經網絡架構搜索算法(stochastic neural architecture search,SNAS),通過限制架構參數為獨熱(one-hot)編碼形式構建超網絡,以改善DARTS因派生cell的方法而導致超網絡與派生架構出現性能“鴻溝”的問題。文獻[17]注意到,DARTS算法中各級cell共享架構參數的超網絡本身可能存在潛在問題。本文通過跟蹤超網絡各級cell的skip數量變化趨勢,進一步發現,共享架構參數容易造成各級cell通過架構參數相互耦合。在超網絡優化后期,耦合會導致各級cell的skip操作通過架構參數疊加,并產生包含過多skip操作的cell,從而嚴重影響搜得架構的性能[15,17]。

針對上述的后兩項問題,本文提出了改進算法:熵啟發的分級可微分網絡架構搜索。首先,針對DARTS的耦合問題,設計了新穎的分級超網絡,對DARTS超網絡的耦合問題進行解耦。其次,針對超網絡與派生架構間的“鴻溝”問題,引入架構熵作為超網絡目標函數的損失項,促使目標函數縮小超網絡與派生架構因派生引起的“鴻溝”,以啟發超網絡在巨大的搜索空間中搜得更好的架構。最后,在圖像分類數據集CIFAR-10上進行了實驗,搜索階段算法耗時僅11 h,最終構建的評測網絡在該數據集上的分類錯誤率僅為2.69%,優于DARTS[8]、高效的網絡架構搜索(efficient neural architecture search,ENAS)[13]和SNAS[16]等算法。同時其參數量僅為2.95×106,比性能相近的架構少約10%。在大規模圖像分類數據集ImageNet上,本文所得架構的分類錯誤率僅為25.9%(對應評測網絡的參數量為4.3×106),優于MobileNets[21]等手工設計的架構,也優于DARTS[8]、SNAS[16]等算法自動設計的架構,該結果表明本文搜得的架構具有較好的圖像分類能力和良好的可遷移性。綜合性能與參數量兩項指標來看,本文搜得的架構達到了領先水平。

1 分級可微分網絡架構搜索

1.1 DARTS算法簡介

DARTS算法以cell[6-7]為搜索的基本單元。cell由若干有序結點組成的有向無環圖(directed acyclic graph,DAG)表示[8],見圖1。DAG中的結點表示特征圖,連接結點的有向邊表示候選操作。DARTS定義的cell共包含7個結點。其中,前兩個結點為輸入結點,分別代表最近臨的前兩個cell的輸出;中間的4個結點,每個都通過有向邊與其所有前序結點相連,如式(1)所示[8];最后一個結點按通道合并(concatenation,concat)4個中間結點代表的特征圖[8],作為該cell的輸出(output)。

圖1 DARTS算法的cell圖示Fig.1 Schematic of cell in DARTS

(1)

式中:x(j)為cell的中間結點,x(i)為輸入結點或中間結點,o(i,j)為連接x(j)和x(i)的混合操作,i和j均為結點序號。

有向邊關聯的候選操作集合O,共包含8個操作函數,分別是3×3/5×5可分離卷積(sep_conv)、3×3/5×5空洞可分離卷積(dil_conv)、3×3平均/最大池化(avg/max_pool)、跳躍連接(skip)和無連接(none)。

DARTS創造性地在cell中引入了架構參數α,把離散的架構搜索問題轉化為連續參數空間的參數優化問題[8],并以可學習的架構參數作為候選操作的權重,構建了加權的混合操作,最終把架構搜索簡化為對候選操作權重的學習。該算法還采用軟最大(softmax)函數對架構參數進行松弛化操作,把架構參數的值歸一化到(0,1)區間。松弛化操作后,式(1)中的混合操作o(i,j)變形為[8]

(2)

為了高效地學習cell中的參數,DARTS構建了以cell為模塊的超網絡(深度記為d),見圖2。超網絡含有兩種類型的cell,分別是常規元胞(normal cell)和降維元胞(reduction cell)[8]。Reduction cell位于超網絡d/3和2d/3,步幅為2,起降維作用;normal cell特征圖維度保持不變,主要起特征提取作用。超網絡被reduction cell分為3個層級,每級包含M個堆疊的normal cell,后級normal cell的特征圖大小則是前一級的1/2。該超網絡中各級cell共享架構參數,即超網絡中不同層級的cell結構完全相同[8]。超網絡訓練完成后,算法根據架構參數由完整cell保留部分候選操作得到派生的cell,再以派生的cell構建評測網絡對架構進行性能評測。

圖2 DARTS構建的超網絡Fig.2 Super network constructed by DARTS

1.2 分級cell構建的搜索超網絡

1.2.1 DARTS算法的耦合問題

DARTS算法中不同層級的cell共享架構參數,意味著同一個架構參數會出現在超網絡的不同深度。而超網絡目標函數關于參數的梯度,是逐層求導累積得到的,那么超網絡中不同深度的同一架構參數的梯度也不同。架構參數共享的設置,導致超網絡優化位于不同層級cell的相同架構參數時,不同趨勢的更新要在同一套架構參數中共享。這就造成不同層級cell學習到的架構參數相互影響,即產生了耦合效應。

架構參數耦合容易帶來兩方面的影響:1)同一架構參數,在超網絡不同位置的梯度有很大差異,當不同層級cell的架構參數變化趨勢不同時,造成共享的架構參數主要體現了梯度較大處的選擇;2)隨著超網絡的訓練,混合操作中含有卷積的候選操作逐漸被優化,超網絡便逐漸偏向skip和pooling這類容易優化的無參數操作,由于架構參數共享,這種偏好被疊加,容易造成最后學到的架構包含大量的skip操作,導致其性能欠佳(文獻[17]也注意到了這種現象)。

以normal cell的skip為例,本文分別跟蹤各級cell的skip數量變化,發現隨著超網絡的優化,其數量都有所增長,如圖3(a)所示。初始化相同情況下,共享架構參數的normal cell在超網絡訓練的后期,由于耦合效應,造成skip數量大幅增加。該cell中skip占據操作總數的4/8(如圖3(b)所示,CIFAR-10上測試錯誤率為3.10%)。這導致cell中含有卷積參數的候選操作數量偏少,從而影響了cell的表征能力。

圖3 相同初始化,架構搜索過程cell包含的skip數量對比Fig.3 Comparison of skip numbers during architecture search with identical initialization

1.2.2 cell分級的超網絡

針對DARTS算法構建的超網絡出現的耦合問題,本文基于DARTS的超網絡,設計了cell分級的超網絡,以避免不同層級間cell的相互影響。如圖4所示,該超網絡被reduction cell分為3個層級,分別為低層次常規(low normal)、中層次常規(mid normal)和高層次常規(high normal)層級。每級包含M個堆疊的normal cell,各級cell的搜索空間相同,但各自擁有獨立的結構。由于reduction cell的降維作用,不同層級的normal cell對應的特征圖維度則依次減小,更深一級cell中的候選操作提取的特征也更加抽象。本文超網絡的設置,既允許各層級cell搜索到相同的結構,也允許更深的cell在更抽象的特征圖上搜索到不同于低層cell的結構。

圖4 cell分級的超網絡Fig.4 Super network constructed by multi-level cells

(3)

(4)

式中:w為卷積核參數,Ltrain為訓練集損失,Lval為驗證集損失,w*為使當前訓練集損失最小的卷積核參數。超網絡訓練完成后,按式(5)保留各級cell有向邊中權重最大的候選操作。并沿用DARTS的派生策略,保留中間結點含有候選操作權重top-2的邊[8],得到最終的派生架構,以構建評測網絡。

(5)

本文設計的cell分級的超網絡,從根本上改變了網絡架構搜索空間的設置。按照文獻[8]的計算方法,本文超網絡的搜索空間包含約1063種形態的網絡架構(文獻[8]為1025種);由派生cell構建的評測網絡形成的空間,包含約1045種(文獻[8]為1018種)。從搜索空間的規模上看,本文遠多于文獻[8]。

這種設計的優點有:1)解除不同層級cell間的耦合;2)增加架構的多樣性;3)超網絡在架構搜索出現問題時,有利于定位來源,以便進一步優化。

當然,搜索空間的指數級增漲,也為搜索算法帶來了巨大的挑戰,這便要求更有啟發性的搜索策略以應對該挑戰。

1.3 熵啟發正則項

DARTS算法搜索架構時,超網絡中各候選操作和架構參數以加權求和的方式對特征圖作變換計算,并在反向傳播時被更新。搜索完成后,根據該算法的派生規則[8],權重最大的架構參數對應的候選操作被認為對超網絡的貢獻最大,因而在派生cell中保留下來,其他候選操作則被遺棄。文獻[16]指出,這種派生操作造成了超網絡與派生得到的架構在驗證集上的表現出現“鴻溝”(gap)問題,即超網絡在驗證集上的準確率較高,但派生得到的架構(未重新訓練時)在驗證集上的準確率與前者相差很大。文獻[16]認為出現這種情況的原因是,DARTS的超網絡在搜索訓練完成后,每條邊的架構參數分布仍然擁有相對較高的熵,較高的熵意味著搜索方法對搜索到架構的確定性偏低。從這個環節看來,以Lval優化超網絡的架構參數α的過程中,超網絡中結點對之間的架構參數呈現獨熱向量形態時,熵最低,是最理想的優化結果。

本文構建的超網絡,沿用了DARTS算法的派生策略[8],所以架構派生也存在類似問題。受文獻[16]啟發,本文將已歸一化的架構參數向量與熵聯系起來,定義了架構熵,見式(6)。該指標衡量了搜索算法對搜索結果的確定性,降低架構熵能提升超網絡與派生架構在驗證集上表現的相關性。

(6)

以Lentropy作為該目標函數的損失項,可啟發超網絡在逐漸更新架構參數時,兼顧架構參數的分布,使架構參數在參數空間中向獨熱向量收斂。架構搜索環節,超網絡的目標函數由式(3)變為式(7)。

(7)

式中γ為平衡Lval和Lentropy的超參數,其他變量與以上公式定義一致。γ值的選擇見2.2節。

2 實驗及結果

本文搜索階段實驗采用的操作系統為Windows 10,處理器為Intel i7-7800X,GPU為NVIDIA GeForce GTX 1080Ti。評測階段實驗采用的操作系統為Ubuntu 16.04,處理器為Xeon E5,訓練和測試CIFAR-10使用的顯卡為NVIDIA GeForce GTX 1080Ti,訓練和測試ImageNet使用的顯卡為NVIDIA Titan RTX。編程語言均為Python 3.6,深度學習框架均為Pytorch。

2.1 實驗數據集

如DARTS等算法一樣,本文采用圖像分類數據集CIFAR-10[14]和ImageNet作為實驗數據集。算法的架構搜索環節在CIFAR-10上完成,并分別在CIFAR-10和ImageNet對進行架構評測。

CIFAR-10數據集包含60 000張分辨率為32×32的圖像,共10類。其中訓練集包含50 000張圖像,測試集包含10 000張圖像。搜索架構時,把訓練集均分為兩個子集(分別為Strain和Sval),Strain用于更新超網絡中候選操作的卷積核參數w,Sval用于更新超網絡中的架構參數α[8]。搜索架構完成后,以完整cell得到派生的cell,再以后者構建評測網絡[8]。評測網絡在訓練集上重新開始訓練,結束后在測試集上進行評測,并以該測試準確率作為搜得架構的性能評價指標。在超網絡訓練和評測網絡訓練時,測試集均未使用,僅在測試評測網絡時,測試集才被使用。

ImageNet是圖像分類研究中最權威的常用數據集之一。其訓練集包含約128萬張圖像,驗證集包含50 000張圖像,共1 000類。在該數據集上,本文采用與DARTS等算法一樣的實驗設置,通過剪切原圖像得到分辨率為224×224的樣本,并將這些樣本作為評測網絡的輸入,對其進行訓練和測試。

2.2 熵啟發損失項的超參數選擇

本文設計了實驗,以確定式(7)中熵啟發損失項的超參數如何設置。如表1所示,本文分別設置了γ=0、0.1、1、5、10,共5組實驗。每組重復進行4次完整的架構搜索與評測實驗,以評測結果的平均值作為該超參數選擇的依據。由實驗結果可知,熵啟發項的系數為0時,超網絡在1063搜索空間中,僅依靠可微分方法搜索網絡架構具有一定的難度;γ=1時,搜得的架構表現最好;當熵啟發項的系數增大到5時,損失函數中熵啟發損失項所占比重過大,影響了可微分方法的搜索。因此,本文以γ=1作為熵啟發項的超參數值。

表1 γ不同取值在CIFAR-10平均性能Tab.1 Average performance of different values of γ on CIFAR-10

2.3 搜得的網絡架構

本文的超網絡按不同層級分級設置cell,相應地搜得的各級cell也可能不同。DARTS搜得的架構僅包含一個normal cell和一個reduction cell[8],而本文算法搜得的架構包含3個層級的cell,各級cell如圖5所示。由于高層級cell與池化層相接,所以不包含reduction cell。

由圖5所示,本文采用分級超網絡后,搜得的架構解除了參數共享帶來的耦合效應,不同層級cell包含的skip操作僅影響本層級的cell結構。如圖5(a)所示,該cell不包含skip操作,而圖5(b)、圖5(c)各cell都含有兩個skip操作。此外,DARTS搜得的normal cell包含的候選操作類別較少,分別是sep_conv_3×3、dil_conv_3×3和skip_connect。而本文搜得的cell,包含的候選操作更加多樣,能提取更豐富的特征。

圖5 分級超網絡搜得的各級cell(搜索采用了熵啟發損失項)Fig.5 Cell architectures searched by proposed algorithm (search algorithm with entropy loss term)

2.4 實驗結果

2.4.1 CIFAR-10實驗結果

沿用DARTS算法的架構篩選策略[8],本文也重復了4次架構搜索實驗,并分別構建評測網絡。在CIFAR-10上隨機初始化卷積參數w后,訓練評測網絡,以最優測試結果的架構作為算法的最終架構。如表2所示,以人工設計的DenseNet[3]為基準,NAS算法搜得的網絡架構在CIFAR-10上都超越了該基準架構,這表明了網絡架構搜索算法的潛力。與其他自動搜索網絡架構方法相比,本文搜得的網絡架構取得了具有競爭力的結果。

表2 搜得架構在CIFAR-10上與其他NAS算法搜得架構的性能對比Tab.2 Performannce comparison of architectures searched by proposed algorithm and other NAS methods on CIFAR-10

從測試錯誤率上看,僅采用本文分級策略構建的超網絡搜得的架構,在CIFAR-10上的錯誤率為2.88%,優于DARTS_V1[8]搜得的架構,并與SNAS[16]相近;增加熵啟發損失項后,本文搜得架構的錯誤率進一步降低到2.69%,與NASNet-A[6]相近。從參數量指標看,與性能相近的NASNet-A[6]相比,本文架構的參數量更低。其原因是本文分級設置cell的超網絡構建方法,得到的mid normal和high normal兩級cell的參數量都較低。同時,本文采用DARTS算法的一階近似優化策略,搜索時間遠低于NASNet-A[6],且與P-DARTS[15]相近。綜上,實驗結果證明了本文所提方法的有效性,并且本文所提方法計算資源需求低、分類表現好、搜得架構的參數量少。

2.4.2 ImageNet實驗結果

為了驗證本文搜得架構的可遷移性,本文進一步在ImageNet上進行了評測實驗。構建評測網絡的方式與DARTS算法保持一致,即網絡深度d=14,網絡初始通道數C0=48。該評測網絡的訓練采用與文獻[15]相同的策略。沿用DARTS算法的限制條件,本文也選擇輸入樣本分辨率為224×224時,運算乘加次數<600×106(移動設備運算要求)的網絡進行對比。本文架構及對比算法所得架構在ImageNet上的性能表現見表3。其中,“≈”表示約等于。

表3 搜得架構在ImageNet與其他NAS算法搜得架構的性能對比Tab.3 Performance comparison of architectures searched by proposed algorithm and other NAS methods on ImageNet

以本文搜得架構構建的評測網絡,在ImageNet上取得了25.9%的分類錯誤率,不僅優于Inception[22]、MobileNet[21]、ShuffleNet[23]等手工設計的網絡架構,還優于DARTS[8]、SNAS[16]等算法自動設計的網絡架構,這表明了本文架構的可遷移性。同時本文評測網絡的參數量僅為4.3×106,比參數量相同的SNAS[16]分類錯誤率低1.4%。與分類錯誤率相近的NASNet-A[6]相比,本文評測網絡的參數量低1.0×106。本文評測網絡的乘加次數也只有533×106,但比乘加次數相近的ShuffleNet[23]和SNAS[16]有更好的分類性能。結合分類錯誤率、參數量和乘加次數3項指標,ImageNet上的實驗結果表明,本文搜得的架構具有更好的特征提取和圖像分類能力。

3 結 論

設計了cell分級的超網絡,對DARTS算法各層級cell存在耦合的現象進行了解耦。實驗結果表明,采用本文設計的超網絡,避免了架構參數共享引起的耦合效應,并提升了搜得架構的性能。引入熵啟發的損失項后,降低了超網絡與派生架構的“鴻溝”,進一步提升了搜得架構的表現。最后,本文按層級構建超網絡和評測網絡的設計,可啟發探索新的網絡架構搜索范式。

猜你喜歡
實驗
我做了一項小實驗
記住“三個字”,寫好小實驗
我做了一項小實驗
我做了一項小實驗
記一次有趣的實驗
有趣的實驗
小主人報(2022年4期)2022-08-09 08:52:06
微型實驗里看“燃燒”
做個怪怪長實驗
NO與NO2相互轉化實驗的改進
實踐十號上的19項實驗
太空探索(2016年5期)2016-07-12 15:17:55
主站蜘蛛池模板: 久久精品视频亚洲| 国内精品自在欧美一区| 中文字幕人妻无码系列第三区| 亚洲中文字幕久久无码精品A| 久久婷婷六月| 日韩精品亚洲精品第一页| 99久久99这里只有免费的精品| 免费看美女自慰的网站| 久久semm亚洲国产| 成人日韩精品| 女人18毛片一级毛片在线 | 欧美中文字幕在线二区| 亚洲精品777| A级全黄试看30分钟小视频| 亚洲男人在线天堂| www.youjizz.com久久| 无码高潮喷水在线观看| 亚洲AV免费一区二区三区| h网址在线观看| 国产真实乱人视频| 精品久久综合1区2区3区激情| 99久久人妻精品免费二区| 亚洲人成人伊人成综合网无码| 亚洲成人在线免费| 国产成人精品日本亚洲| 日韩精品成人在线| 毛片在线播放a| 激情综合网激情综合| 久久精品国产精品一区二区| 久久综合色天堂av| 色综合日本| 国产噜噜噜| 国产午夜福利片在线观看| 四虎国产精品永久一区| 亚洲不卡影院| 亚洲综合天堂网| 国产欧美日韩91| 91无码人妻精品一区| 91人人妻人人做人人爽男同| 国产精品欧美亚洲韩国日本不卡| 亚洲无码视频喷水| 97在线碰| 日本尹人综合香蕉在线观看 | 国产在线无码一区二区三区| 99成人在线观看| 91精品国产自产在线观看| 丁香五月亚洲综合在线| 亚洲精品无码人妻无码| 亚洲人人视频| 91精品国产91欠久久久久| 久操中文在线| www.精品国产| 免费黄色国产视频| 国产在线麻豆波多野结衣| 在线观看免费人成视频色快速| 中美日韩在线网免费毛片视频 | 精品国产Ⅴ无码大片在线观看81| 国产啪在线91| 亚洲欧美成人在线视频| 色综合久久久久8天国| 亚洲欧美天堂网| 久草性视频| 国产成人无码AV在线播放动漫 | 97se亚洲综合不卡 | 午夜欧美理论2019理论| 99精品免费在线| 91久久国产综合精品女同我| 国产成人盗摄精品| 国产黄在线免费观看| 日本伊人色综合网| 亚洲香蕉伊综合在人在线| 欧美精品aⅴ在线视频| 国产欧美专区在线观看| 久久精品无码中文字幕| 国产成人精品亚洲日本对白优播| 亚洲高清资源| 国产成人精品亚洲77美色| 欧美劲爆第一页| 综合人妻久久一区二区精品| 中文字幕丝袜一区二区| 欧美日韩91| 国产精品成人免费综合|