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

基于MobileNetV3的結構性剪枝優化

2019-02-26 03:10:16宋非洋吳黎明鄭耿哲何欣穎
自動化與信息工程 2019年6期
關鍵詞:深度模型

宋非洋 吳黎明 鄭耿哲 何欣穎

基于MobileNetV3的結構性剪枝優化

宋非洋1吳黎明2鄭耿哲2何欣穎2

(1.廣東工業大學信息工程學院 2.廣東工業大學機電工程學院)

針對深度神經網絡參數過多以及計算量巨大,使其較難部署在移動設備和APP上的問題,提出采用高效輕量化的MobileNetV3模型與結構性剪枝相融合的方法,對深度神經網絡進行重構和壓縮。最終生成的精簡模型體積比原始模型縮小5.8倍,大幅度減少計算量和內存的消耗。經過微調后的精簡網絡模型相比于稀疏化訓練的網絡,準確度更高、泛化性能更好,能夠直接運行在成熟框架(Pytorch,MXnet或TensorFlow等)或硬件平臺上(GPU,FPGA等),無需特殊算法庫的支持。

深度神經網絡壓縮;MobileNet;結構性剪枝

0 引言

近年來,深度神經網絡在計算機視覺、語音識別等方面取得較大成就[1-3]。深度神經網絡的發展一方面得益于基礎理論的完善,另一方面也得益于近幾年GPU計算能力的爆發性增長。隨著深度神經網絡的不斷發展,為完成更復雜的任務,深度神經網絡變得越來越深,計算量也越來越大。Hinton和Alex Krizhevsky等人[4]在2012年的國際計算機視覺挑戰賽(ImageNet Large Scale Visual Recognition Competition,ILSVRC)上提出AlexNet,以16.4%的Top 5錯誤率奪得冠軍,其包含6億3000萬個鏈接,6000萬個參數和65萬個神經元。一張圖片從輸入到輸出需要經過15億次的浮點數計算。后來提出的高性能網絡結構,如VGGNet[5],DenseNet[6]和ResNet[7]等,則需要更多的儲存空間和更高的計算能力。

由于嵌入式設備和移動設備的硬件條件受限,無法支撐這種計算密集型和存儲密集型的深度神經網絡。但與此同時,手機、汽車等移動場景對深度學習的需求越來越多。因此,對深度神經網絡進行壓縮、加速,使其能夠部署在移動設備上變得至關重要[8]。針對上述問題,主流的解決方法有模型壓縮和輕量化模型設計2種。

本文采用高效輕量化的MobileNetV3模型與結構性剪枝相融合的方法,進一步壓縮輕量化的深度神經網絡,并測試了壓縮后的模型性能以及深度神經壓縮[9]中結構性剪枝的壓縮方式對網絡模型的影響。

1 MobileNetV3

2019年,Google公布了MobileNet系列的最新成果MobileNetV3。MobileNetV3作為新一代輕量級深度卷積神經網絡,既繼承于原有的MobileNetV1和MobileNetV2,又擁有許多新特性。

表1 MobileNetV2的基本網絡單元

由于采用會引入延遲,因此網絡前半部分的激活函數仍采用ReLU,后半部分則采用。另外,針對MobileNetV2網絡末端計算量大的問題,使用Avg-Pooling代替計算量大的部分,在降低計算量的同時不會造成精度損失。MobileNetV3的基本網絡單元如圖1所示。

2 結構性剪枝

2.1 剪枝算法

神經網絡剪枝算法最初用于解決模型過擬合問題,現在主要用于網絡的稀疏化,以降低網絡復雜度。目前主流的剪枝算法可分為非結構性剪枝和結構性剪枝2種。大多數情況下,非結構性剪枝是按照人為制定的標準對權重進行修剪。Han Song[14]等人提出閾值剪枝算法,通過設定閾值對網絡中冗余的權重進行裁剪。由于深度神經網絡中存在大量的冗余連接,閾值剪枝算法可有效減小模型復雜度,并通過稀疏數據格式儲存模型,減小模型的存儲空間。然而,這種稀疏數據計算時,采用傳統的計算方式效率較低,只能通過調用專用的稀疏矩陣運算庫,如CUDA的cuSPARSE庫或專業硬件進行計算。另外,盡管閾值剪枝可以壓縮模型的存儲空間,但由于其僅僅使相應的權重置零,而未將冗余的連接從網絡中徹底剔除,模型運行時產生的中間變量仍會消耗大量的內存。Srinivas[15]等人提出使用額外的門變量,對每一個權重都進行稀疏約束,并通過對門變量為零的連接進行剪枝來實現模型壓縮,該方法擁有更高的壓縮率,但內存消耗仍然較大。

