版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第六章:人工智能芯片的數(shù)據(jù)流設(shè)計(jì)人工智能芯片設(shè)計(jì)ArtificialIntelligenceChipDesign6.1卷積神經(jīng)網(wǎng)絡(luò)模型分析2ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis近十余年間,卷積神經(jīng)網(wǎng)絡(luò)飛速發(fā)展,尤其是在計(jì)算機(jī)視覺領(lǐng)域,涌現(xiàn)出了一大批性能卓越的網(wǎng)絡(luò)模型,如AlexNet、VGGNet、GoogLeNet、ResNet等。在圖像分類識(shí)別這一基本任務(wù)中取得了遠(yuǎn)超傳統(tǒng)算法的準(zhǔn)確率。從表中可以看出,卷積神經(jīng)網(wǎng)絡(luò)的主要發(fā)展趨勢(shì)是深度上的增加,隨著網(wǎng)絡(luò)層數(shù)的增加,模型提取特征的能力增強(qiáng),最終表現(xiàn)為分類準(zhǔn)確率的大幅提升。6.1卷積神經(jīng)網(wǎng)絡(luò)模型分析3AlexNet是首次在大規(guī)模圖像數(shù)據(jù)集上進(jìn)行訓(xùn)練和測(cè)試的卷積神經(jīng)網(wǎng)絡(luò),于2012年ImageNet大賽上獲得了圖像分類項(xiàng)目的冠軍,其結(jié)構(gòu)如圖6-1所示。與LeNet非常相似,但網(wǎng)絡(luò)更深,有5個(gè)卷積層和3個(gè)全連接層,有11×11、5×5、3×3三種尺寸的卷積核在每個(gè)卷積層和全連接層后都使用ReLU
函數(shù)進(jìn)行激活處理訓(xùn)練過(guò)程中引入dropout來(lái)緩解過(guò)擬合,采取數(shù)據(jù)擴(kuò)充、SGD等方法提高學(xué)習(xí)的有效性圖6-1AlexNet模型結(jié)構(gòu)示意圖
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.1卷積神經(jīng)網(wǎng)絡(luò)模型分析4VGGNet由牛津大學(xué)的VisualGeometryGroup于2014年提出,為適應(yīng)不同場(chǎng)景,VGGNet包含6個(gè)不同的網(wǎng)絡(luò),深度從11到19不等,其中最常用的VGGNet-16,結(jié)構(gòu)如圖6-2所示。圖6-2VGGNet-16網(wǎng)絡(luò)結(jié)構(gòu)小尺寸的卷積核是VGGNet的一個(gè)重要特征,VGGNet沒有采用AlexNet中的大尺寸卷積核,如7×7、5×5的卷積核,而是通過(guò)采取小尺寸的卷積核、堆疊卷積子層來(lái)提升特征提取能力。卷積神經(jīng)網(wǎng)絡(luò)各層的時(shí)間復(fù)雜度(Time),即模型運(yùn)算次數(shù)可用式(6-1)表示:ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.1卷積神經(jīng)網(wǎng)絡(luò)模型分析5
(6-1)ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.1卷積神經(jīng)網(wǎng)絡(luò)模型分析6
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis問(wèn)題總結(jié)部署卷積神經(jīng)網(wǎng)絡(luò)的瓶頸主要由兩方面:龐大的參數(shù)規(guī)模需要大量的存儲(chǔ)空間,在運(yùn)算過(guò)程中需要將參數(shù)搬運(yùn)到處理器片上緩存,這對(duì)硬件平臺(tái)的傳輸帶寬要求極大;浮點(diǎn)運(yùn)算的復(fù)雜度要遠(yuǎn)高于定點(diǎn)運(yùn)算,反映在實(shí)際應(yīng)用中就是浮點(diǎn)運(yùn)算任務(wù)在處理器上運(yùn)行時(shí)的能量消耗和資源占用量要遠(yuǎn)超定點(diǎn)運(yùn)算。例如,通過(guò)實(shí)驗(yàn)發(fā)現(xiàn),在FPGA中,1個(gè)16位的4階浮點(diǎn)乘法器要消耗2個(gè)DSP(數(shù)字信號(hào)處理器)、51個(gè)LUT(查找表)和95個(gè)FF(觸發(fā)器),最大工作頻率約為219MHz;而一個(gè)16位的定點(diǎn)乘法器僅需要1個(gè)DSP,且可以輕松達(dá)到300MHz的工作頻率。解決辦法使用基于塊浮點(diǎn)數(shù)的數(shù)據(jù)量化算法在基于塊浮點(diǎn)數(shù)的卷積神經(jīng)網(wǎng)絡(luò)中,復(fù)雜的浮點(diǎn)乘加運(yùn)算可用定點(diǎn)數(shù)運(yùn)算代替6.1卷積神經(jīng)網(wǎng)絡(luò)模型分析7ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.2塊浮點(diǎn)數(shù)設(shè)計(jì)8
圖6-3單精度浮點(diǎn)數(shù)結(jié)構(gòu)Exponent全零Exponent全1Mantissa全零0無(wú)窮大的數(shù)據(jù)Mantissa非零(NAN)ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis
6.2塊浮點(diǎn)數(shù)設(shè)計(jì)9ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis
106.2塊浮點(diǎn)數(shù)設(shè)計(jì)圖6-4半精度浮點(diǎn)數(shù)結(jié)構(gòu)ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.2塊浮點(diǎn)數(shù)設(shè)計(jì)116.2.2塊浮點(diǎn)數(shù)結(jié)構(gòu)設(shè)計(jì)基于塊浮點(diǎn)數(shù)(Block-Floating-Point,BFP)的卷積神經(jīng)網(wǎng)絡(luò)部署方案中,塊浮點(diǎn)數(shù)可看作是一種特殊的浮點(diǎn)數(shù)表示形式,基本結(jié)構(gòu)如圖6-5所示:塊浮點(diǎn)數(shù)讓一批數(shù)據(jù)共享同一個(gè)指數(shù)塊浮點(diǎn)數(shù)內(nèi)部保留有指數(shù)部分,所以擁有較高的數(shù)據(jù)表示動(dòng)態(tài)范圍,兩個(gè)BFP數(shù)據(jù)塊的計(jì)算復(fù)雜度降低到了定點(diǎn)數(shù)程度圖6-5塊浮點(diǎn)數(shù)結(jié)構(gòu)ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.2塊浮點(diǎn)數(shù)設(shè)計(jì)12
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.2塊浮點(diǎn)數(shù)設(shè)計(jì)13
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.2.3無(wú)偏差溢出數(shù)據(jù)處理塊浮點(diǎn)算法中的精度損失主要來(lái)自于浮點(diǎn)數(shù)與塊浮點(diǎn)數(shù)間的轉(zhuǎn)換,在尾數(shù)部分的移位操作過(guò)程中,即式(6-7),不可避免的會(huì)有一部分比特位無(wú)法完整保留下來(lái),這部分比特?cái)?shù)據(jù)稱為溢出數(shù)據(jù)。處理溢出數(shù)據(jù)的兩種常用方法:截?cái)嗖僮?,直接舍棄掉溢出?shù)據(jù),但會(huì)引入較大的向下偏差且會(huì)在卷積層間累積,最終產(chǎn)生明顯偏差舍入操作,只會(huì)引入高斯白噪聲,不存在明顯的偏差由于尾數(shù)位寬有限,所以浮點(diǎn)數(shù)能精確表達(dá)的數(shù)值也有限,在兩個(gè)相鄰的浮點(diǎn)數(shù)之間,一定有無(wú)數(shù)個(gè)不能用浮點(diǎn)數(shù)精確表達(dá)的實(shí)數(shù),IEEE754標(biāo)準(zhǔn)中,對(duì)于這些不能被精確表達(dá)的數(shù)字,用最接近它們?nèi)≈档母↑c(diǎn)數(shù)近似表示,即舍入。6.2塊浮點(diǎn)數(shù)設(shè)計(jì)14ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis一共有以下四種常見的舍入模式:表6-3以實(shí)例的形式展示了四種舍入方式的計(jì)算規(guī)則(僅保留整數(shù)部分),可以發(fā)現(xiàn)后三種模式都保持有向上或向下的偏差,容易在卷積神經(jīng)網(wǎng)絡(luò)中逐層累積,造成層間累積誤差,而RN模式則不會(huì),是一種無(wú)偏差的舍入模式。在RN模式下,會(huì)根據(jù)需要保留的最后一位的奇偶情況決定是進(jìn)位或是舍棄,以保證舍入后的數(shù)據(jù)為偶數(shù)。從統(tǒng)計(jì)意義上考慮,須保留的最后一位為奇數(shù)或偶數(shù)的概率相當(dāng),向下和向上的偏差相互抵消。6.2塊浮點(diǎn)數(shù)設(shè)計(jì)15RN:舍入到最近的可表示的值,當(dāng)有兩個(gè)最接近的可表示的值時(shí)首選偶數(shù)值RZ:向零的方向舍入RU:向正無(wú)窮大方向舍入RD:向負(fù)無(wú)窮大方向舍入ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis16ArtificialIntelligenceChipDesign,
Lecture
01:
Introduction6.3卷積神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)量化算法6.3.1輕量級(jí)塊劃分模式塊浮點(diǎn)通過(guò)共享塊指數(shù)和壓縮尾數(shù)位寬量化浮點(diǎn)數(shù),以降低卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)規(guī)模和計(jì)算復(fù)雜度。尾數(shù)向右移位導(dǎo)致部分?jǐn)?shù)據(jù)丟失,尤其對(duì)絕對(duì)值較小的數(shù)據(jù),這被稱為BFP量化誤差。量化誤差取決于數(shù)據(jù)塊大小、塊內(nèi)數(shù)據(jù)分布和尾數(shù)位寬。較小數(shù)據(jù)塊、均勻分布和更大尾數(shù)位寬能減少誤差,但會(huì)增加參數(shù)規(guī)模和計(jì)算復(fù)雜度,需平衡權(quán)衡。卷積矩陣化運(yùn)算
17ArtificialIntelligenceChipDesign,
Lecture
01:
Introduction表6-4顯示,等式(6-10)和(6-12)的BFP塊劃分方案涉及超過(guò)50176次塊格式化,且塊指數(shù)的存儲(chǔ)成本是等式(6-9)和(6-11)方案的數(shù)百倍。這種高成本在卷積神經(jīng)網(wǎng)絡(luò)的各隱藏層中普遍存在,因此代價(jià)過(guò)高,不符合減少參數(shù)規(guī)模和計(jì)算復(fù)雜度的目標(biāo)。為了評(píng)估這兩種塊格式化方案的精確度,基于ImageNet圖像分類數(shù)據(jù)集在VGGNet-16上進(jìn)行了測(cè)試。實(shí)驗(yàn)結(jié)果顯示,等式(6-11)的塊格式化方案相比等式(6-9),Top-1和Top-5準(zhǔn)確率分別高出1.59%和0.68%,因此最終選擇等式(6-11)方案。
6.3.2低比特塊浮點(diǎn)數(shù)設(shè)計(jì)文獻(xiàn)表明,定點(diǎn)運(yùn)算相比浮點(diǎn)運(yùn)算在能量和資源占用上更少,尤其是加操作,且降低數(shù)據(jù)位寬可減少硬件資源消耗。分析表明,5-bit的塊指數(shù)位寬與半精度浮點(diǎn)數(shù)一致,足夠滿足卷積網(wǎng)絡(luò)需求,而尾數(shù)位寬對(duì)參數(shù)規(guī)模、計(jì)算復(fù)雜度和表示精度影響更大。為選擇最短尾數(shù)位寬的塊浮點(diǎn)格式,基于Caffe平臺(tái)進(jìn)行了一系列實(shí)驗(yàn),測(cè)試VGGNet-16、GoogLeNet和ResNet-50三種經(jīng)典網(wǎng)絡(luò),使用ImageNet數(shù)據(jù)集對(duì)9組不同尾數(shù)位寬組合進(jìn)行評(píng)估。實(shí)驗(yàn)將輸入特征圖和權(quán)值進(jìn)行塊格式化,進(jìn)行矩陣乘法后輸出特征圖再轉(zhuǎn)化為浮點(diǎn)數(shù)。結(jié)果表明,當(dāng)尾數(shù)位寬為8時(shí),分類準(zhǔn)確率下降不超過(guò)0.12%,模型精度幾乎無(wú)損,特別是GoogLeNet在未重新訓(xùn)練下?lián)p失最小。6.3.3面向硬件加速器的塊浮點(diǎn)數(shù)據(jù)流結(jié)構(gòu)基于FPGA的加速器設(shè)計(jì)考慮并行計(jì)算,提出了簡(jiǎn)化計(jì)算、節(jié)省片上存儲(chǔ)和帶寬的塊浮點(diǎn)數(shù)據(jù)流結(jié)構(gòu)。卷積運(yùn)算數(shù)據(jù)包括輸入特征圖、權(quán)重和偏置項(xiàng)。權(quán)重可提前轉(zhuǎn)化為塊浮點(diǎn)格式存儲(chǔ),減少計(jì)算和存儲(chǔ)需求。偏置項(xiàng)根據(jù)輸入特征圖動(dòng)態(tài)轉(zhuǎn)化。6.3.4四階誤差分析模型第一階段
第二階段
第三階段
第四階段
6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法24卷積神經(jīng)網(wǎng)絡(luò)的計(jì)算量和參數(shù)量主要來(lái)自卷積層和全連接層。鑒于卷積層和全連接層在結(jié)構(gòu)上區(qū)別,導(dǎo)致卷積層和全連接層的稀疏化工作上存在較大區(qū)別。因此,本節(jié)將對(duì)卷積神經(jīng)網(wǎng)絡(luò)的卷積層和全連接層分別進(jìn)行分析,并設(shè)計(jì)相應(yīng)的稀疏化方案,最終綜合卷積層和全連接層的稀疏化方案,實(shí)現(xiàn)對(duì)卷積神經(jīng)網(wǎng)絡(luò)的整體的參數(shù)壓縮和計(jì)算量削減工作。6.4.1卷積層稀疏化算法引入的掩碼層(MarkLayer):掩碼層其結(jié)構(gòu)如圖6-7所示,掩碼層在網(wǎng)絡(luò)結(jié)構(gòu)中首先是通過(guò)層參數(shù)大小起到篩選卷積層的卷積核的作用,在掩碼層完成篩選卷積核之后,卷積層就產(chǎn)生了稀疏化的效果。圖6-7掩碼層在卷積神經(jīng)網(wǎng)絡(luò)中作用ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis
6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法25ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法26
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis
6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法27ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法28
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法29
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法30
圖6-8掩碼層參數(shù)篩選卷積核示意圖ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis3.參數(shù)微調(diào)在完成整個(gè)網(wǎng)絡(luò)卷積層的卷積核篩選之后,掩碼層的參數(shù)分布如圖6-9所示。由于掩碼層的參數(shù)只是接近于0,這些卷積核的被剔除之后依然會(huì)對(duì)網(wǎng)絡(luò)的預(yù)測(cè)精度產(chǎn)生一定的影響。在大多數(shù)情況下,一般會(huì)在完成卷積核的稀疏化之后對(duì)網(wǎng)絡(luò)進(jìn)行甚于參數(shù)進(jìn)行微調(diào)。注:在大多數(shù)情況下,一般會(huì)在完成卷積核的稀疏化之后對(duì)網(wǎng)絡(luò)進(jìn)行參數(shù)微調(diào)。由于在稀疏化工作中使用稀疏化正則項(xiàng)進(jìn)行約束,使得參數(shù)產(chǎn)生約束效果,但參數(shù)微調(diào)的過(guò)程中,不需要剩余卷積核參數(shù)產(chǎn)生稀疏化效果。因此,在此處本章遵循原始網(wǎng)絡(luò)訓(xùn)練效果,使用原始網(wǎng)絡(luò)訓(xùn)練的正則化約束項(xiàng)。6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法31圖6-9掩碼層參數(shù)分布情況ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法32
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法33然而,一般情況下在卷積層提取的高層此特征圖像的數(shù)量較多和圖像尺寸較大,因此這樣導(dǎo)致最終的全連接層的參數(shù)比較多。全連接層部分參數(shù)占整體參數(shù)量的85%以上對(duì)于全連接層,其參數(shù)龐大的主要來(lái)源就是卷積層輸入輸出完全互連的情況下,參數(shù)就會(huì)出現(xiàn)較多參數(shù)量。但是對(duì)于所有的每一個(gè)輸出神經(jīng)元,不是每一個(gè)輸入高層的特征存在較多信息。降低全連接層之間的互連數(shù)量就成為降低全連接層參數(shù)量的一種重要的方法。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法34
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法35計(jì)算相關(guān)系數(shù)過(guò)程中,采用的50000個(gè)樣本作為樣本數(shù)據(jù)。采樣后計(jì)算的全連接層的相關(guān)系數(shù)分布在-1和1之間,其中-1表示負(fù)相關(guān),1表示。相關(guān),0表示不相關(guān)。圖6-10表示全連接層fc7的相關(guān)系數(shù)分布情況。圖6-10全連接層fc7的相關(guān)系數(shù)分布圖從圖中可以明顯發(fā)現(xiàn),全連接層的輸入輸出之間的相關(guān)系數(shù)大多集中的0附近,這就表明全連接層之間的輸入輸出數(shù)據(jù)大多數(shù)是一種弱相關(guān)的關(guān)系。本章將對(duì)于全連接層中的fc6和fc7進(jìn)行稀疏化操作注:最后一層fc8由于直接輸出分類結(jié)果,如果對(duì)其進(jìn)行稀疏化工作的話,將會(huì)嚴(yán)重影響最終的識(shí)別準(zhǔn)確率。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法36對(duì)于稀疏化后全連接層,其結(jié)構(gòu)由原來(lái)的輸入輸出全部連接變成選擇性連接,結(jié)構(gòu)如圖6-11所示。圖6-11全連接層稀疏化前后網(wǎng)絡(luò)結(jié)構(gòu)ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法376.4.3卷積神經(jīng)網(wǎng)絡(luò)整體稀疏化算法在前兩個(gè)小節(jié)中,已經(jīng)針對(duì)卷積神經(jīng)網(wǎng)絡(luò)的卷積層和全連接層分別進(jìn)行了稀疏化算法的研究及其單獨(dú)的性能分析。大多數(shù)網(wǎng)絡(luò)的稀疏化工作則是對(duì)整個(gè)卷積神經(jīng)網(wǎng)絡(luò)模型而言的,因此本章需要將上述兩種方法同時(shí)應(yīng)用在卷積神經(jīng)網(wǎng)絡(luò)模型上,并且測(cè)試其效果,本章選取VGGNet16-D作為測(cè)試網(wǎng)絡(luò)。圖6-12網(wǎng)絡(luò)整體稀疏化后的網(wǎng)絡(luò)參數(shù)微調(diào)的損失和識(shí)別準(zhǔn)確率實(shí)驗(yàn)方案:在卷積層,本章設(shè)置了2組實(shí)驗(yàn)用于驗(yàn)證的卷積層的算法的有效性,采用80%計(jì)算量削減的FLOPs組配置。此外,本節(jié)將稀疏化卷積層和稀疏化的全連接層進(jìn)行了融合,得到新的稀疏化網(wǎng)絡(luò)模型。同時(shí)對(duì)參數(shù)進(jìn)行了微調(diào),其微調(diào)過(guò)程中的損失和識(shí)別準(zhǔn)確率如圖6-12所示。實(shí)驗(yàn)結(jié)果:在稀疏化網(wǎng)絡(luò)模型識(shí)別精度基本不變的情況下,實(shí)現(xiàn)整個(gè)網(wǎng)絡(luò)參數(shù)削減達(dá)到18.39%和計(jì)算量削減到不足原始網(wǎng)絡(luò)的20%。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法38
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.4卷積神經(jīng)網(wǎng)絡(luò)稀疏化算法39算法總結(jié)表6-9是本章算法、DeepCompression方法和Sensitivity-Oriented方法在VGGNet16-D上的參數(shù)壓縮率和計(jì)算加速比實(shí)驗(yàn)結(jié)果。在整體網(wǎng)絡(luò)參數(shù)方面,本節(jié)實(shí)現(xiàn)的算法達(dá)到18%的參數(shù)壓縮率在網(wǎng)絡(luò)的計(jì)算加速方面,本節(jié)將計(jì)算量單獨(dú)分析,在全連接層實(shí)施了基于數(shù)據(jù)訓(xùn)練的掩碼層進(jìn)行卷積層稀疏化,最終實(shí)現(xiàn)整體網(wǎng)絡(luò)5.02倍理論計(jì)算加速效果,相比于參數(shù)壓縮率較高的Sensitivity-Oriented方法,本節(jié)的計(jì)算加速效果是其1.98倍。在算法效率方面,本章采取直接參數(shù)訓(xùn)練方式對(duì)卷積層進(jìn)行稀疏化,這種方式首先特點(diǎn)是根據(jù)數(shù)據(jù)集動(dòng)態(tài)調(diào)整用于評(píng)價(jià)卷積核的掩碼層參數(shù),在稀疏化正則項(xiàng)和稀疏化網(wǎng)絡(luò)損失的共同約束下,實(shí)現(xiàn)最小的網(wǎng)絡(luò)損失得到需要稀疏化比例的網(wǎng)絡(luò)模型。同時(shí)在全連接層中,本章采取基于數(shù)據(jù)分析的相關(guān)系數(shù)方法,充分考慮到了數(shù)據(jù)在網(wǎng)絡(luò)模型適應(yīng)性問(wèn)題。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速40從前述分析可以看出,具有高準(zhǔn)確率的卷積神經(jīng)網(wǎng)絡(luò)的參數(shù)規(guī)模一般很大(百兆級(jí)別)、涉及的計(jì)算量通常也是在GFLOP的數(shù)量級(jí)上。這種巨大的存儲(chǔ)和計(jì)算量需求非常不利于移動(dòng)嵌入式設(shè)備的部署。但是網(wǎng)絡(luò)參數(shù)存在很大的冗余性,通過(guò)合理的網(wǎng)絡(luò)結(jié)構(gòu)轉(zhuǎn)換和參數(shù)表示,原始網(wǎng)絡(luò)參數(shù)的10%就能完成同樣的分類任務(wù)。本節(jié)從另外一個(gè)角度提出了基于網(wǎng)絡(luò)Low-Rank特性的加速方案6.5.1卷積神經(jīng)網(wǎng)絡(luò)的Low-Rank特性卷積神經(jīng)網(wǎng)絡(luò)中卷積層的卷積核在網(wǎng)絡(luò)設(shè)計(jì)時(shí)希望不同卷積核能提取到圖像的不同特征,但實(shí)驗(yàn)表明,各卷積層部分卷積核提取的圖像特征相似,即存在相關(guān)性。如圖6-13所示(輸入圖像在第一層卷積層提取的特征圖)圖6-13卷積層輸出特征圖之間相關(guān)性ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速41
圖6-14輸出特征圖相關(guān)性定量衡量ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速42
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速43例如:對(duì)一個(gè)有個(gè)通道的的輸入特征圖,對(duì)應(yīng)的卷積核通道數(shù)也是個(gè),卷積核大小是,這里處于簡(jiǎn)單考慮,設(shè)定輸出卷積核的為個(gè),卷積計(jì)算的示意圖如圖6-15所示。圖6-15卷積計(jì)算示意圖
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis
6.5基于Low-Rank的算法加速44圖6-16全連接計(jì)算示意圖ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速45
conv1_2的卷積核重要性分布(b)fc6的卷積核重要性分布圖6-17VGGNet-16卷積層的卷積核和全連接層的神經(jīng)元的重要性分布ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速46
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速47
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速48
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速49
圖6-18(a)卷積層結(jié)構(gòu)分解ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速50
圖6-18(b)卷積層結(jié)構(gòu)分解ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速51
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速52基于Low-Rank的卷積加速在有效壓縮參數(shù)、降低計(jì)算量的過(guò)程中,又保留了卷積操作的高度并行性。同時(shí)變換后的網(wǎng)絡(luò)結(jié)構(gòu)很好解決了Low-Rank分解后網(wǎng)絡(luò)無(wú)法微調(diào)的問(wèn)題,如果對(duì)原始網(wǎng)絡(luò)進(jìn)行微調(diào),由于網(wǎng)絡(luò)結(jié)構(gòu)不具有Low-Rank特性,因此在微調(diào)的過(guò)程中,SVD分解后的參數(shù)可能會(huì)朝著原始參數(shù)集的方向進(jìn)行更新,使網(wǎng)絡(luò)參數(shù)喪失Low-Rank特性,如圖6-19所示。圖6-19(a)表示VGGNet-16中FC6層基于分解之后的網(wǎng)絡(luò)進(jìn)行微調(diào)后,權(quán)值矩陣的特征值分布,圖6-19(b)表示利用原始的網(wǎng)絡(luò)結(jié)構(gòu)對(duì)權(quán)值矩陣進(jìn)行微調(diào)后的奇異值分布??梢钥吹皆谠季W(wǎng)絡(luò)上微調(diào),經(jīng)過(guò)SVD分解后去除的奇異值有恢復(fù)到原始值的傾向。圖6-19微調(diào)奇異值分布ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速53
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速54
圖6-20全連接層結(jié)構(gòu)分解ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速55
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速56由此可以看出,基于SVD分解相比其他方法的優(yōu)點(diǎn):參數(shù)壓縮比等效于計(jì)算加速比。這在基于剪枝的算法中是無(wú)法達(dá)到的。剪枝算法可以實(shí)現(xiàn)更大的壓縮比,但是剪枝算法無(wú)法在參數(shù)壓縮后維持網(wǎng)絡(luò)并行計(jì)算的特性,只是起到參數(shù)壓縮的作用,而在基于SVD分解的算法中,網(wǎng)絡(luò)的并行計(jì)算適應(yīng)性并沒有改變,不必像剪枝算法中設(shè)計(jì)專有的稀疏計(jì)算方法就能取得加速效果。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速57
固定其他層不變,更改當(dāng)前層基的數(shù)量統(tǒng)計(jì)top-1分類準(zhǔn)確率隨的變化曲線,得到不同層中基的數(shù)量對(duì)top-1分類準(zhǔn)確率的影響程度。如圖6-21所示,表示的是VGGNet-16中conv2_2和conv4_1卷積層的誤差隨基卷積核數(shù)量變化曲線,可以看出每層的分類準(zhǔn)確率曲線有很大差別。圖6-21VGGNet-16conv2_2和conv4_1誤差隨基卷積核的數(shù)量變化曲線ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis
6.5基于Low-Rank的算法加速58ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速59
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速60
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速616.5.5實(shí)驗(yàn)結(jié)果與分析本實(shí)驗(yàn)中,選擇VGGNet-16和VGGNet-19作為目標(biāo)網(wǎng)絡(luò)對(duì)加速算法進(jìn)行驗(yàn)證。實(shí)驗(yàn)采用的軟件平臺(tái)是Caffe和Torch深度學(xué)習(xí)工具包,硬件平臺(tái)采用8核i7-3770KCPU,NVIDIAGTX1080GPU,另外還使用到CUDA8.0通用并行計(jì)算平臺(tái),cuDNN5深度學(xué)習(xí)加速工具包。網(wǎng)絡(luò)訓(xùn)練和驗(yàn)證數(shù)據(jù)集均采用ImageNet比賽官方數(shù)據(jù)集。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速62
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速63如圖6-22表示的是VGGNet-16和VGGNet-19卷積神經(jīng)網(wǎng)絡(luò)各層在理想加速比分別為2,3,4的情況下,微調(diào)前后的最終分類準(zhǔn)確率變化。圖6-22VGGNet-16和VGGNet-19各層微調(diào)前后準(zhǔn)確率變化(線條:Loss;條形圖:Top5準(zhǔn)確率;AF:微調(diào)前;BF:微調(diào)后)
ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速64
圖6-23VGGNet-16各層理想的和實(shí)際加速比對(duì)比ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速65全連接層:對(duì)于基于SVD分解的全連接層參數(shù)壓縮,一方面要盡可能壓縮參數(shù),另一方面,全連接層參數(shù)的壓縮也要適應(yīng)于前面卷積層的加速,即在盡可能加速卷積計(jì)算的同時(shí),為了保證網(wǎng)絡(luò)的分類準(zhǔn)確率,應(yīng)盡可能多保留全連接層的參數(shù)。在本節(jié),首先會(huì)驗(yàn)證每層全連接層保留的神經(jīng)元個(gè)數(shù)對(duì)最終分類準(zhǔn)確率的影響,依此來(lái)衡量每層全連接層的冗余度,然后根據(jù)最終壓縮和分類準(zhǔn)確率的要求對(duì)全連接層進(jìn)行必要的壓縮。關(guān)于全局優(yōu)化和局部?jī)?yōu)化的比較,從直觀上來(lái)說(shuō),全局優(yōu)化在參數(shù)更新的過(guò)程中,考慮到當(dāng)前層和其他網(wǎng)絡(luò)層的協(xié)調(diào)作用,所以優(yōu)化最終尋找的最優(yōu)解比局部?jī)?yōu)化更好。本節(jié)從定量的角度比較了全局優(yōu)化相對(duì)于局部?jī)?yōu)化的優(yōu)勢(shì)。ArtificialIntelligenceChipDesign,
Lecture
06:
Convolutionalneuralnetworkmodelanalysis6.5基于Low-Rank的算法加速66圖6-24是VGGNet-16FC6層在全局微調(diào)和局部微調(diào)前后的權(quán)值分布變化圖。圖6-24(a)是權(quán)值分布圖
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度年福建省高校教師資格證之高等教育法規(guī)測(cè)試卷(含答案)
- 咨詢工程師(投資)《宏觀經(jīng)濟(jì)政策與發(fā)展規(guī)劃》考前沖刺必會(huì)試題及答案
- 我在國(guó)旗下講話演講稿
- 致施工單位的感謝信范文
- 研究生考試考研教育學(xué)專業(yè)基礎(chǔ)(311)試卷及答案指導(dǎo)(2024年)
- 幼兒園評(píng)估自查報(bào)告15篇
- 2024年度設(shè)備保修服務(wù)協(xié)議細(xì)則
- 2024年商業(yè)買賣合作協(xié)議精簡(jiǎn)
- 2024年合作伙伴保密協(xié)議
- 2024年監(jiān)理協(xié)議延期實(shí)施細(xì)則協(xié)議
- roc rk3399開發(fā)板高級(jí)用戶使用手冊(cè)v
- 每天念七遍就見效的神奇咒語(yǔ)
- 教師如何協(xié)調(diào)形成性評(píng)價(jià)與終結(jié)性評(píng)價(jià)
- 電子商務(wù)購(gòu)物平臺(tái)的設(shè)計(jì)與開發(fā)論文
- 施工監(jiān)測(cè)報(bào)告(共2頁(yè))
- 論《史記_陳涉世家》中陳勝的英雄形象
- xx大學(xué)成人高等教育校外教學(xué)點(diǎn)檢查自查報(bào)告
- 裝飾工程公司架構(gòu)與職責(zé)
- 創(chuàng)傷的救治流程PPT課件
- 無(wú)機(jī)分析化學(xué)化學(xué)熱力學(xué)練習(xí)題
- 小學(xué)畢業(yè)班教學(xué)質(zhì)量目標(biāo)管理責(zé)任書
評(píng)論
0/150
提交評(píng)論