神經網絡架構搜索——可微分搜索(P-DARTS)

神經網絡架構搜索——可微分搜索(P-DARTS)

華爲發表在 ICCV 2019上的NAS文章,致力於解決在 proxy 訓練與 target 測試的模型 depth gap 問題。

動機

漸進式Cell搜索架構

如上圖所示,在DARTS中,搜索時候是以 8 cells with 50 epochs 來進行的,而evaluate時卻以 20 cells,這bias造成了精度大幅度下降;而 P-DARTS 以漸進的方式 5 cells, 11 cells, 17 cells 分別 25 epochs 來進行,這樣更能接近evaluate時的情況,故性能也更好。

方法

OK,你可能會問,爲什麼不直接以20 cells 來進行搜索呢?好問題,理論上應該是可行的,就是太耗memory且容易網絡架構過擬合;那17 cells也很深,memory夠嗎?這也是好問題,P-DARTS其實就是在解決這個問題:

P-DARTS原理圖

如上圖所示,

(a) cells=5時,每個node間有5個candidate,當訓練好了25 epochs後,會有對應的softmax置信度。

(b) 接着進行 cells=11的搜索,雖然深度加了一倍多,但這時每個node間operation candidate將會減少接近一半,即把(a)中最後置信度較低的operation直接delete掉。

© 同樣的流程,最後進行 cells=17的搜索,再砍掉置信度低的一半opeartion。通過這樣的方式來tradeoff depth及memory。

實驗結果

CIFAR-10

CIFAR-10結果

ImageNet

ImageNet結果

參考

[1] Xin Chen, Lingxi Xie, Jun Wu, Qi Tian, Progressive Differentiable Architecture Search: Bridging the Depth Gap between Search and Evaluation, ICCV, 2019.

[2] https://zhuanlan.zhihu.com/p/73740783


更多內容關注微信公衆號【AI異構】

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章