国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于dropout算法的卷積神經(jīng)網(wǎng)絡(luò)單粒子翻轉(zhuǎn)容錯(cuò)方法*

2021-09-26 04:58:44錢歡謝卓辰梁旭文
關(guān)鍵詞:神經(jīng)元準(zhǔn)確率芯片

錢歡,謝卓辰,梁旭文

( 中國科學(xué)院微小衛(wèi)星創(chuàng)新研究院 中國科學(xué)院微小衛(wèi)星重點(diǎn)實(shí)驗(yàn)室,上海 201203; 中國科學(xué)院大學(xué),北京 100049) (2019年12月11日收稿; 2020年4月8日收修改稿)

隨著人工智能技術(shù)近些年的快速發(fā)展,其在深度學(xué)習(xí)、自然語言處理與計(jì)算機(jī)視覺等領(lǐng)域都取得了巨大成就。同時(shí),人工智能也開始從智能化工具逐漸向智能機(jī)器進(jìn)軍,這使得原有的微控制單元(microcontroller unit,MCU)早已無法滿足深度學(xué)習(xí)對(duì)海量數(shù)據(jù)運(yùn)算和高速運(yùn)算的要求, 人工智能(artificial intelligence,AI)芯片便應(yīng)運(yùn)而生,搭載神經(jīng)網(wǎng)絡(luò)的人工智能芯片這些年也是推陳出新,網(wǎng)絡(luò)越來越復(fù)雜,功能也隨之越來越強(qiáng)大。其中國外以IBM仿人腦TrueNorth芯片[1]和英偉達(dá)的GPU芯片系列最為著名,國內(nèi)則有寒武紀(jì)的DianNao芯片和地平線機(jī)器人的BPU芯片等。

人工智能芯片技術(shù)作為未來人工智能的重要方向之一,在衛(wèi)星應(yīng)用領(lǐng)域可以大幅提升衛(wèi)星大數(shù)據(jù)的快速提取、智能處理與分析等效率, 將會(huì)是衛(wèi)星大數(shù)據(jù)領(lǐng)域發(fā)展的重要基礎(chǔ)之一。而在現(xiàn)實(shí)世界里,編寫神經(jīng)網(wǎng)絡(luò)的代碼并不是在真空中運(yùn)行,其需要一定的介質(zhì)并且可能在復(fù)雜的空間環(huán)境中運(yùn)行。神經(jīng)網(wǎng)絡(luò)程序?qū)⑴c其他程序一樣共享計(jì)算資源,其中一些程序有一定攻擊性。以rowhammer[2-3]攻擊為例,在rowhammer攻擊的期間,一行內(nèi)存會(huì)以極高的速率重復(fù)寫入數(shù)據(jù),在擦除與寫入的不斷重復(fù)過程中產(chǎn)生的電磁噪聲會(huì)導(dǎo)致相鄰靜態(tài)隨機(jī)存取存儲(chǔ)器(static random access memory,SRAM)[4]行中的部分比特位發(fā)生翻轉(zhuǎn),例如存儲(chǔ)的數(shù)據(jù)如果是00001111,則可能會(huì)變成00001010。如果遭受影響的SRAM行存儲(chǔ)了神經(jīng)網(wǎng)絡(luò)的權(quán)值或各層網(wǎng)絡(luò)輸入輸出,那么神經(jīng)網(wǎng)絡(luò)的整個(gè)性能可能會(huì)受到負(fù)面影響,導(dǎo)致結(jié)果準(zhǔn)確率不高從而很大概率上輸出一個(gè)錯(cuò)誤的結(jié)果。易出錯(cuò)的另一個(gè)計(jì)算領(lǐng)域的例子就是高輻射環(huán)境,當(dāng)代比較近的一個(gè)例子是日本福島核電站周圍的地區(qū),其工廠附近遭受大量核輻射。輻射對(duì)人類健康有極大的危害,同時(shí)對(duì)機(jī)器人的正常工作來說也是極大的威脅。由于空間高能輻射粒子撞擊硅芯片并翻轉(zhuǎn)存儲(chǔ)和執(zhí)行單元中的一些比特位,導(dǎo)致芯片正常工作的一些參數(shù)出錯(cuò),進(jìn)而一些機(jī)器人的任務(wù)不得已以失敗而告終[5]。高輻射環(huán)境還有一個(gè)常見的例子是太空,其中最難以克服的干擾便是單粒子翻轉(zhuǎn)(single event upset,SEU),所以衛(wèi)星的一些關(guān)鍵性器件需要進(jìn)行硬件或者軟件方面的加固[6-9],才能在環(huán)繞地球或訪問其他行星的軌道上正常工作數(shù)年[10]。如美國UOSAT-2衛(wèi)星曾經(jīng)在太空運(yùn)行的4年間發(fā)生了約9 000次的SEU事件,中國“風(fēng)云一號(hào)(B)”氣象衛(wèi)星主控芯片也因SEU事件而導(dǎo)致姿態(tài)控制系統(tǒng)失控[11]。