Liu Z[16]等人提出一種有效的結構性剪枝方法,通過利用Batch Normalization(BN)層的尺度因子作為深度神經網絡通道的重要性因子,即由值決定是否對通道進行剪枝。

2.2 剪枝步驟

本文采用典型的迭代過程作為結構化剪枝的基本流程,具體步驟:

1)根據數據集制定相應的網絡模型并初始化;

2)對模型進行稀疏化訓練;

3)找到尺度因子較小的通道并進行剪枝;

4)對剪枝后的網絡模型進行微調;

5)重復步驟1)~步驟4);

6)完成剪枝。

剪枝流程圖如圖2所示,其中虛線為迭代過程。

圖2 剪枝流程圖

剪枝后的網絡模型以python通用的pth格式保存,其內部包含優化器(optimizer)參數、迭代數(epochs)以及網絡參數(state_dict)等信息。

2.3 模型重構引導方法

一般來說,深度神經網絡層與層之間以串聯的方式相連接,連接處的通道數相對固定,只有在需要調整或修改模型網絡結構時才進行通道數變更。本文使用的結構化剪枝將冗余通道的輸入輸出連接以及相關的權重全部進行裁剪,導致模型各層的通道數發生改變,且MobileNetV3結構復雜特殊,既包含膨脹層和反向殘差層,又加入了注意力模型。若此時對模型進行測試,由于各層通道數不匹配,會產生模型無法運行的錯誤。因此在完成模型的稀疏化訓練之后,本文提出一種模型重構引導方法。該方法能根據此前訓練好的結構化稀疏模型重新構建一個更緊湊的網絡結構,并載入剪枝后的模型參數,使重構后的模型在網絡大小、卷積計算和運行內存消耗等方面更加輕量化。

本文在pytorch中創建1個_guide類,作為模型重構引導方法的基類;定義guide方法和rebuild方法,將完成訓練的模型保存為稀疏格式并引導模型進行重構。在模型重構引導方法中,主要采用掩膜(mask)方式對模型進行處理,thre表示全局閾值;cfg表示重構引導參數。mask由BN層的權重參數矩陣和torch的內部類方法gt(thre)聯立給出,并以四維tensor形式儲存;每個通道對應的mask值由0或1組成,其中0表示需要進行剪枝的通道,1表示保留的通道。cfg以一維數組的形式儲存,其內部包含每一層網絡需要保留的通道數,即mask非零項的和。此時mask已包含所有的剪枝信息,與重構引導參數cfg相結合即可完成模型重構。

2.4 超參數的選擇

超參數的選擇與調整對模型效果有著顯著的影響,如何找出一個對模型貢獻度最高的超參數,是一項十分重要的工作。本文使用剪枝算法對模型進行稀疏化訓練時,引入了新的損失函數以及超參數。為找出對模型稀疏化效果最優的超參數,本文利用Cifar-10數據集對MobileNetV3進行結構性稀疏化訓練,并同時設定多個超參數,評估不同的超參數對模型稀疏化的影響,結果如圖3所示。

圖3 不同的值下γ重要性因子的分布

3 實驗

3.1 實驗環境

為了保證實驗的準確性和客觀性,本文采用經典的Cifar-10作為實驗數據集。Cifar-10是一個10分類數據集,圖片尺寸為32像素×32像素,每一類包含6000張圖片,共有60000張圖片,其中50000張為訓練集,10000張為測試集。

本文的實驗環境為搭載有NVDIA Tesla T4顯卡的高性能工作站,采用Pytorch深度學習框架對模型進行搭建、訓練和測試。訓練周期為30個epoch;mini-batch為100;優化器為Adam;初始學習率為0.002,采用可變學習率方法,學習策略為

其中為測試集準確率。當<80時,保持學習率為0.002;當8≤87時,學習率為0.001;當87≤學習率為0.0002;當90時,學習率為0.00002。

3.2 實驗結果及分析

3.2.1 剪枝率

為更好地了解結構化剪枝中不同剪枝率對MobileNetV3的影響,本文設定9個不同剪枝率對模型進行實驗測試,結果如圖4所示。

圖4 剪枝率對模型的影響

由圖4可知:模型稀疏化訓練下的準確率比原始模型高3%,且模型在剪枝率為40%時效果最好;說明結構性稀疏化訓練能有效增加模型的泛化性能,減少神經元之間錯綜復雜的依賴關系,提高模型的魯棒性。

