版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
神經(jīng)網(wǎng)絡(luò)原理以及卷積網(wǎng)絡(luò)結(jié)構(gòu)分析目錄TOC\o"1-3"\h\u15891神經(jīng)網(wǎng)絡(luò)原理以及卷積網(wǎng)絡(luò)結(jié)構(gòu)分析 15781.1神經(jīng)網(wǎng)絡(luò)基本知識 1290901.1.1神經(jīng)元模型 1242311.1.2神經(jīng)網(wǎng)絡(luò) 2228791.1.3反向梯度下降傳播算法 326401.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu) 684111.1.1卷積層 6315051.1.2激活函數(shù) 913081.1.3池化層 1116411.1.4全連接層 12102181.3典型卷積神經(jīng)網(wǎng)絡(luò) 1220761.3.1LeNet網(wǎng)絡(luò) 12149961.3.2ZFNet網(wǎng)絡(luò) 1316531.3.3VGG16網(wǎng)絡(luò) 1691211.3.4ResNet網(wǎng)絡(luò) 1724641.4通用神經(jīng)網(wǎng)絡(luò)硬件加速的實現(xiàn)方式 1980141.4.1基于PE計算模塊存算分離加速方式 20181041.4.2基于脈動陣列存算一體的加速方式 22神經(jīng)網(wǎng)絡(luò)是人工智能領(lǐng)域的重要研究內(nèi)容。而卷積神經(jīng)網(wǎng)絡(luò)是目前應(yīng)用最為廣泛的卷積神經(jīng)網(wǎng)絡(luò),其網(wǎng)絡(luò)結(jié)構(gòu)包含卷積層、池化層、全連接層。各層運算涉及的權(quán)重參數(shù)需經(jīng)過樣本學習獲得,反向傳播算法是眾多學習算法中的佼佼者。全面了解分析卷積神經(jīng)網(wǎng)絡(luò)的運算過程、運算特點是進行卷積神經(jīng)網(wǎng)絡(luò)硬件加速研究的前提。1.1神經(jīng)網(wǎng)絡(luò)基本知識人工神經(jīng)網(wǎng)絡(luò)是利用大量的計算神經(jīng)元對生物大腦神經(jīng)網(wǎng)絡(luò)系統(tǒng)進行模擬,完成一系列信息計算加工,使得機器能像人腦一樣進行自主學習和識別信息。1.1.1神經(jīng)元模型神經(jīng)元模型是對生物神經(jīng)元的一個建模,使神經(jīng)元模型具有類似生物神經(jīng)元的結(jié)構(gòu),并擁有對信息處理的能力。最早提出且影響深遠的是心里學家McCulloch和數(shù)學家W.Pitts在1943年提出的MP模型,在隨后的發(fā)展與改進逐步行成了廣泛使用的BP神經(jīng)元,其結(jié)構(gòu)如圖1.1所示。圖1.1神經(jīng)元結(jié)構(gòu)在圖1.1中,N個輸入數(shù)據(jù)分別為(x1...xn),對應(yīng)N個權(quán)重分別為(wi1w y=fj=1j=nxj1.1.2神經(jīng)網(wǎng)絡(luò)神經(jīng)網(wǎng)絡(luò)系統(tǒng)就是將多個神經(jīng)元連接在一起,將一個神經(jīng)元的輸出當作下一層神經(jīng)元的輸入,依此類推,如圖1.2是一個神經(jīng)網(wǎng)絡(luò)包含輸入層、隱藏層和輸出層三部分的單隱藏層神經(jīng)網(wǎng)絡(luò)系統(tǒng)。圖1.2單隱藏神經(jīng)網(wǎng)絡(luò)圖1.2中輸入層輸入數(shù)據(jù)是(x1,x2,x3),輸出為(y1,y zj=?(i=1i=3進行數(shù)據(jù)計算時,利用矩陣算法可以快速計算出輸出結(jié)果,得到最后的計算結(jié)果。增加神經(jīng)網(wǎng)絡(luò)模型的隱藏層可以實現(xiàn)復雜的功能,如圖1.3是一個包含多層隱藏層的前饋人工神經(jīng)網(wǎng)絡(luò),其具有三個輸出、四層隱藏層以及三個輸出。圖1.3多隱藏層神經(jīng)網(wǎng)絡(luò)1.1.3反向梯度下降傳播算法神經(jīng)網(wǎng)絡(luò)主要分為訓練和預測兩個階段。在訓練階段,對設(shè)計網(wǎng)絡(luò)初始化各層權(quán)重和偏置,然后進行前向傳播推導,根據(jù)標簽計算出輸出誤差,然后利用梯度下降算法反向更新迭代各層權(quán)重和偏置,依次迭代,直到誤差小于系統(tǒng)設(shè)定值。梯度是一個矢量,表示在函數(shù)上的一點沿著該方向上的變化率最大,變化最快。對函數(shù)進行求導,就得到函數(shù)沿著方向變化的函數(shù)表示,沿著梯度增加最快或者相反最慢的方向移動更容易到達函數(shù)的極值。當是多元函數(shù)時,所有偏導數(shù)為零時,可求解每個未知數(shù)的解,就可以得到該點,然而隨著函數(shù)的復雜,常規(guī)計算難以計算,因此提出梯度下降求該點。圖1.4是一個直觀的梯度下降求極值,設(shè)在A點處求梯度,沿該方向移動一定距離,再次進行求梯度,一次類推,可得到最優(yōu)解,由于函數(shù)的復雜性,得到的往往是局部最優(yōu)解。圖1.4梯度下降梯度下降中有三個概念:1)步長步長決定下降程度,代表一次梯度計算行走的長度,用β表示;2)假設(shè)函數(shù)在監(jiān)督學習中,擬合輸入樣本,使用假設(shè)函數(shù)設(shè)為h?(x);3)損失函數(shù)該函數(shù)為樣本的輸出與擬合函數(shù)差的平方,如式 J?=i=1m梯度下降法的算法步驟如下:確定損失函數(shù)的梯度,對于?i,其梯度表達式為?用確定的步長乘以損失函數(shù)梯度,得到前進距離,即β?判斷所有的?i梯度下降距離是否小于?,小于即迭代結(jié)束,當前的?ii=0,1n ?i=?i反向傳播算法主要利用的梯度下降和鏈式法則,是將正向傳播的結(jié)果與標準輸出結(jié)果的誤差進行反向傳遞,進行迭代更新權(quán)重和偏置。算法步驟如下:圖1.5單個神經(jīng)元設(shè)誤差函數(shù)為E=12Y?F(z)2,其中Y為準確結(jié)果,F(xiàn)(z)為圖1.5的輸出結(jié)果,可以對整個誤差E對 ?E?Wi1=?E其中: ?E?F(z)=2?12Y?F(z)設(shè)激活函數(shù)如式1.7所示: F(z)=1(1+e?z式中: Z=j=1j=nxj求導則: ?F(z)?Z=F(z)(1?F(z)) (可得: ?Z?Wi1=x綜上可得: ?E?Wi1=Y?F(z)然后利用如式1.12所示的梯度下降公式,更新權(quán)重W ?i=?i Wi1?=W其他權(quán)重以此類推,經(jīng)過迭代最后完成神經(jīng)網(wǎng)絡(luò)的訓練。1.2卷積神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)卷積神經(jīng)網(wǎng)絡(luò)是人工神經(jīng)網(wǎng)絡(luò)中應(yīng)用最為廣泛的一種,同樣分為算模型訓練和模型應(yīng)用推理兩個階段。在模型訓練階段主要利用樣本數(shù)據(jù)經(jīng)過前向推理計算出各層的結(jié)果損失,再利用反向梯度下降算法進行卷積網(wǎng)絡(luò)各層之間的參數(shù)的更新,經(jīng)過數(shù)次迭代,損失降低很小,訓練階段完成。在推理階段,只有前向推理運算,主要是對輸入的未知圖像進行一個結(jié)果預測。卷積神經(jīng)網(wǎng)絡(luò)在結(jié)構(gòu)上主要有四部分組成:卷積層、池化層、全連接層和激活函數(shù)。1.1.1卷積層卷積層是卷積網(wǎng)絡(luò)運算中的核心,也是整個卷積網(wǎng)絡(luò)系統(tǒng)中主要的計算量來源,卷積層主要是進行圖像特征的提取,隨著卷積層數(shù)的增加以及特征通道數(shù)的增加,卷積神經(jīng)網(wǎng)絡(luò)能提取到更加全面的特征信息。每層卷積層都是由卷積核對輸入特征通道的數(shù)據(jù)做卷積運算并加上偏置數(shù)據(jù)得出輸出特征通道數(shù)據(jù),作為下層卷積的輸入層。在常用的卷積計算時的主要運算名詞有卷積核、深度、步長、以及填充等。卷積核相當于濾波器,輸入特征圖經(jīng)過卷積核運算可以將輸入特稱圖的特征提取出來,利用一組濾波器就可以得到不同的特征值,如圖1.6所示是Sobel算法進行卷積運算提出圖像的邊緣信息。其中卷積核的大小K從1-11不等,為了減少卷積運算量,卷積核大小通常為3。圖1.6邊緣濾波對比圖卷積層的通道數(shù)目(也稱卷積核的深度)代表著提取圖像特征的維度,卷積核的個數(shù)就是卷積的通道數(shù)目。增加通道數(shù)目可以更加充分提取圖像的特征,一般為2的冪指數(shù)。如圖1.7所示卷積運算過程就是通道數(shù)目為2,卷積核大小為3×3的卷積核對6×6的圖像進行卷積計算過程;運算輸出結(jié)果為兩個4×4的圖像。圖1.7非填充卷積運算過程在卷積運算時,步長用S表示,步長代表滑動窗口的移動大小,圖1.7所示的計算過程的步長為1。同樣的輸入圖1.8所示的過程就是步長為3的卷積運算,可見增大步長可以減少輸出特征圖像的大小,輸出特征圖像的大小與步長以及填充成倍數(shù)關(guān)系,通常為了充分提取圖像的特征,步長大小都為1。圖1.8步長為3的卷積運算在進行卷積運算時,輸入特征圖像不進行填充,經(jīng)過卷積運算,其圖像大小會減少,如上圖1.7所示輸入圖像大小為6×6,經(jīng)過卷積運算后輸出特征大小變?yōu)?×4。為避免圖像縮小,可在輸入圖像周圍進行填充,填充的大小Pad根據(jù)卷積核需求進行設(shè)置,填充數(shù)據(jù)可以為0和1,通常為了不增加額外影響,填充數(shù)據(jù)為0。如圖1.9是經(jīng)過填充后,采用步長S為1的卷積計算,輸出特征圖像就和輸入特征圖像的大小一致。輸出特征圖像的尺寸大小如式1.14所示: output=(input?k+2?pad)S+1 其中output是輸出圖像的長和寬,input為輸入圖像的長和寬,k為卷積核大小,pad是填充大小,S為步長大小,圖1.9中計算結(jié)果如下。 output=(6?3+2?1)1+1 圖1.9填充卷積運算過程1.1.2激活函數(shù)激活函數(shù)是為了使得神經(jīng)網(wǎng)絡(luò)具有非線性而引入的。如果不引入激活函數(shù),每一層的輸入都是上一層經(jīng)過卷積運算的線性輸出,那么經(jīng)過幾次卷積運算后還是第一層的線性輸出,無法完成非線性操作,則采用多層中間層只是增加計算量,沒有實際價值意義。在卷積神經(jīng)網(wǎng)絡(luò)中常用的激活函數(shù)有Sigmoid函數(shù)、Tanh函數(shù)、ReLU函數(shù)。以下三種:Sigmoid函數(shù)的函數(shù)表達式如公式1.16所示。 f(x)=1(1+e?x)Sigmoid函數(shù)的圖像表達如圖1.10所示。圖1.10Sigmoid函數(shù)圖像Sigmoid函數(shù)將輸入數(shù)據(jù)映射到(0,1)范圍內(nèi),使用該函數(shù)可以進行二分類操作,經(jīng)過該激活函數(shù)較大的負數(shù)轉(zhuǎn)換為0,較大的正數(shù)變換為1。該函數(shù)在反向梯度運算時容易出現(xiàn)梯度爆炸和梯度消失兩個極限情況,而且該激活函數(shù)由于運用了e的冪指數(shù),在訓練時增加了計算量,系統(tǒng)訓練耗時較長。Tanh函數(shù)的函數(shù)表達式如公式1.17所示。 tanhx=exTanh函數(shù)的圖像表達如圖1.11所示圖1.11Tanh函數(shù)圖像Tanh函數(shù)解決了Sigmoid函數(shù)的不以0為中心的輸出問題,將函數(shù)的輸出映射到(-1,1)區(qū)間,Tanh函數(shù)相當于2×Sigmoid-1,類似Sigmoid的變形。Tanh函數(shù)依舊存在梯度飽和和梯度消失的缺點,也具有e的冪指數(shù)運算,在訓練時耗時依舊很大。ReLU函數(shù)的函數(shù)表達式如公式1.18所示。 fx=max?(0,x) (ReLU函數(shù)的圖像表達如圖1.12所示。圖1.12ReLU函數(shù)ReLU函數(shù)是一個取最大值函數(shù),當函數(shù)輸入x<0時,函數(shù)的輸出為0,當x>0時,函數(shù)的輸出為x。該函數(shù)沒有e的冪指數(shù)運算,計算速度快,而且在訓練時網(wǎng)絡(luò)更快速地收斂,同時該函數(shù)不會出現(xiàn)梯度飽和問題。1.1.3池化層池化層主要是對圖像數(shù)據(jù)進行壓縮處理,降低圖像的大小,減少數(shù)據(jù)量,減少后續(xù)計算量,同時避免網(wǎng)絡(luò)的過擬合。池化層的池化窗口大小大多采用2×2窗口,同時池化主要分為最大值池化與平均值池化兩種。最大池化(Maxpooling)是在在一個定義的窗口內(nèi)選取最大的元素,如圖1.13所示,就是一個池化窗口為2×2的最大值池化過程。平均池化(Averagepooling)在一個定義的窗口內(nèi)計算其所有元素的平均值,如圖1.14所示,就是一個池化窗口為2×2的平均值池化過程。圖1.13最大池化圖1.14平均池化1.1.4全連接層全連接層是卷積網(wǎng)絡(luò)的最后一層。卷積神經(jīng)網(wǎng)絡(luò)經(jīng)過前面若干卷積層和池化層,圖像特征信息被充分提取,經(jīng)過全連接層將最后一層卷積層產(chǎn)生的特征圖映射成一個固定長度的特征向量,這個特征向量包含了圖像分類任務(wù)的機率,通過篩選就能選出最終結(jié)果,如圖1.15所示,在全連接層為了提高系統(tǒng)的穩(wěn)定性,對全連接層還可以采用正則化,歸一化等方法減少網(wǎng)絡(luò)的過擬合問題。圖1.15全連接層1.3典型卷積神經(jīng)網(wǎng)絡(luò)1.3.1LeNet網(wǎng)絡(luò)LeNet神經(jīng)網(wǎng)絡(luò)是第一個具有卷積層、池化層以及全連接層的卷積神經(jīng)網(wǎng)絡(luò),雖然該網(wǎng)絡(luò)結(jié)構(gòu)只有簡單的五層,但是在手寫數(shù)字的識別上有較好的表現(xiàn),LeNet網(wǎng)絡(luò)的結(jié)構(gòu)如圖1.16所示。圖1.16LeNet網(wǎng)絡(luò)的結(jié)構(gòu)該網(wǎng)絡(luò)的輸入圖像大小為32×32×1其結(jié)構(gòu)主要有五層組成:第一層卷積層采用5×5大小的卷積核,輸出特征圖通道為6,卷積步長為1,該層卷積沒有進行填充操作,因此輸出圖像大小會變小,經(jīng)過第一層卷積運算后輸出特征圖變?yōu)?8×28×6;第二層是采取窗口大小為2×2的最大池化對輸入特征圖像進行池化操作,輸出特征圖大小為14×14×6;第三層采用與第一層卷積同樣大小的卷積核對輸入特征圖像進行卷積操作,輸出特征通道為16,經(jīng)卷積后輸出結(jié)果為10×10×16的特征圖;第四層對輸入特征圖像采用池化窗口大小為2×2的最大池化進行降采樣處理,輸出特征圖像大小為5×5×16;第五層采用全連接操作,全連接層的輸入為120維的向量,輸出為84維的向量;最后的輸出層采用softmax函數(shù)輸出10個分類,分別代表(0-9)10個數(shù)字識別結(jié)果。該網(wǎng)絡(luò)采用的卷積核大小均為5×5,池化方式采用的是最大值池化,池化窗口大小為2×2,整個網(wǎng)絡(luò)的參數(shù)個數(shù)為44426個,雖然LeNet網(wǎng)絡(luò)很小,但是該網(wǎng)絡(luò)的模型被普遍運用,該網(wǎng)絡(luò)模型具有運算少,訓練快的優(yōu)點,并且該網(wǎng)絡(luò)采用softmax分類函數(shù),該函數(shù)在圖像分類方面表現(xiàn)很好。1.3.2ZFNet網(wǎng)絡(luò)2013年ZFNet卷積神經(jīng)網(wǎng)絡(luò)被Zeiler和Fergus提出,在世界ILSVRC2013圖像分類比賽中取得優(yōu)異的成績,獲得了冠軍。ZFNet的結(jié)構(gòu)圖如圖1.17所示。圖1.17ZFNet網(wǎng)絡(luò)結(jié)構(gòu)ZFNet網(wǎng)絡(luò)主要有五層卷積、三層池化以及三層全連接層組成。各層的結(jié)構(gòu)如表1.1所示。表1.1ZFNet結(jié)構(gòu)NameConv1Conv2Conv3Conv4Conv5FC6Fc7FC8CONV7×7×965×5×2563×3×3843×3×3843×3×256×××LRN√√××××××POOL√√××√×××FC×××××409640961000ReLU×××××√√×Dropout×××××√√×其中CONV為卷積、LRN為局部響應(yīng)歸一化、POOL為池化、FC為全連接層、ReLU為ReLU激活函數(shù)、Dropout為Dropout函數(shù)。卷積層以及池化層計算方法如表1.2所示。表1.2各層計算方式LayerNameConv1Conv2Conv3Conv4Conv5卷積步長22111卷積填充×√√√√池化步長22--2池化填充√×--×ZFNet網(wǎng)絡(luò)與LeNet網(wǎng)絡(luò)對比具有更深的深度,在計算上采用了層疊的卷積層,同時該網(wǎng)絡(luò)引入了LRN(局部響應(yīng)歸一化)、Dropout函數(shù)以及ReLU激活函數(shù)等方法提高系統(tǒng)的魯棒性。采用ReLU激活函數(shù)解決了Sigmoid函數(shù)的梯度飽和問題,同時該函數(shù)具有更快的收斂速度,訓練速度加快。ZFNet卷積網(wǎng)絡(luò)在前兩層的卷積運算中加入LRN方法,LRN的計算公式如下: bx,yi=a其中ax,yi表示(x,y)位置的采用卷積核i進行卷積的輸入值,bx,yi表示歸一化的輸出結(jié)果,其中NZFNet卷積網(wǎng)絡(luò)在全連接層引入了Dropout函數(shù),Dropout主要是對全連接層的網(wǎng)絡(luò)結(jié)構(gòu)進行一定的修改,對于某些神經(jīng)元的激活值以一定的概率置為0,減少模型對某些特征的依賴,提高整個模型的泛化性,如圖1.18所示是標準全連接模型和使用該函數(shù)后的全連接模型。在訓練過程,隨機刪除網(wǎng)絡(luò)中一部分隱藏層如圖1.19所示,保持輸入輸出不變,然后輸入經(jīng)過前向傳播后,計算損失,進行反向傳播,反向傳播中保留刪除的隱藏層,按照隨機梯度下降法更新全部的神經(jīng)元,以此循環(huán),直到訓練結(jié)束。圖1.18使用Dropout函數(shù)模型對比圖1.19使用Dropout函數(shù)訓練過程1.3.3VGG16網(wǎng)絡(luò)VGG16卷積神經(jīng)網(wǎng)絡(luò)是ImageNet2014年的亞軍,它采用了尺寸更小的卷積核,同時加深了的網(wǎng)絡(luò)結(jié)構(gòu),增加通道數(shù),利用池化減少特征圖的尺寸,VGG16的結(jié)構(gòu)圖如圖1.20所示。圖1.20VGG16結(jié)構(gòu)圖VGG16主要有13層卷積層、5層池化層以及3層全連接層組成。所有的卷積層采用的卷積核大小都是3×3,步長為1,同時輸入特征圖像進行填充保證輸出特征圖像不縮小;激活函數(shù)采用的都是ReLU函數(shù);池化層采用了窗口大小為2×2,步長為1的最大池化,縮小特征圖的大小;全連接層前兩層神經(jīng)元數(shù)量是4096,最后一層神經(jīng)元數(shù)里是1000;最后采用Softmax函數(shù)進行分類輸出。VGG16與之前的網(wǎng)絡(luò)的不同之處在于采用較小的卷積核,網(wǎng)絡(luò)結(jié)構(gòu)非常規(guī)整,更加方便被使用,同時該模型采用卷積疊加,用3×3的卷積核大小增加圖像的感受視野,三層卷積核大小為3×3的卷積層疊加效果相當于7×7的卷積核的卷積效果,采用小的卷積核即減少了參數(shù)數(shù)量,同時也減少了計算量;同時該網(wǎng)絡(luò)探索了深度對準確度的影響,表明深度加深能提高準確度,但是網(wǎng)絡(luò)深度太深,系統(tǒng)容易出現(xiàn)飽和,容易出現(xiàn)過擬合。1.3.4ResNet網(wǎng)絡(luò)ResNet是2015年微軟推出的卷積神經(jīng)網(wǎng)絡(luò)模型,該卷積神經(jīng)網(wǎng)絡(luò)對圖片的識別性能超越了人類大腦,傳統(tǒng)的卷積神經(jīng)網(wǎng)絡(luò)提升準度的方法是增加網(wǎng)絡(luò)深度和通道數(shù),但是會引起參數(shù)多過擬合現(xiàn)象、計算量倍增以及梯度彌散難以優(yōu)化模型等問題,因此提出了殘差網(wǎng)絡(luò),其中主要結(jié)構(gòu)如圖1.21所示。圖1.21殘差網(wǎng)絡(luò)模塊結(jié)構(gòu)其中主要分為兩步:第一步的輸出為正常卷積輸出如下: F=Relu(XW1) 第二步為卷積計算結(jié)果輸出加上上一層卷積層結(jié)果,隨后經(jīng)過激活函數(shù)輸出 y=Relu(FW2+X) 其中Relu為激活函數(shù)Relu。如圖1.22是一層殘差模塊運算的結(jié)構(gòu)圖,輸入64通道大小為56×56特征圖,輸入特征圖先進行一次卷積計算,經(jīng)過激活函數(shù),隨后進行下次卷積,卷積結(jié)果結(jié)果加上初始輸入特征圖數(shù)據(jù),隨后進行激活函數(shù)輸出。圖1.22殘差網(wǎng)絡(luò)一層的結(jié)構(gòu)圖圖1.23為VGG19、深度為34層的普通卷積神經(jīng)網(wǎng)絡(luò),34層深的ResNet網(wǎng)絡(luò)對比圖。ResNet網(wǎng)絡(luò)與普通的卷積神經(jīng)網(wǎng)絡(luò)的最大區(qū)別在ResNet網(wǎng)絡(luò)有很多支線將輸入連到后面的層進行累加,使后面的卷積層學習殘差,傳統(tǒng)的卷積層或全連接層在信息傳遞時,都會引起信息的丟失或損耗問題。ResNet通過直接將輸入層傳遞到輸出層,保護了信息傳遞的完整性。圖1.23VGG19、普通卷積神經(jīng)網(wǎng)絡(luò)和ResNet網(wǎng)絡(luò)對比圖1.4通用神經(jīng)網(wǎng)絡(luò)硬件加速的實現(xiàn)方式設(shè)計神經(jīng)網(wǎng)絡(luò)加速系統(tǒng)時,主要是分為兩種,一種是專用的神經(jīng)網(wǎng)絡(luò)加速系統(tǒng),該方案對特定神經(jīng)網(wǎng)絡(luò)加速效果好,資源需求少。但神經(jīng)網(wǎng)絡(luò)特定,限制了其應(yīng)用范圍;另一種是設(shè)計通用的卷積神經(jīng)網(wǎng)絡(luò)加速系統(tǒng),該系統(tǒng)靈活度高,可實現(xiàn)多種卷積神經(jīng)網(wǎng)絡(luò),對資源需求較高。設(shè)計通用的神經(jīng)網(wǎng)絡(luò)加速系統(tǒng)主要是根據(jù)神經(jīng)網(wǎng)絡(luò)的特性設(shè)計通用的模塊,實現(xiàn)卷積運算、激活函數(shù)運算以及池化運算等;然后通過指令控制各模塊運行,重構(gòu)各種網(wǎng)絡(luò)。通用神經(jīng)網(wǎng)絡(luò)系統(tǒng)的架構(gòu)主要分為兩大類,一類是設(shè)計通用、規(guī)模較小的PE計算模塊和其他存儲模塊,進行存算分離操作實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)加速運算;另外一種是采用脈動陣列對數(shù)據(jù)進行存算一體操作實現(xiàn)卷積神經(jīng)網(wǎng)絡(luò)加速運算。1.4.1基于PE計算模塊存算分離加速方式基于PE計算模塊設(shè)計的通用卷積神經(jīng)網(wǎng)絡(luò)系統(tǒng)的主要是設(shè)計小的通用乘加計算模塊,以及存儲結(jié)構(gòu),由存儲結(jié)構(gòu)將計算數(shù)據(jù)輸入到乘加計算模塊,并通過控制模塊發(fā)出指令進行計算模塊的運作,最后輸出卷積計算結(jié)果傳輸?shù)剿阈g(shù)邏輯單元進行池化等其他操作。其結(jié)構(gòu)如圖1.24所示,圖中主要包括控制器、輸入和輸出緩存、核心PE計算單元以及ALU操作模塊。核心PE計算模塊主要包括小的緩存模塊、卷積運算的乘加、常用的幾種激活函數(shù)。ALU模塊主要功能是完成神經(jīng)網(wǎng)絡(luò)的池化層實現(xiàn),根據(jù)指令對卷積結(jié)果進行一個降采樣池化操作;輸入緩存主要是緩存輸入特征圖數(shù)據(jù)和權(quán)重數(shù)據(jù),通常情況輸入特征圖數(shù)據(jù)和權(quán)重數(shù)據(jù)是分開進行緩存存儲;輸出緩存主要為了保證整個系統(tǒng)高速運行,在系統(tǒng)高速運行的同時,保證寫入DDR的過程中不丟失數(shù)據(jù)。在設(shè)計該結(jié)構(gòu)的加速系統(tǒng)時,其核心是設(shè)計通用的PE計算模塊,其中PE計算模塊中主要功能是進行卷積運算,卷積計算主要是包括乘法和加法運算,通用的PE模塊主要是利用了多個乘法器進行乘法運算,并利用加法樹實現(xiàn)對乘法結(jié)果進行累加,隨后經(jīng)過激活函數(shù)輸出。PE模塊常用的結(jié)構(gòu)圖如圖1.25所示,主要是分為四部分,第一步部分是加載的卷積數(shù)據(jù),第二部分進行乘法,第三部分根據(jù)指令進行累加,最后一部分根據(jù)指令進行激活函數(shù)操作并輸出結(jié)果。圖1.24基于PE模塊的通用卷積網(wǎng)絡(luò)加速結(jié)構(gòu)圖1.25PE計算模塊結(jié)構(gòu)采用該結(jié)構(gòu)的通用神經(jīng)網(wǎng)絡(luò)加速系統(tǒng)主要包括寒武紀發(fā)布的NPU芯片,以及用于GPU的神經(jīng)網(wǎng)絡(luò)加速芯片。如圖1.26所示的架構(gòu)就是寒武紀內(nèi)部的PE內(nèi)部運算單元結(jié)構(gòu),主要是分為三個部分,其中NFU-1層是乘法單元,包含256(16×16)個乘法器,最多一個周期內(nèi)可以運算25
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 迪士尼公主介紹課件
- 中考語文文言文對比閱讀(全國)10 《陋室銘》對比閱讀(15組73題)(解析版)
- 物業(yè)消防知識競賽試題及答案
- 十堰愛爾眼科醫(yī)院2025年N0-N1級護士理論考試試題及答案
- 內(nèi)科主治醫(yī)師考試《專業(yè)知識》預習試題及答案
- 車隊人員安全培訓內(nèi)容課件
- 2026年收費員年度考核表個人工作總結(jié)(2篇)
- 酒店員工考勤與薪酬制度
- 車間級安全培訓感想課件
- 2025年品牌自播體系搭建與常態(tài)化直播運營工作心得(2篇)
- 2025-2030中國生物煉制行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 透析患者營養(yǎng)不良課件
- 國家開放大學《營銷策劃案例分析》形考任務(wù)5答案
- 220kv安全培訓課件
- 計量測量基礎(chǔ)知識培訓課件
- 2025年云南省中考物理真題(含答案)
- 基于杜邦分析的零售企業(yè)盈利能力研究-以來伊份為例
- 腦機協(xié)同學習-洞察及研究
- 《內(nèi)蒙古自治區(qū)中小學(中等職業(yè)學校)課程教學管理規(guī)范(試行)》
- 第三方安全評估管理辦法
- 環(huán)境工程污水處理技術(shù)題庫
評論
0/150
提交評論