針對(duì)上述問題,近年來也有不少學(xué)者從事這種輻照干擾錯(cuò)誤對(duì)神經(jīng)網(wǎng)絡(luò)芯片穩(wěn)定性的研究,成為神經(jīng)網(wǎng)絡(luò)芯片研究的熱點(diǎn)問題之一。Arechiga和Michaels[12]主要研究神經(jīng)網(wǎng)絡(luò)對(duì)權(quán)重誤差影響的魯棒性,認(rèn)為一般多層神經(jīng)網(wǎng)絡(luò)(multi-layer neural network,MLP)對(duì)權(quán)值誤差的魯棒性優(yōu)于卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network,CNN)。Kwon等[13]主要研究硬件加速神經(jīng)網(wǎng)絡(luò)中容錯(cuò)記憶系統(tǒng)對(duì)抗軟錯(cuò)誤[14]的必要性。雖然他們在很大程度說明了SEU錯(cuò)誤會(huì)對(duì)神經(jīng)網(wǎng)絡(luò)造成影響,但就如何進(jìn)行一定SEU容錯(cuò)方法的研究并不足。

1 抗輻照干擾方法

1.1 冗余的容錯(cuò)方法設(shè)計(jì)

因受工藝材料的發(fā)展和工藝制造成本的約束,冗余容錯(cuò)方法中最為常見的一般是硬件冗余、軟件冗余和信息冗余等設(shè)計(jì)加固,其中比較典型且應(yīng)用較為廣泛的是硬件的三模冗余容錯(cuò)設(shè)計(jì)方法[15],圖1是一個(gè)典型的硬件三模冗余內(nèi)部電路原理圖。其基本原理是在電路中設(shè)計(jì)3倍冗余的模塊,對(duì)輸入的數(shù)據(jù)執(zhí)行相同的操作,而后將各個(gè)模塊計(jì)算后的輸出數(shù)據(jù)再輸入到一個(gè)多數(shù)表決器中,采取三取二的選舉判決策略得出最終結(jié)果。由于各個(gè)模塊之間互相獨(dú)立運(yùn)行,故2個(gè)模塊同時(shí)因?yàn)檩椪崭蓴_出現(xiàn)錯(cuò)誤的概率極小,從而可以大大提高系統(tǒng)輸出的準(zhǔn)確度。

圖1 硬件的三模冗余內(nèi)部電路原理圖Fig.1 Hardware schematic of the triple moderedundant internal circuit

1.2 周期性的擦洗方法設(shè)計(jì)

芯片在控制單元或者本身燒錄程序控制下,通過對(duì)存儲(chǔ)單元的周期性擦洗可以刷新存儲(chǔ)單元中的內(nèi)容,這樣能減少存儲(chǔ)單元受到輻照干擾暴露的時(shí)間,直接提高芯片存儲(chǔ)單元抗空間輻照干擾的能力[16]。該方法無需額外的硬件電路系統(tǒng)設(shè)計(jì),實(shí)現(xiàn)起來比較簡單。

1.3 糾錯(cuò)編碼的方法設(shè)計(jì)