3.2.2 模型壓縮率

每經過一個訓練周期后,對相應的模型數據進行保存。在完成全部的訓練周期后,從中篩選出表現最優的結構性稀疏化模型,采用40%的剪枝率進行剪枝微調處理,結果如表2所示。

表2 剪枝微調處理結果

由表2可知:剪枝后模型的體積為16 M,相比原始模型體積減少了77 M;top-1準確率提高了1.6%;模型整體體積壓縮了5.8倍,壓縮率達到17.21%;這表明經過結構化剪枝的模型能夠在保證準確率的情況下,減少模型載入時的內存消耗,提高模型載入的速度。

4 結論

本文基于深度神經網絡壓縮理論,通過結構化剪枝算法簡化網絡結構,提出MobileNetV3模型的改進方案。鑒于原始網絡結構復雜特殊,為了最大程度保留網絡的強連接,本文采取稀疏化訓練和模型重構引導方法,對網絡進行訓練、剪枝、重建和調優等操作,以達到壓縮但不影響性能的效果。Cifar-10數據集的研究結果表明:對MobileNetV3進行不同程度的結構化剪枝,經過微調后的網絡模型相比于稀疏化訓練的網絡,準確度更高、泛化性能更好;同時大幅度減少計算量和內存的消耗。下一步應研究分析模型中各單元模塊對整個MobileNetV3的影響,對各單元模塊分別進行剪枝處理,以理解各模塊層級之間的共適應和依賴關系。

[1] Szegedy Christian, Liu Wei, Jia Yangqing, et al. Going deeper with convolutions[C]//IEEE Conference on Computer Vision and Pattern Recognition. Boston, 2015:1-9.

[2] Hinton G, Deng L, Yu D, et al. Deep neural networks for acoustic modeling in speech recognition: the shared views of four research groups[J]. IEEE Signal Processing Magazine, 2012,29(6):82-97.

[3] Huang Zhen, Siniscalchi Sabato Marco, Lee Chin-Hui. A unified approach to transfer learning of deep neural networks with applications to speaker adaptation in automatic speech recognition[J]. Neurocomputing, 2016,218:448-459.

[4] Krizhevsky Alex, Sutskever Ilya, Hinton Geoffrey E. ImageNet Classification with Deep Convolutional Neural Networks[J]. Communications of the ACM,2017,60(6):84-90.

[5] Ioffe Sergey, Szegedy Christian. Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift[C]//InternationalConference on Machine Learning.Lille, 2015:448-456.

[6] Huang Gao, Liu Zhuang, Weinberger Kilian Q. Densely Connected Convolutional Networks[C]//IEEE Conference on Computer Vision and Pattern Recognition. Honolulu, 2017:4700-4708.

[7] He K, Zhang X, Ren S, et al. Deep Residual Learning for Image Recognition[C]//IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, 2016:770-778.

[8] 紀榮嶸,林紹輝,晁飛, 等.深度神經網絡壓縮與加速綜述[J].計算機研究與發展,2018,55(9):1871-1888.

[9] Han S, Mao H, Dally W J. Deep Compression:Compressing Deep Neural Networks with Pruning,Trained Quantization and Huffman Coding[EB/OL].http//arxiv.org/abs/1510.00149,(2016-02-15).

[10] Howard A G , Zhu M , Chen B , et al. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications[EB/OL].http//arxiv.org/abs/1409.1556,(2017-04-17).

[11] Sandler M , Howard A , Zhu M , et al. Inverted Residuals and Linear Bottlenecks: Mobile Networks for Classification, Detection and Segmentation[C]//IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, 2018:4510-4520.

[12] Tan M , Chen B , Pang R , et al. MnasNet:Platform-Aware Neural Architecture Search for Mobile[C]//IEEE Conference on Computer Vision and Pattern Recognition. Long Beach, 2019: 2820-2828.

[13] Jie H, Li S, Albanie S, et al. Squeeze-and-Excitation Networks[C]//IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, 2018:7132-7141.

[14] Han S , Pool J , Tran J , et al. Learning both Weights and Connections for Efficient Neural Networks[C]//Neural Information Processing Systems Conference. Barcelona, 2016:1135-1143.

[15] Srinivas S, Subramanya A, Babu R V. Training Sparse Neural Networks[C]//IEEE Conference on Computer Vision and Pattern Recognition Workshops. Honolulu, 2017:138-145.

[16] Liu Z , Li J , Shen Z , et al. Learning Efficient Convolutional Networks through Network Slimming[C]//IEEE International Conference on Computer Vision. Venice, 2017: 2736-2744.

