EfficientNet论文阅读笔记
目錄
論文信息
摘要
問(wèn)題制定
模型縮放
高效地網(wǎng)絡(luò)架構(gòu)
實(shí)驗(yàn)結(jié)果
論文信息
鏈接:http://arxiv.org/pdf/1905.11946v2.pdf
發(fā)表時(shí)間:2019
來(lái)源:google
作者:Mingxing Tan
摘要
卷積神經(jīng)網(wǎng)絡(luò)(ConvNets)通常是在固定的資源預(yù)算下開(kāi)發(fā)的,如果有更多的資源,則可以按比例放大以獲得更高的準(zhǔn)確性。在本文中,系統(tǒng)地研究了模型縮放并確定仔細(xì)地平衡網(wǎng)絡(luò)深度,寬度和分辨率可以帶來(lái)更好的性能?;谶@一觀察,提出了一種新的縮放方法,該方法使用簡(jiǎn)單但高效的復(fù)合系數(shù)均勻地縮放深度/寬度/分辨率的所有維度。證明了這種方法在擴(kuò)展MobileNets和ResNet方面的有效性。
問(wèn)題制定
卷積層可以定義為函數(shù) ,其中是卷積運(yùn)算符,表示輸出張量,表示輸入張量,張量形狀為表示輸入張量的形狀,其中是feature map的尺寸,是通道維度。卷積可以用一系列組成層表示:。實(shí)踐中,ConvNet層經(jīng)常被劃分為多個(gè)stages,并且每個(gè)stage的所有層共享相同的結(jié)構(gòu):舉個(gè)例子,ResNet有5個(gè)stages,每個(gè)stage的所有層有相同的卷積類(lèi)型(除了第一層有一個(gè)下采樣),因此,我們可以將ConvNet定義為:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (1)
其中N是分類(lèi)網(wǎng)絡(luò),X表示輸入,表示在階段i中重復(fù)次,總共有s個(gè)stage,表示層i的輸入張量X的形狀。為了進(jìn)一步減小設(shè)計(jì)空間,我們限制所有層必須以恒定比率均勻縮放。我們的目標(biāo)是最大化任何給定資源約束的模型精度,這可以表示為優(yōu)化問(wèn)題:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
模型縮放
我們假定卷積層的輸入特征圖大小是:
輸出特征圖大小是:
對(duì)于卷積:
上圖中(a)baseline的計(jì)算量是:
-
網(wǎng)絡(luò)深度(d)縮放
網(wǎng)絡(luò)深度指卷積層的層數(shù),如上圖(c)所示。這里假設(shè)深度縮放倍,則計(jì)算量是:
縮放網(wǎng)絡(luò)深度是許多ConvNets最常用的方式。直覺(jué)是更深層次的ConvNet可以捕獲更豐富,更復(fù)雜的特征,并且可以很好地概括新任務(wù)。然而,由于消失的梯度問(wèn)題,更深的網(wǎng)絡(luò)也更難以訓(xùn)練。雖然跳線(xiàn)連接和batch normalization等幾種技術(shù)可以緩解訓(xùn)練問(wèn)題,但非常深的網(wǎng)絡(luò)的準(zhǔn)確度增加會(huì)減少。
- 網(wǎng)絡(luò)寬度(w)縮放
在卷積運(yùn)算中,網(wǎng)絡(luò)寬度指網(wǎng)絡(luò)輸入輸出的通道數(shù),如上圖(b)所示。這里假設(shè)寬度縮放倍,則計(jì)算量是:
?
計(jì)算量變?yōu)樵瓉?lái)的倍,縮放網(wǎng)絡(luò)寬度通常用于小尺寸模型,更廣泛的網(wǎng)絡(luò)往往能夠捕獲更多細(xì)粒度的特征并且更容易訓(xùn)練。然而,極寬但淺的網(wǎng)絡(luò)往往在捕獲更高級(jí)別的特征方面存在困難。而且當(dāng)網(wǎng)絡(luò)變得更寬,w越大時(shí),準(zhǔn)確度就會(huì)快速飽和。
- 網(wǎng)絡(luò)分辨率(r)縮放
分辨率縮放指改變卷積層輸入輸出的圖形分辨率。這里假設(shè)分辨率縮放倍,則計(jì)算量是:
計(jì)算量變?yōu)樵瓉?lái)的倍,使用更高分辨率的輸入圖像,ConvNets可以捕獲更多細(xì)粒度的圖案。
? ? ? ? ? ? ? ? ? ? ? ??
擴(kuò)展具有不同網(wǎng)絡(luò)寬度(w),深度(d)和分辨率(r)的基線(xiàn)模型。具有更大寬度,深度或分辨率的更大網(wǎng)絡(luò)傾向于實(shí)現(xiàn)更高的準(zhǔn)確度,但是在達(dá)到80%之后準(zhǔn)確度增益快速飽和,證明了單維縮放的限制。深度或分辨率的任何尺寸都可以提高精度,但對(duì)于較大的模型,精度增益會(huì)降低。
不同的縮放尺寸不是獨(dú)立的。直觀地,對(duì)于更高分辨率的圖像,我們應(yīng)該增加網(wǎng)絡(luò)深度,使得更大的感受野可以幫助捕獲包括更大圖像中的更多像素的類(lèi)似特征。相應(yīng)地,我們還應(yīng)該在分辨率更高時(shí)增加網(wǎng)絡(luò)寬度,以便在高分辨率圖像中捕獲具有更多像素的更多細(xì)粒度圖案。這些直覺(jué)表明我們需要協(xié)調(diào)和平衡不同的縮放尺寸,而不是傳統(tǒng)的單維縮放。
- 復(fù)合縮放
為了追去更好的精度和效率,在縮放時(shí)平衡網(wǎng)絡(luò)所有維度至關(guān)重要。提出了一種新的復(fù)合縮放方法,它使用復(fù)合系數(shù)以原則方式統(tǒng)一縮放網(wǎng)絡(luò)寬度,深度和分辨率:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ??? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (3)
其中是可以通過(guò)小網(wǎng)格搜索確定的常量。直觀地說(shuō),是一個(gè)用戶(hù)指定的系數(shù),它控制有多少資源可用于模型縮放,而則分別指定如何將這些額外資源分配給網(wǎng)絡(luò)寬度,深度和分辨率。值得注意的是,常規(guī)卷積運(yùn)算的FLOPS與d,,成正比,即雙倍網(wǎng)絡(luò)深度將使FLOPS加倍,但網(wǎng)絡(luò)寬度或分辨率加倍會(huì)使FLOPS增加四倍。由于卷積運(yùn)算通常主導(dǎo)ConvNets中的計(jì)算成本,因此使用上面等式對(duì)ConvNet進(jìn)行縮放將使總FLOPS增加。在本文中,我們約束,這樣對(duì)于任何新的,總FLOPS將大約增加。
高效地網(wǎng)絡(luò)架構(gòu)
由于模型的縮放不會(huì)改變基線(xiàn)網(wǎng)絡(luò)中的層運(yùn)算,因此具有良好的基線(xiàn)網(wǎng)絡(luò)也很關(guān)鍵。為了更好地展示我們縮放方法的有效性,我們還開(kāi)發(fā)了一種新的移動(dòng)尺寸基線(xiàn),稱(chēng)為EfficientNet。受到MnasNet的啟發(fā),我們通過(guò)利用多目標(biāo)的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)搜索來(lái)同時(shí)優(yōu)化精度和FLOPS,我們的搜索空間和MnasNet相同,并使用作為優(yōu)化目標(biāo)?,其中ACC(m)和FLOPS(m)分別是模型m的精度和計(jì)算量,T是目標(biāo)計(jì)算量,w=?0.07是一個(gè)超參數(shù)用來(lái)權(quán)衡精度和FLOPS。不像MnasNet中的優(yōu)化目標(biāo),這里優(yōu)化的是FLOPS而不是延遲,因?yàn)槲覀儧](méi)有說(shuō)是要在特定的硬件平臺(tái)上做加速。我們的搜索方法得到了一個(gè)高效的網(wǎng)絡(luò),我們稱(chēng)之為EfficientNet-B0,因?yàn)槲覀兪褂玫乃阉骺臻g和MnasNet相似,所以得到的網(wǎng)絡(luò)結(jié)構(gòu)也很相似,不過(guò)我們的EfficientNet-B0稍微大了點(diǎn),因?yàn)槲覀兊腇LOPS預(yù)算也比MnasNet中大(400M)。下表展示了EfficientNet-B0的結(jié)構(gòu),它的主要構(gòu)建塊就是移動(dòng)倒置瓶頸MBConv。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
上表展示的EfficientNet-B0是基線(xiàn)網(wǎng)絡(luò), 每行描述了具有層的階段i,輸入分辨率為,輸出通道為。然后以EfficientNet-B0為baseline模型,我們將我們的復(fù)合縮放方法應(yīng)用到它上面,分為兩步:
(1)我們首先固定,假設(shè)有相比于原來(lái)多了2倍的資源,我們基于等式(2)和(3)先做了一個(gè)小范圍的搜索,最后發(fā)現(xiàn)對(duì)于EfficientNet-B0來(lái)說(shuō)最后的值為,在的約束下;
(2)然后我們將作為常數(shù)并使用公式(3)使用不同的擴(kuò)展基線(xiàn)網(wǎng)絡(luò),以獲得EfficientNet-B1至B7。
實(shí)驗(yàn)結(jié)果
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
(1)在MobileNets和ResNets中,與其他單一維度的縮放方法相比,復(fù)合縮放方法精度提高了;
(2)本文提出的EfficientNet比其他網(wǎng)絡(luò)表現(xiàn)更好。
總結(jié)
以上是生活随笔為你收集整理的EfficientNet论文阅读笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 机器学习——决策树的三种学习方法
- 下一篇: 《机器学习》 周志华学习笔记第一章 绪论