為了在一定程度上避免存儲(chǔ)單元受到空間輻照干擾的影響,可以采用糾錯(cuò)編碼的方法。其基本原理是把輸入數(shù)據(jù)經(jīng)過編碼后的信息碼元序列額外添加一些監(jiān)督碼元后放在存儲(chǔ)單元中進(jìn)行存儲(chǔ),在進(jìn)行處理輸出數(shù)據(jù)讀取時(shí),通過比較監(jiān)督碼元與自身的信息碼元之間的關(guān)聯(lián)關(guān)系是否與初始編碼一致來判斷數(shù)據(jù)在存儲(chǔ)與處理讀取過程中是否由于輻照干擾發(fā)生錯(cuò)誤。比較常見的糾錯(cuò)碼有海明碼、R-S碼、奇偶校驗(yàn)碼等。

如果希望將上述方法應(yīng)用到CNN芯片上,特別是應(yīng)用在數(shù)據(jù)量龐大的網(wǎng)絡(luò)參數(shù)以及輸入輸出等存儲(chǔ)數(shù)據(jù)時(shí),在實(shí)際運(yùn)用時(shí)都有一定的困難,具體包括:

1)三模冗余電路需要對(duì)電路進(jìn)行3倍同樣的硬件電路設(shè)計(jì),考慮到現(xiàn)在廣泛應(yīng)用的CNN所包含參數(shù)以及各類輸入輸出數(shù)據(jù)量大,硬件資源開銷將非常巨大;

2)周期性的擦洗方法對(duì)數(shù)據(jù)恢復(fù)只是一個(gè)暫態(tài)的周期,無法適應(yīng)CNN的大量高速并行計(jì)算;

3)糾錯(cuò)編碼方法有一定的延時(shí),降低了芯片處理數(shù)據(jù)的工作速度,對(duì)于網(wǎng)絡(luò)層數(shù)多、運(yùn)算量大的CNN來說,將大大影響網(wǎng)絡(luò)計(jì)算時(shí)延等性能指標(biāo)。

2 本文方法與步驟

在分析現(xiàn)有的一些設(shè)計(jì)加固方法基礎(chǔ)上,針對(duì)芯片硬件開銷、恢復(fù)時(shí)間與處理速度等方面的不足,本文對(duì)在圖像等領(lǐng)域廣泛應(yīng)用的CNN提出一種神經(jīng)網(wǎng)絡(luò)算法上的改進(jìn),利用算法改進(jìn)使神經(jīng)網(wǎng)絡(luò)的大量存儲(chǔ)數(shù)據(jù)具有一定的抗輻照干擾的能力。具體方法是將神經(jīng)網(wǎng)絡(luò)的dropout[17-20]算法應(yīng)用于CNN中,可以按照一定的概率丟棄一些由于SEU效應(yīng)擾動(dòng)而導(dǎo)致某些權(quán)重誤差改變的病態(tài)神經(jīng)元,從而提高整個(gè)系統(tǒng)輸出的準(zhǔn)確度。

2.1 訓(xùn)練CNN

CNN是一種包含卷積計(jì)算并且具有一定結(jié)構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)(feedforward neural networks),其主要由輸入層、隱藏層和輸出層組成,而隱藏層一般包括卷積層、池化層、全連接層。CNN最大特點(diǎn)就是具有對(duì)數(shù)據(jù)的特征學(xué)習(xí)能力,能夠按照其不同層結(jié)構(gòu)對(duì)輸入數(shù)據(jù)的信息進(jìn)行相應(yīng)地平移不變分類,并被大量用于計(jì)算機(jī)視覺、自然語言處理等領(lǐng)域,對(duì)輸入數(shù)據(jù)取得了良好的評(píng)估效果。CNN類型眾多,不失一般性地,本文選取經(jīng)典的LeNet5[21]網(wǎng)絡(luò)作為研究對(duì)象,該網(wǎng)絡(luò)是最早獲得成功應(yīng)用的CNN,包含此類網(wǎng)絡(luò)的關(guān)鍵構(gòu)成要素。如圖2所示,它是一個(gè)被廣泛應(yīng)用于圖像分類問題的CNN。對(duì)于LeNet5網(wǎng)絡(luò)結(jié)構(gòu)參數(shù),表1給出了具體各層結(jié)構(gòu)的詳細(xì)描述,經(jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)權(quán)重參數(shù)最終都會(huì)存儲(chǔ)在相關(guān)SRAM區(qū)內(nèi),待芯片工作時(shí),便被調(diào)用進(jìn)行運(yùn)算處理。

