給定目標(biāo)硬件,如何確定最優(yōu)的速度-精度折衷邊界?換言之:給定推斷延時的限制,模型能達到的最高精度是多少?給定精度要求,模型所需的最短延時是多少?
為此,馭勢科技AI研究院聯(lián)合新加坡國立大學(xué)提出了偏序關(guān)系剪枝(Partial Order Pruning)方法,直接考慮模型在目標(biāo)硬件上的延時,利用偏序關(guān)系假設(shè)對搜索空間進行剪枝,平衡模型的寬度與深度,以提高速度-精度折衷的邊界。應(yīng)用該方法所得的東風(fēng)(DF)骨干網(wǎng)絡(luò),取得了目標(biāo)硬件(TX2)上的最優(yōu)速度-精度折衷。應(yīng)用該方法于語義分割網(wǎng)絡(luò)Decoder的結(jié)構(gòu)搜索,所得的東風(fēng)分割網(wǎng)絡(luò)(DF-Seg)也取得了TX2/1080Ti上最優(yōu)的速度-精度折衷。
在實際運用當(dāng)中,具備多重實用價值,主要體現(xiàn)在以下幾個方面:
(一)DF/DF-Seg網(wǎng)絡(luò)的實用價值
(1)DF網(wǎng)絡(luò)取得了目標(biāo)硬件(TX2)上最優(yōu)的速度-精度折衷。
(2)DF網(wǎng)絡(luò)節(jié)約顯存。以DF2A網(wǎng)絡(luò)為例,其精度介于ResNet50/101之間,而僅需1/3至1/2的顯存(以BVLC Caffe測試)。
(3)DF網(wǎng)絡(luò)結(jié)構(gòu)簡單,僅使用基本的殘差模塊,相當(dāng)于更“精耕細(xì)作”的ResNet。
(4)DF-Seg網(wǎng)絡(luò)是TX2/1080Ti/Titan X(Maxwell)上速度-精度折衷最好的分割網(wǎng)絡(luò)。
省時間、省顯存、結(jié)構(gòu)簡單,使得DF/DF-Seg網(wǎng)絡(luò)有助于在嵌入式設(shè)備TX2上部署高精度、低延時、多路圖像并行處理的CNN模型;有助于高端GPU上的視頻處理、大規(guī)模圖像數(shù)據(jù)處理等任務(wù)的部署;有助于科研人員,尤其是計算資源不足的科研人員,節(jié)省計算資源,實現(xiàn)更復(fù)雜的算法。
(二)偏序關(guān)系剪枝算法的實用價值
DF網(wǎng)絡(luò)更適合GPU平臺,我們也利用偏序關(guān)系剪枝算法,在驍龍845 CPU平臺上進行了骨干網(wǎng)絡(luò)結(jié)構(gòu)與分割網(wǎng)絡(luò)Decoder結(jié)構(gòu)的搜索,所得語義分割網(wǎng)絡(luò)得到了目前CPU平臺上最好速度-精度折衷。
以下為該論文內(nèi)容翻譯:
一、偏序關(guān)系剪枝算法
(一)搜索空間設(shè)計與模型結(jié)構(gòu)編碼
圖2(a)為本文的模型搜索空間,圖2(b)為本文使用的殘差模塊結(jié)構(gòu)。網(wǎng)絡(luò)由6個Stage構(gòu)成,Stage1~5均通過設(shè)步長為2降低輸入特征的分辨率,Stage6通過全局池化與全連接層產(chǎn)生分類結(jié)果。本文的模型搜索不搜索基本模塊的結(jié)構(gòu),而是在基本殘差模塊的基礎(chǔ)上,對網(wǎng)絡(luò)整體的寬度與深度進行平衡。在Stage3~5,模型分別包含L/M/N個殘差模塊,Stage s中的第i個殘差模塊的寬度記為,因此本文將一個結(jié)構(gòu)表示為:
(二)模型延時估計與子搜索空間
圖2(a)所表達的搜索空間記為s,實踐中我們僅關(guān)心延時在中的子集,即。為估計各網(wǎng)絡(luò)的延時,我們使用TensorRT提供的性能分析工具,在目標(biāo)硬件TX2上,測量了不同的殘差模塊所需的延時,并建立一個查找表
。這里,分別是輸入輸出特征的通道數(shù),而
是相應(yīng)的空間尺寸。利用該查找表將各殘差模塊延時進行加和記為對一個網(wǎng)絡(luò)延時的估計。在圖3(a)中,我們對若干網(wǎng)絡(luò)的估計延時與實際延時進行了比較,可見估計延時與實際延時基本一致。
(三)偏序關(guān)系假設(shè)
我們借用集合論中的偏序(Partial Order)關(guān)系來描述模型結(jié)構(gòu)之間的聯(lián)系:集合中的元素為不同的模型結(jié)構(gòu)(見圖2(a)),集合中的二元關(guān)系定義為:若x比y更淺且更窄,則稱x是y的前序,記為。如此,整個搜索空間中的模型結(jié)構(gòu)就滿足了嚴(yán)格偏序關(guān)系,包括反自反性、反對稱行、傳遞性。圖4給出了若干模型結(jié)構(gòu)間偏序關(guān)系的示意圖。偏序關(guān)系假設(shè)為:若x是y的前序(意味著x比y更淺且更窄),則x的速度更快,精度更低。這可以寫為:
在圖3(b)中,我們基于已訓(xùn)練的模型,對偏序關(guān)系假設(shè)的合理性進行了驗證,其中,
,
??梢?,在本實驗所關(guān)心的模型子空間中,偏序關(guān)系假設(shè)是合理的。
(四)偏序關(guān)系剪枝
基于偏序關(guān)系假設(shè),我們可以在模型搜索中對搜索空間進行剪枝。圖5是該剪枝過程的一個示意圖。集合為已訓(xùn)練的模型結(jié)構(gòu),集合中的模型代表了當(dāng)前迭代中所能達到的最優(yōu)速度-精度折衷邊界。對于一個非邊界模型
,其任意前序模型
,應(yīng)有:
而我們已有速度-精度折衷更好的邊界點:
因此w的部分前序元素,延時將比高,而精度將比低,也即處于圖5的陰影部分。這些中的模型結(jié)構(gòu)無法提供更好的速度-精度折衷,可以據(jù)此對搜索空間進行剪枝:。如此反復(fù)迭代,在迭代中不斷對搜索空間進行剪枝,直至速度-精度折衷的邊界趨于穩(wěn)定,如算法1所描述。
(五)語義分割網(wǎng)絡(luò)的Decoder設(shè)計
本文中語義分割網(wǎng)絡(luò)的結(jié)構(gòu)設(shè)計如圖6所示,在Stage 5中加入了pyramid pooling module,使用圖6(b)所示的Fusion node融合不同分辨率的特征,其中Channel Controller(CC)為1x1卷積,用以控制Decoder在不同分辨率下的寬度。不同的,構(gòu)成了不同復(fù)雜度的Decoder結(jié)構(gòu)。這些Decoder結(jié)構(gòu)之間也存在著偏序關(guān)系假設(shè),因此也可以使用偏序關(guān)系剪枝算法對搜索空間進行剪枝。
二、實驗數(shù)據(jù)
(一)TX2上的骨干網(wǎng)絡(luò)搜索
我們在TX2上進行骨干網(wǎng)絡(luò)的搜索,最終選取3個最有代表性的網(wǎng)絡(luò),記為3個東風(fēng)(DF)骨干網(wǎng)絡(luò)。如圖7與表1所示,DF網(wǎng)絡(luò)取得了TX2上最好的速度-精度折衷。
DF1網(wǎng)絡(luò)FLOPs明顯高于MobileNet于ShuffleNet等,但在TX2上實際延時更低。這是因為FLOPs作為間接指標(biāo),僅考慮了浮點計算量而沒有考慮內(nèi)存訪問的延時。以ShuffleNetV2與DF1為例,其內(nèi)存訪問代價(也即中間層的特征),分別為4.9M與2.9M。
NASNet與PNASNet在網(wǎng)絡(luò)結(jié)構(gòu)搜索中均未考慮模型延時,所得模型結(jié)構(gòu)復(fù)雜,內(nèi)存訪問量大,實際延時較高。有一些同期工作(ProxylessNAS/FBNet)也在模型搜索中考慮了模型延時,DF網(wǎng)絡(luò)在速度-精度折衷上也優(yōu)于這些模型。這是因為:一、這些模型未針對TX2平臺進行模型搜索;二、這些網(wǎng)絡(luò)均基于MobileNetV2的inverted bottleneck模塊,相比本文使用的殘差模塊,內(nèi)存訪問量更高。
(二)TX2/1080Ti上的Decoder網(wǎng)絡(luò)結(jié)構(gòu)搜索
基于TX2上搜索的東風(fēng)骨干網(wǎng)絡(luò),我們也在TX2/1080Ti上分別進行了Decoder結(jié)構(gòu)搜索。如表3所示,東風(fēng)分割網(wǎng)絡(luò)(DF-Seg)是目前1080Ti上速度-精度折衷最好的語義分割網(wǎng)絡(luò)。DF-Seg網(wǎng)絡(luò)的速度(FPS)與精度(mIoU)均在1024x2048的分辨率下,使用TensorRT提供的性能分析工具在1080Ti上進行測試。為與ICNet公平對比,在FPS(Caffe)欄中使用“Caffe Time”工具,在Titan X(Maxwell)上進行速度測試。表4與表5分別為Titan X(Maxwell)/TX2上的速度測試,DF-Seg的速度大幅優(yōu)于現(xiàn)有結(jié)果,能夠在TX2上實現(xiàn)對720P分辨率圖像的30FPS的語義分割。
-
算法
+關(guān)注
關(guān)注
23文章
4624瀏覽量
93110 -
網(wǎng)絡(luò)
+關(guān)注
關(guān)注
14文章
7586瀏覽量
89011 -
結(jié)構(gòu)
+關(guān)注
關(guān)注
1文章
117瀏覽量
21615
發(fā)布評論請先 登錄
相關(guān)推薦
評論