Optimization of Structural Pruning Based on MobileNetV3

Song Feiyang1Wu Liming2Zheng Gengzhe2He Xinying2

(1.College of Information Engineering , Guangdong University of Technology 2.College of Mechanical and Electrical Engineering , Guangdong University of Technology)

With the continuous development and landing of artificial intelligence, deep neural networks have made great achievements in target detection and image recognition, but the excessive parameters and huge calculations of deep neural networks make it difficult to deploy on mobile devices and apps. In order to solve this problem, a high efficiency and light weight MobileNetV3 model combined with structural pruning is proposed to reconstruct and compress the deep neural network. The resulting streamlined model is 3.2 times smaller than the original model, which greatly reduces the amount of computation and memory consumption. The fine-tuned streamlined network model has higher accuracy and better generalization performance than the sparse training network and can run directly on mature frameworks (Pytorch, MXnet or TensorFlow, etc.) or hardware platforms(GPU, FPGA, etc.). No support for special algorithms is required.

Deep Neural Network Compression; MobileNet; Structural Pruning

宋非洋,男,1995年生,碩士研究生,主要研究方向:計算機視覺與深度學習。E-mail:458852863@qq.com

吳黎明,男,1962年生,教授,主要研究方向:人工智能與深度學習。E-mail:jkyjs@gdut.edu.cn

鄭耿哲,男,1996年生,碩士研究生,主要研究方向:計算機視覺與深度學習。E-mail:zhenggengzhe@mail2.gdut.edu.cn

何欣穎,女,1996年生,碩士研究生,主要研究方向:機器視覺、深度學習。E-mail:756594764@qq.com

猜你喜歡
深度模型
一半模型
深度理解一元一次方程
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
深度觀察
深度觀察
深度觀察
深度觀察
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉換方法初步研究
主站蜘蛛池模板: 黄色不卡视频| www亚洲精品| 国产精品深爱在线| 久久成人18免费| 国产91视频免费观看| 国产女人水多毛片18| 国产大全韩国亚洲一区二区三区| 青青青亚洲精品国产| 美臀人妻中出中文字幕在线| 伊人成人在线视频| 成人福利在线看| 伊人久久综在合线亚洲2019| 亚洲精品久综合蜜| 欧美黄色a| 亚洲第一视频网| 成人伊人色一区二区三区| 国产成人亚洲毛片| 亚洲第一综合天堂另类专| 天堂av综合网| 亚洲狼网站狼狼鲁亚洲下载| 亚洲一区毛片| 久草热视频在线| 精品一區二區久久久久久久網站| 91小视频在线观看| 欧美精品H在线播放| 最新亚洲人成无码网站欣赏网| 国产精品综合久久久| 欧美日韩中文国产| 国产永久无码观看在线| 亚洲一级毛片在线观播放| 激情无码视频在线看| 国产精品漂亮美女在线观看| 亚洲女同欧美在线| 波多野衣结在线精品二区| 先锋资源久久| 国产激爽爽爽大片在线观看| 免费可以看的无遮挡av无码| 国产成人永久免费视频| 91成人精品视频| 99久久精品国产综合婷婷| 国产制服丝袜91在线| 又黄又爽视频好爽视频| 99精品国产高清一区二区| 亚洲国产成人久久77| 欧美精品v欧洲精品| 最新精品国偷自产在线| 天堂亚洲网| 国产欧美日本在线观看| 在线不卡免费视频| 国产亚洲精品自在久久不卡| 久久国产V一级毛多内射| 久久亚洲日本不卡一区二区| 午夜性爽视频男人的天堂| 国产美女视频黄a视频全免费网站| 不卡网亚洲无码| 国产亚洲精品资源在线26u| 欧美成人一区午夜福利在线| h视频在线观看网站| 熟妇丰满人妻| 女高中生自慰污污网站| 亚洲国产日韩在线观看| 国产成人综合亚洲欧美在| 免费A级毛片无码无遮挡| 国产成人综合亚洲欧美在| 国产一区亚洲一区| 在线精品亚洲一区二区古装| 国产99在线观看| 麻豆精选在线| 午夜电影在线观看国产1区| 久久不卡精品| 亚洲国产91人成在线| 日本人真淫视频一区二区三区 | 中国国产A一级毛片| 青青操视频在线| 人妻无码AⅤ中文字| 午夜免费视频网站| 国产精品毛片一区| 亚洲区视频在线观看| 久久精品欧美一区二区| 国产亚洲视频播放9000| 欧美福利在线观看| 特级欧美视频aaaaaa|