表1 LeNet5各層參數(shù)Table 1 LeNet5 layer parameters

圖2 LeNet5結(jié)構(gòu)Fig.2 LeNet5 structure

訓(xùn)練網(wǎng)絡(luò)的數(shù)據(jù)集是采用來自美國國家標(biāo)準(zhǔn)與技術(shù)研究所(National Institute of Standards and Technology,NIST)的MNIST手寫字體數(shù)據(jù)集,其訓(xùn)練集由60 000個(gè)用例組成,因此里面總共包含了對(duì)應(yīng)用例的60 000個(gè)標(biāo)簽,每一個(gè)標(biāo)簽的值為0~9之間的一個(gè)數(shù),測試集是10 000個(gè)。所以該數(shù)據(jù)集一直以來被廣泛用于測試各種關(guān)于圖像的神經(jīng)網(wǎng)絡(luò),能在很大程度上說明各種問題。在訓(xùn)練網(wǎng)絡(luò)時(shí),每迭代完成一次訓(xùn)練后,就將整個(gè)網(wǎng)絡(luò)框架和訓(xùn)練好的參數(shù)進(jìn)行一次保存,在后續(xù)實(shí)驗(yàn)時(shí)只需要提取網(wǎng)絡(luò)和參數(shù)即可。在本文研究中,這樣可以保證每次實(shí)驗(yàn)都基于相同的一組網(wǎng)絡(luò)參數(shù)。

2.2 參數(shù)提取并模擬輻照效應(yīng)擾動(dòng)

參數(shù)提取是指在不破壞原有神經(jīng)網(wǎng)絡(luò)的條件下,利用網(wǎng)絡(luò)訓(xùn)練時(shí)每次迭代訓(xùn)練所得參數(shù),直接讓各層神經(jīng)元的權(quán)重賦值這些參數(shù),保證一致性,這樣可以很好地模擬芯片的工作原理,模擬芯片將訓(xùn)練好的網(wǎng)絡(luò)和參數(shù)預(yù)先寫入芯片SRAM存儲(chǔ)區(qū)。神經(jīng)網(wǎng)絡(luò)芯片映射電路原理圖如圖3所示,各種數(shù)據(jù)參數(shù)在SRAM存儲(chǔ)單元的存儲(chǔ)形式最終都會(huì)是以二進(jìn)制這樣的形式儲(chǔ)存,例如對(duì)于圖3中一個(gè)存儲(chǔ)的32位浮點(diǎn)數(shù)來說,按照IEEE754的規(guī)定,其最高比特位是符號(hào)位S,接著的8個(gè)比特位是指數(shù)位E,剩下的23個(gè)比特位是有效位M,如果其中一位發(fā)生隨機(jī)錯(cuò)誤,例如1變?yōu)?,則原本存儲(chǔ)的浮點(diǎn)數(shù)(權(quán)重參數(shù)值)會(huì)發(fā)生變化。

圖3 神經(jīng)網(wǎng)絡(luò)芯片映射電路Fig.3 Neural network chip mapping circuit

為了模擬單粒子輻照效應(yīng)擾動(dòng)帶來的隨機(jī)位翻轉(zhuǎn),本文隨機(jī)選取部分參數(shù)進(jìn)行隨機(jī)位的注錯(cuò)干擾,這樣便可得到一部分出錯(cuò)的參數(shù),并使該錯(cuò)誤參數(shù)替換原來的參數(shù),并傳回網(wǎng)絡(luò)相應(yīng)的層,賦值給對(duì)應(yīng)的神經(jīng)元所表示的權(quán)重,針對(duì)每個(gè)神經(jīng)元,正常訓(xùn)練后的神經(jīng)元輸出計(jì)算如下:

yout=f(x1*w1+x2*w2+

x3*w3+…+xn*wn),

(1)

而在進(jìn)行干擾注錯(cuò)后其神經(jīng)元的輸出為

x′3*w′3+…+x′n*w′n).

(2)

其中:w′1、w′2、w′3…w′n是原始權(quán)重值隨機(jī)出錯(cuò)后的結(jié)果,非線性函數(shù)f一般是神經(jīng)元的激活函數(shù),常用的如relu、tanh和softmax等激活函數(shù)[22]。利用這樣一個(gè)帶著錯(cuò)誤權(quán)重的神經(jīng)網(wǎng)絡(luò)去測試數(shù)據(jù)集,并進(jìn)行多次重復(fù)實(shí)驗(yàn),保證每次添加的噪聲都是隨機(jī)的,能很好模擬CNN芯片的SEU現(xiàn)象。

2.3 對(duì)神經(jīng)網(wǎng)絡(luò)神經(jīng)元進(jìn)行dropout

Dropout是對(duì)神經(jīng)網(wǎng)絡(luò)模型的又一次優(yōu)化,其核心思想是在訓(xùn)練的網(wǎng)絡(luò)中對(duì)一部分神經(jīng)元進(jìn)行以概率p的屏蔽,也就是使其激活值即權(quán)重參數(shù)以伯努利概率p變?yōu)?,讓其停止工作,這樣可以減少特征檢測器(隱層節(jié)點(diǎn))間的相互作用(檢測器的相互作用是指某些檢測器依賴其他檢測器才能發(fā)揮作用),從而提升神經(jīng)網(wǎng)絡(luò)對(duì)數(shù)據(jù)的歸納效果。如圖4(a)所示,對(duì)于一個(gè)具有L個(gè)隱藏層的神經(jīng)網(wǎng)絡(luò),令l∈{1,2…,L}表示隱藏層的第l層,設(shè)z(l)為第l層的輸入,y(l)為第l層的輸出。w(l)和b(l)為第l層的權(quán)值和偏差,一個(gè)標(biāo)準(zhǔn)神經(jīng)網(wǎng)絡(luò)的前饋操作可表示為(對(duì)于l∈{0,1…,L-1}和任何隱藏層i),其表達(dá)式如下

(3)

(4)

圖4 神經(jīng)元參數(shù)表示Fig.4 Neuron parameters representation

(5)

(6)

(7)

(8)

本文的做法是對(duì)每個(gè)輸入點(diǎn)和每個(gè)層中的每個(gè)網(wǎng)絡(luò)單元進(jìn)行二進(jìn)制變量采樣,對(duì)于第i層給定的輸入,如果對(duì)應(yīng)的二進(jìn)制變量的值為0,則該單元將被丟棄(即其值被設(shè)置為0),網(wǎng)絡(luò)模型損失函數(shù)記為E(·,·),對(duì)于權(quán)重wi與偏差bi的L2范數(shù)距離,通常使用一個(gè)重量衰減因子λ使結(jié)果誤差最小化,如下所示

(9)

在為每個(gè)輸入點(diǎn)和每個(gè)層中的每個(gè)網(wǎng)絡(luò)單元(除去最后一個(gè))采樣二進(jìn)制變量后,對(duì)于第i層,每個(gè)二進(jìn)制變量都按照隨機(jī)概率將pi的值設(shè)為1。對(duì)于給定的輸入,如果對(duì)應(yīng)的二進(jìn)制變量的值被設(shè)為0,則該單元將被視為丟棄(即其值被設(shè)置為0),同時(shí)再將導(dǎo)數(shù)傳播到參數(shù)的向后傳遞中使用相同的值。

一個(gè)完整的標(biāo)準(zhǔn)的神經(jīng)網(wǎng)絡(luò)如圖5(a)所示,正常的訓(xùn)練流程一般是首先把輸入數(shù)據(jù)通過神經(jīng)網(wǎng)絡(luò)前向傳播,然后再把誤差值反向傳遞以此來決定神經(jīng)網(wǎng)絡(luò)如何不斷更新參數(shù)讓網(wǎng)絡(luò)進(jìn)行優(yōu)化學(xué)習(xí),而dropout的過程是隨機(jī)刪除神經(jīng)網(wǎng)絡(luò)中部分隱藏神經(jīng)元,例如圖5(b)所示,未進(jìn)行連接的神經(jīng)元即是被刪除的神經(jīng)元。在這一過程中,刪除的神經(jīng)元參數(shù)仍然保持不變,只是按照伯努利概率分布將其置為0,即將部分神經(jīng)元按照一定概率進(jìn)行屏蔽關(guān)閉。這樣可以使這些神經(jīng)元在測試數(shù)據(jù)時(shí)處于不工作狀態(tài),從而有機(jī)會(huì)讓那些受到SEU影響的神經(jīng)元不工作,避免影響后續(xù)數(shù)據(jù)流的傳遞與輸出,得出不準(zhǔn)確的結(jié)果。

圖5 神經(jīng)網(wǎng)絡(luò)修改前后對(duì)比Fig.5 Comparison of the neural networkbefore and after modification

對(duì)于改進(jìn)后的網(wǎng)絡(luò)框架,表2給出了偽代碼以描述具體算法處理過程,相關(guān)實(shí)驗(yàn)流程圖如圖6所示,具體包括:

圖6 實(shí)驗(yàn)流程框架圖Fig.6 Diagram of the experiment flow

表2 神經(jīng)網(wǎng)絡(luò)參數(shù)注錯(cuò)前后迭代計(jì)算偽代碼Table 2 Pseudocode of the iterative calculation beforeand after the neural network parameter error injection

1) 訓(xùn)練未經(jīng)SEU引起錯(cuò)誤的網(wǎng)絡(luò)并得到權(quán)重參數(shù);

2) 每次迭代結(jié)束后的同時(shí)將參數(shù)保存并對(duì)其進(jìn)行二進(jìn)制轉(zhuǎn)換;

3) 對(duì)參數(shù)按照一定比例進(jìn)行隨機(jī)注錯(cuò)以達(dá)到模擬單粒子效應(yīng)干擾的效果;

4) 對(duì)神經(jīng)網(wǎng)絡(luò)的神經(jīng)元進(jìn)行dropout操作,然后返回原來的網(wǎng)絡(luò);

5) 在未滿足預(yù)設(shè)誤差閾值下循環(huán)進(jìn)行一定次數(shù)的迭代并測試數(shù)據(jù)集,計(jì)算并得到每一次的結(jié)果。

3 實(shí)驗(yàn)結(jié)果

實(shí)驗(yàn)環(huán)境是在 window10 64 位操作系統(tǒng)下,基于深度學(xué)習(xí)框架Pytorch平臺(tái),采用GPU加速,Python編程語言實(shí)現(xiàn)。在進(jìn)行模擬輻照效應(yīng)擾動(dòng)時(shí),先后對(duì)1‰,1%,5%,10%的比例參數(shù)進(jìn)行隨機(jī)注錯(cuò),得到圖7所示結(jié)果。在1‰比例參數(shù)出錯(cuò)的情況下(這種比例已經(jīng)很大程度模擬SEU效應(yīng)),在實(shí)驗(yàn)迭代次數(shù)增加的情況下,最終結(jié)果準(zhǔn)確率會(huì)維持在0.94附近左右,而在無SEU情況下訓(xùn)練好的LeNet5網(wǎng)絡(luò)對(duì)MNIST數(shù)據(jù)集的測試結(jié)果能達(dá)到0.99左右,所以可以看出SEU引起參數(shù)的隨機(jī)變化會(huì)對(duì)結(jié)果準(zhǔn)確率產(chǎn)生一定的負(fù)面影響。后面繼續(xù)在1%,5%,10%的大比例參數(shù)出錯(cuò)情況下進(jìn)行測試,發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)結(jié)果準(zhǔn)確率迅速下降,除此之外,準(zhǔn)確率上下偏差震蕩的現(xiàn)象也很明顯,這導(dǎo)致整個(gè)網(wǎng)絡(luò)幾乎不可用。因?yàn)閷?duì)于有幾萬個(gè)參數(shù)的網(wǎng)絡(luò),1%即為有幾百個(gè)參數(shù)同時(shí)出錯(cuò),這對(duì)各個(gè)神經(jīng)元的關(guān)聯(lián)影響很大。

圖7 不同比例參數(shù)出錯(cuò)情況下準(zhǔn)確率隨迭代次數(shù)的變化曲線Fig.7 Curve of accuracy vs. iterations fordifferent scale parameter errors

針對(duì)1‰比例權(quán)重參數(shù)在受到干擾出錯(cuò)的情況下,對(duì)比正常訓(xùn)練的網(wǎng)絡(luò)和注錯(cuò)并進(jìn)行dropout后的網(wǎng)絡(luò),得到的實(shí)驗(yàn)結(jié)果如圖8所示。而對(duì)于1%,5%和10%參數(shù)出錯(cuò),如表3所示,雖然準(zhǔn)確率已經(jīng)低于0.90,但相比未采用dropout網(wǎng)絡(luò)的準(zhǔn)確度都有一定程度的上升。事實(shí)上,在實(shí)際使用環(huán)境中,由于空間輻照所造成SEU干擾下參數(shù)出錯(cuò)的比例也很難達(dá)到1%級(jí)別。另外可以看出,未進(jìn)行SEU和dropout算法的LeNet5網(wǎng)絡(luò)對(duì)MNIST數(shù)據(jù)集的測試準(zhǔn)確率達(dá)到0.99左右,符合預(yù)期效果。而在1‰比例參數(shù)出錯(cuò)的情況下,還是如圖7在0.94左右,但進(jìn)行dropout后神經(jīng)網(wǎng)絡(luò)準(zhǔn)確率較僅僅注錯(cuò)情況下有明顯的提升效果,進(jìn)行一定次數(shù)迭代后,準(zhǔn)確率約0.96,提升約2個(gè)百分點(diǎn),效果也比較明顯,能起到一定的容錯(cuò)作用。

表3 神經(jīng)元有無dropout操作的準(zhǔn)確率對(duì)比Table 3 Comparison of the accuracy with orwithout the dropout operation

圖8 3種情況對(duì)比Fig.8 Comparison of the three situations

4 分析與對(duì)比

本文方法在硬件方面不需要再做額外的設(shè)計(jì),只需要在神經(jīng)網(wǎng)絡(luò)算法上對(duì)部分神經(jīng)元進(jìn)行dropout操作處理,沒有過多的輸入數(shù)據(jù)的預(yù)處理,保證芯片的運(yùn)行效率不會(huì)降低,提高了芯片處理數(shù)據(jù)的性能。表4給出與前述幾種方法的對(duì)比。

表4 方法優(yōu)缺點(diǎn)對(duì)比Table 4 Advantages and disadvantagesof different methods

硬件的三模冗余電路需要對(duì)電路進(jìn)行3倍同樣的硬件設(shè)計(jì),這會(huì)對(duì)芯片寶貴的硬件資源造成過度的開銷,同時(shí)芯片的體積、重量和能耗都會(huì)因此增加,而且在數(shù)據(jù)的傳送處理過程中,進(jìn)行過多的數(shù)據(jù)預(yù)處理,會(huì)降低芯片本來的處理速度,在極限環(huán)境下可能會(huì)降低70%~80%的處理速度。特別是三模電路硬件本身設(shè)計(jì)比較復(fù)雜,如果三模電路自身出現(xiàn)不可預(yù)料的故障,會(huì)導(dǎo)致整個(gè)系統(tǒng)對(duì)輸入數(shù)據(jù)的錯(cuò)誤判決。周期性的擦洗方法設(shè)計(jì)缺點(diǎn)是擦洗方法本身不能對(duì)芯片存儲(chǔ)單元內(nèi)容就是否受到空間輻照干擾進(jìn)行自我校驗(yàn),且恢復(fù)只是一個(gè)暫態(tài)的周期,只能起到一定程度的減緩。而糾錯(cuò)編碼方法的設(shè)計(jì)其缺點(diǎn)是發(fā)生錯(cuò)誤時(shí),需要更新芯片存儲(chǔ)器內(nèi)的單元數(shù)據(jù),這會(huì)占用芯片的運(yùn)行開銷,有一定的延時(shí)并且降低了芯片處理數(shù)據(jù)的處理速度。所以在滿足一定準(zhǔn)確度下,本文方法對(duì)硬件資源數(shù)量需求減少,其芯片本身體積、重量和能耗都有一定降低。

5 總結(jié)

本文針對(duì)空間輻照SEU效應(yīng)對(duì)神經(jīng)網(wǎng)絡(luò)芯片產(chǎn)生的影響,就CNN算法進(jìn)行研究,通過算法改進(jìn)降低SEU對(duì)網(wǎng)絡(luò)性能的影響。給出具體實(shí)驗(yàn)過程軟件仿真模擬這一現(xiàn)象,得出了正常神經(jīng)網(wǎng)絡(luò)和在受到干擾參數(shù)出錯(cuò)后的網(wǎng)絡(luò)對(duì)同一數(shù)據(jù)集的測試結(jié)果準(zhǔn)確度,從以上實(shí)驗(yàn)結(jié)果來看,不同比例參數(shù)的出錯(cuò)會(huì)直接影響神經(jīng)網(wǎng)絡(luò)的正常穩(wěn)定工作。而對(duì)神經(jīng)網(wǎng)絡(luò)隱藏層的神經(jīng)元進(jìn)行部分dropout處理后,再去對(duì)同一數(shù)據(jù)集進(jìn)行測試,相比較出錯(cuò)后網(wǎng)絡(luò)的準(zhǔn)確度有一定的提升效果,能起到一定的抗干擾和泛化作用。值得注意的是,雖然本次實(shí)驗(yàn)是在LeNet5和手寫數(shù)據(jù)集MNIST上進(jìn)行的,但其所描述的問題并不局限于此,相關(guān)研究成果也可以應(yīng)用于其他的CNN?,F(xiàn)如今神經(jīng)網(wǎng)絡(luò)芯片復(fù)雜度越來越高,處理數(shù)據(jù)的種類也越來越豐富,此次結(jié)果的獲得對(duì)下一步研究更復(fù)雜的數(shù)據(jù)模型或者更大型更深層的CNN芯片抗輻照干擾提供了部分依據(jù)和參考。

猜你喜歡
神經(jīng)元準(zhǔn)確率芯片
《從光子到神經(jīng)元》書評(píng)
自然雜志(2021年6期)2021-12-23 08:24:46
乳腺超聲檢查診斷乳腺腫瘤的特異度及準(zhǔn)確率分析
健康之家(2021年19期)2021-05-23 11:17:39
不同序列磁共振成像診斷脊柱損傷的臨床準(zhǔn)確率比較探討
2015—2017 年寧夏各天氣預(yù)報(bào)參考產(chǎn)品質(zhì)量檢驗(yàn)分析
高速公路車牌識(shí)別標(biāo)識(shí)站準(zhǔn)確率驗(yàn)證法
躍動(dòng)的神經(jīng)元——波蘭Brain Embassy聯(lián)合辦公
芯片測試
多通道采樣芯片ADS8556在光伏并網(wǎng)中的應(yīng)用
基于二次型單神經(jīng)元PID的MPPT控制
毫米波導(dǎo)引頭預(yù)定回路改進(jìn)單神經(jīng)元控制
交城县| 沂水县| 丰原市| 隆子县| 宜州市| 北宁市| 若尔盖县| 德清县| 新疆| 余庆县| 遂平县| 西城区| 灌云县| 沙洋县| 富平县| 新宾| 迭部县| 西城区| 清水河县| 北碚区| 昌吉市| 合阳县| 特克斯县| 蓝田县| 遵义县| 宣恩县| 霍邱县| 二连浩特市| 临清市| 时尚| 五指山市| 崇仁县| 闵行区| 永昌县| 祁东县| 东乌珠穆沁旗| 贵州省| 昌江| 津南区| 新绛县| 阿巴嘎旗|