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

基于ReRAM的神經(jīng)網(wǎng)絡(luò)加速器發(fā)展概況

2018-02-20 00:43:52周川波
西部廣播電視 2018年24期

周川波

(作者單位:四川廣播電視臺520發(fā)射傳輸臺)

1 背景和研究進(jìn)展

隨著互聯(lián)網(wǎng)發(fā)展、存儲介質(zhì)價格降低、數(shù)據(jù)來源越來越廣泛,人們來到了大數(shù)據(jù)(Big Data)時代。深度學(xué)習(xí)[1-3](Deep Learning)可以讓那些擁有多個處理層的計算模型來學(xué)習(xí)具有多層次抽象的數(shù)據(jù)的表示。這些方法在許多方面都帶來了顯著的改善,包括最先進(jìn)的語音識別、視覺對象識別、對象檢測、推薦系統(tǒng)[4-5]和許多其他領(lǐng)域,例如藥物發(fā)現(xiàn)和基因等。深度學(xué)習(xí)能夠發(fā)現(xiàn)大數(shù)據(jù)中的復(fù)雜結(jié)構(gòu)。它是利用反向傳播(Backpropagation,BP)算法來完成這個發(fā)現(xiàn)過程的。BP算法能夠指導(dǎo)機(jī)器如何從前一層獲取誤差而改變本層的內(nèi)部參數(shù),這些內(nèi)部參數(shù)可以用于計算表示。深度卷積網(wǎng)絡(luò)在處理圖像[6]、視頻、語音和音頻方面帶來了突破,而遞歸網(wǎng)絡(luò)在處理序列數(shù)據(jù),比如文本和語音方面表現(xiàn)優(yōu)秀。

深度學(xué)習(xí)方法雖然取得許多突破,但是也存在著模型參數(shù)數(shù)量大,訓(xùn)練慢等問題,除了改進(jìn)訓(xùn)練算法,在軟件層面加快速度外,利用硬件加速訓(xùn)練神經(jīng)網(wǎng)絡(luò)也引起了學(xué)術(shù)界的關(guān)注。在2016年的ISCA會議和MICRO會議,發(fā)表了許多有關(guān)身神經(jīng)網(wǎng)絡(luò)加速器的文章,下面簡單介紹這兩個會議的有關(guān)內(nèi)容。

ISCA2016于6月18日至22日在韓國首爾召開,這次會議有近800名來自世界各地的工業(yè)界和學(xué)術(shù)界的專家學(xué)者參加,在參會人數(shù)上創(chuàng)下歷史新高。本屆會議共收到了291篇投稿論文,最終錄用了57篇,接收率為19.6%。

在這次大會上,SK Hynix的執(zhí)行副總裁Seok-Hee Lee做了關(guān)于存儲技術(shù)的報告。由于CPU/GPU計算能力的迅速增長,未來系統(tǒng)性能的提高遇到了“存儲墻”(Memory Wall)的瓶頸,使存儲技術(shù)在計算機(jī)體系架構(gòu)的重要性越來越高。除了繼續(xù)研究基于傳統(tǒng)的SRAM和DRAM的存儲架構(gòu),新型存儲技術(shù),比如非易失性存儲器(Non-volatile Memory)的研究越來越受到學(xué)術(shù)界和工業(yè)界的重視。這次大會57篇論文中,大約20篇都與Memory相關(guān)。

MICRO是計算機(jī)體系結(jié)構(gòu)領(lǐng)域的頂級會議,重點(diǎn)關(guān)注處理器體系結(jié)構(gòu)的設(shè)計等內(nèi)容。自1968年創(chuàng)辦以來,迄今已經(jīng)舉辦了49屆,MICRO2016于10月15日至19日在臺北召開。本屆會議共收到了283篇投稿論文,最終錄用了61篇,接收率為21.6%。

從MICRO論文分析來看,目前體系結(jié)構(gòu)研究的熱點(diǎn)體現(xiàn)在兩個方面:第一是對存儲結(jié)構(gòu)的關(guān)注,第二是對神經(jīng)網(wǎng)絡(luò)加速器的關(guān)注。

本文關(guān)注的是新型存儲器和神經(jīng)網(wǎng)絡(luò)加速器研究的結(jié)合點(diǎn)——基于新型存儲器ReRAM的神經(jīng)網(wǎng)絡(luò)加速器。與現(xiàn)在深度學(xué)習(xí)框架theano、tensorflow 使用軟件仿真和GPU加速[7]不同,使用ReRAM可以直接在內(nèi)存中完成神經(jīng)網(wǎng)絡(luò)計算,節(jié)省了數(shù)據(jù)在內(nèi)存、CPU、GPU頻繁遷移產(chǎn)生的事件和能源損耗。本文首先介紹了ReRAM的原理和結(jié)構(gòu)[8-9],基于ReRAM提出了一個簡單神經(jīng)網(wǎng)絡(luò)架構(gòu)[10],PRIME[11]強(qiáng)化了ReRAM架構(gòu)的處理能力,使其適應(yīng)于不同的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)和較大規(guī)模數(shù)據(jù),NEUTRAMS[12]消除了硬件約束,通過仿真層對硬件的抽象,使得在表示層設(shè)計的神經(jīng)網(wǎng)絡(luò)不需要修改即可實(shí)現(xiàn)在不同硬件架構(gòu)上移植。

2 電阻式隨機(jī)訪問存儲器

電阻式隨機(jī)訪問存儲器[8-9](ReRAM),是一類通過改變單元(Cell)電阻來實(shí)現(xiàn)非易失性存儲(Non-volatile Memory)的隨機(jī)訪問存儲器。廣義的定義下并沒有指明實(shí)現(xiàn)電阻變化的材料,如非特別說明,本文所指的ReRAM是廣義ReRAM的一個子類,即使用金屬氧化物的ReRAM,這種ReRAM使用金屬氧化物層來實(shí)現(xiàn)電阻的變化。

如圖1(a),ReRAM單元是一種金屬-絕緣體-金屬(Metal-insulator-metal,MIM)結(jié)構(gòu),由頂層電極,底層電極和中間層金屬氧化物組成。當(dāng)有額外的電壓通過時,ReRAM單元將從高阻態(tài)(High Resistance State,HRS)轉(zhuǎn)換成低阻態(tài)(Low Resistance State,LRS),通常高阻態(tài)表示邏輯“0”,低阻態(tài)表示邏輯“1”。

圖1(b)展示了ReRAM單元雙極轉(zhuǎn)換的I-V圖,將一個單元從高阻態(tài)(邏輯“0”)轉(zhuǎn)換成低阻態(tài)(邏輯“1”)稱為置位(SET)操作,將一個單元從低阻態(tài)(邏輯“1”)轉(zhuǎn)換成高阻態(tài)(邏輯“0”)稱為重置(RESET)操作。通常使用正電壓來進(jìn)行置位操作,使用負(fù)電壓來進(jìn)行重置操作。進(jìn)行SET操作時,正電壓保持不變,觀察到電流增加,也就是說電阻減小,成為低阻態(tài)。進(jìn)行RESET操作時,負(fù)電壓保持不變,電流趨向于零,也就是說電阻增大,成為高阻態(tài)。需要強(qiáng)調(diào)的是,目前情況下基于ReRAM的存儲器耐久度達(dá)到了1 012數(shù)量級,而基于PCM的存儲器耐久度在106~108。ReRAM有較好的耐久度。

圖1(c)展示了ReRAM的Crossbar整列結(jié)構(gòu),這是最能有效利用面積的陣列組織方式。目前有兩種通用的方法來提升ReRAM的密度、降低功耗,一種是多層的Crossbar架構(gòu)(Multi-layer Crossbar Architecture),一種是多平面的單元結(jié)構(gòu)(Multi-level Cell,MLC)。在MLC結(jié)構(gòu)下,ReRAM的每個單元通過使用不同平面的電阻,可以實(shí)現(xiàn)存儲超過1bit的信息。實(shí)現(xiàn)這種一個單元存儲多bit信息需要非常好的寫控制器件,目前已經(jīng)能夠做到一個單元存儲7bit信息。

圖1(a) ReRAM單元示意圖 圖1(b) 雙極轉(zhuǎn)換的I-V曲線圖圖1(c) Crossbar架構(gòu)圖解

因?yàn)镃rossbar架構(gòu)的高密度,ReRAM被認(rèn)為是可以替代DRAM成為下一代主存的關(guān)鍵技術(shù)。但也存在一些障礙,其中就是ReRAM的讀延遲與DRAM相當(dāng),但是寫延遲要就比DRAM久(5倍以上),目前也有一些優(yōu)化措施提升ReRAM的寫性能,讓ReRAM與DRAM的差距在10%以內(nèi)。除了ReRAM,還有其他的非易失性存儲器被研究者所關(guān)注,他們包括自旋轉(zhuǎn)移力矩磁性隨機(jī)訪問存儲器(Spin-transfer Torque Magnetic RAMSTT-RAM),相變存儲器(Phase Change Memory)等等,這些存儲器都能實(shí)現(xiàn)除數(shù)據(jù)存儲之外的邏輯運(yùn)算能力。在這些存儲器中,ReRAM因?yàn)橥ㄟ^Crossbar結(jié)構(gòu)對大規(guī)模矩陣向量進(jìn)行有效計算,在神經(jīng)計算中被廣泛應(yīng)用。

3 簡單神經(jīng)網(wǎng)絡(luò)加速器架構(gòu)

2015年,Prezioso等人在Nature上的文章[10]指出,他們制造了一個12×12的基于ReRAM的Crossbar原型,利用該原型實(shí)現(xiàn)了神經(jīng)計算,并把3×3的黑白圖片成功分成了三類。Prezioso等人從實(shí)驗(yàn)的角度證實(shí)了ReRAM存儲器應(yīng)用于神經(jīng)計算的可能,這篇文章也成為了構(gòu)造更龐大、更復(fù)雜神經(jīng)網(wǎng)絡(luò)加速器的基石。

Prezioso的ReRAM原型如圖2,該結(jié)構(gòu)集成了12×12的Crossbar,每個單元使用Al2O3/TiO2-x憶阻器(Memristor)。該原型芯片可用來實(shí)現(xiàn)圖3中的簡單神經(jīng)網(wǎng)絡(luò)。圖3(b)中的單層感知機(jī)包含10個輸入,3個輸出,神經(jīng)元之間的全連接構(gòu)成了10×3=30個連接權(quán)重(Synaptic Weights)。感知機(jī)的輸出fi通過非線性的激活函數(shù)得到:

其中Ii通過矩陣運(yùn)算得到:

Vj(j=1,...,9)是與圖片像素相關(guān)的輸入信號,V10是偏置,β用來控制激活函數(shù)非線性程度的參數(shù),Wij表示神經(jīng)元之間的連接權(quán)重。這樣一個簡單神經(jīng)網(wǎng)絡(luò)已經(jīng)可以用來執(zhí)行一些模式識別任務(wù)了,例如,將3×3的黑白圖片分成三類,圖片的每個像素成為神經(jīng)網(wǎng)絡(luò)的一個輸入。Prezioso等人使用的數(shù)據(jù)集包含N=30個圖片(如圖 3(c),這些圖片包含“z”“v”“n”三個形狀,每個形狀還包含9個被“污染”的版本(翻轉(zhuǎn)原始圖片中的一個像素),因?yàn)閿?shù)據(jù)集有限,它們不光被用來訓(xùn)練網(wǎng)絡(luò),也被用來測試網(wǎng)絡(luò)。

在實(shí)際實(shí)現(xiàn)中,輸入信號通過電壓Vj來表示,取值為+0.1 V或者-0.1 V,代表黑像素點(diǎn)或者白像素點(diǎn)。對于偏置V10而言,通常為0.1 V。這種編碼方式使得標(biāo)準(zhǔn)數(shù)據(jù)集很均衡,即每一個類中圖片對應(yīng)的輸入信號和接近于零,這加速了訓(xùn)練的收斂。為了讓網(wǎng)絡(luò)的輸出層同樣有這種平衡性質(zhì),每個連接權(quán)重(突觸)使用了兩個憶阻器,因此Crossbar上憶阻器數(shù)量為30×2=60(如圖4(a),Prezioso等人使用了額外的器件來保證每一列上虛擬地線條件(Virtual Ground Conditions)得到滿足,減去了當(dāng)前在相鄰列使用的流式結(jié)構(gòu)來生成不同的輸出信號Ii,Prezioso等人確保Ohm定律能夠應(yīng)用于Crossbar的每一列,對于不同的權(quán)重。

圖2 ReRAM Crossbar原型結(jié)構(gòu)圖

(a)輸入圖片,3 3簡單二值灰度圖,(b)用來分類圖片的單層感知機(jī),(c)輸入的圖片集合,(d)訓(xùn)練算法流程圖。

其中Gij+表示憶阻器的有效電導(dǎo)率,也就是在電壓0.1 V下I/V的比率。公式(1)同樣也是通過外部元器件實(shí)現(xiàn),這里β取值為2×105A-1。

對于每一步訓(xùn)練而言(如圖4(d)),訓(xùn)練集中中每個一樣例依次輸入 Crossbar,Crossbar 產(chǎn)生輸出為 fi(n),n為樣例的編號,權(quán)重的更新量依照如下公式計算:

其中fi(g)是第i個輸出的目標(biāo)值,在Prezioss等人的系統(tǒng)中,取值+0.85表示正確分類,取值-0.85表示錯誤分類。一旦全部的N個樣例完成訓(xùn)練,所有的更新量Δij(n)計算完成,權(quán)重依照下面公式更新:

其中η是一個常數(shù)。

圖3 簡單圖片分類任務(wù)

圖4 進(jìn)行圖片分類任務(wù)時芯片的工作過程

(a)Crossbar上使用10×6的片段實(shí)現(xiàn)的單層感知機(jī),(b)對二值圖片’z’的分類操作過程,深色像素對應(yīng)+VR,淺色像素對應(yīng)VR,這里使用的讀電壓VR=0.1V,寫電壓VW=1.3V,(c)更新權(quán)重的操作過程(這里表示的是第一列)。

對于3×3二值灰度圖片的分類結(jié)果如圖5,通常能夠在23代收斂。圖5嵌套的圖展示了權(quán)重W初始化值和訓(xùn)練至21代時值的分布情況。

Prezioso 等人設(shè)計的芯片,在Crossbar上能夠直接完成公式2、公式3,通過額外的元器件,完成公式1、公式4、公式5的起算,實(shí)現(xiàn)了基本的神經(jīng)網(wǎng)絡(luò)計算,并完成簡單的二值灰度圖片分類任務(wù)。不可否定的是,該研究啟發(fā)了學(xué)界基于ReRAM的神經(jīng)網(wǎng)絡(luò)加速器的研究。但是在大數(shù)據(jù)和規(guī)模極大的神經(jīng)網(wǎng)絡(luò)模型下,Prezioso等人的芯片在通用性、計算性能、功耗等方面都有待提升。下面我們將介紹性能和通用性更好的神經(jīng)網(wǎng)絡(luò)加速器架構(gòu)PRIME。

圖5 迭代次數(shù)與錯分?jǐn)?shù)折線圖

4 PRIME:適用范圍更廣的神經(jīng)網(wǎng)絡(luò)加速器架構(gòu)

章節(jié)3實(shí)現(xiàn)的芯片原型結(jié)構(gòu)簡單,僅僅能夠處理30個連接權(quán)重,對于處理大數(shù)據(jù)是不足夠的。本章節(jié)介紹的基于ReRAM主存技術(shù)的神經(jīng)網(wǎng)絡(luò)加速器架構(gòu)PRIME[11]是遲萍等人發(fā)表在ISCA2016上的最新成果。PRIME基于 PIM思 想(Processing In Memory),使用的Crossbar陣列不光能夠被用來加速神經(jīng)網(wǎng)絡(luò)計算,還能夠當(dāng)成普通存儲器使用。遲萍等人不光設(shè)計了微架構(gòu)(Microarchitecture),還提供了軟硬件接口,這使得開發(fā)者能夠基于PRIME實(shí)現(xiàn)不同種類的神經(jīng)網(wǎng)絡(luò)。PRIME的實(shí)驗(yàn)效果非常好,相比前人的神經(jīng)網(wǎng)絡(luò)加速器,在遲萍等人的實(shí)驗(yàn)環(huán)境下,PRIME的性能提升了2360倍,功耗降低了895倍。PRIME的特點(diǎn)如下:

(1)存儲架構(gòu)既能用來加速神經(jīng)網(wǎng)絡(luò)計算,又能作為普通存儲器。

(2)通過精心設(shè)計的電路和微架構(gòu),使得能在內(nèi)存中進(jìn)行神經(jīng)網(wǎng)絡(luò)計算,同時占用面積很小。

(3)PRIME采用了一種輸入和突觸組合方法來克服精度問題。

(4)PRIME提供了一組軟硬件接口,使得開發(fā)者能夠?qū)崿F(xiàn)不同的神經(jīng)網(wǎng)絡(luò),同時PRIME在編譯期間優(yōu)化神經(jīng)網(wǎng)絡(luò)映射時間,能夠?qū)崿F(xiàn)與其他計算單元之間的并行運(yùn)算。

PRIME的設(shè)計概觀如圖6(c),與其他神經(jīng)網(wǎng)絡(luò)加速器不同(圖6(a),圖6(b),PRIME不需要額外的處理單元(Processing Units,PU),PRIME直接使用ReRAM單元來進(jìn)行計算,為了完成這個目標(biāo),PRIME包含三部分,它們分別是內(nèi)存子陣列,全函數(shù)子陣列,緩存子陣列。內(nèi)存子陣列僅僅只有數(shù)據(jù)存儲的能力(同傳統(tǒng)內(nèi)存子陣列相同),它們的微架構(gòu)和電路設(shè)計同當(dāng)前的ReRAM主存相似。全函數(shù)子陣列有兩種操作模式,在主存模式下,全函數(shù)子陣列功能和傳統(tǒng)主存相同,在計算模式下,全函數(shù)子陣列可以用來做神經(jīng)網(wǎng)絡(luò)計算,需要使用一個PRIME控制器來控制模式的切換。緩存子整列用來為全函數(shù)子陣列提供數(shù)據(jù)緩存,實(shí)際設(shè)計時,靠近全函數(shù)子陣列的主存子陣列被用來作為緩存子陣列。所有的緩存子陣列都有獨(dú)立的數(shù)據(jù)接口,因此緩存訪問不會占用主存訪問的帶寬。當(dāng)不需要使用緩存時,緩存子陣列也可以用來作為普通的主存。使用全函數(shù)子陣列進(jìn)行神經(jīng)網(wǎng)絡(luò)計算能夠享受數(shù)據(jù)遷移的超高帶寬,使用緩存子陣列也使神經(jīng)網(wǎng)絡(luò)計算可以與CPU并行。

PRIME架構(gòu)如圖7所示,有關(guān)要點(diǎn)如下:

第一,全函數(shù)子陣列的設(shè)計。解碼器和驅(qū)動。PRIME改進(jìn)了一些元件,如圖7(A),這些元件解決了計算模型和內(nèi)存之間的差異。

圖6(a) 傳統(tǒng)的處理器-協(xié)處理器架構(gòu) 圖6(b) 使用3D集成技術(shù)的PIM方法圖6(c) PRIME設(shè)計概觀

列多路器。圖7(B)中的列多路起包含了模擬減法單元和sigmoid單元,這支撐了基本的神經(jīng)網(wǎng)絡(luò)計算。

讀出放大器。如圖7(C),讀出放大器使得低精度的ReRAM單元支持高精度的神經(jīng)網(wǎng)絡(luò)計算。同時也提供了卷積神經(jīng)網(wǎng)絡(luò)操作相關(guān)的器件。

緩存連接。如圖7(D),它建立在全函數(shù)子陣列和緩存子陣列之間,使得全函數(shù)子陣列能夠訪問緩存子陣列上的任意位置。

第二,緩存子陣列的設(shè)計。緩存子陣列被設(shè)計用來緩存全函數(shù)子陣列的輸入輸出數(shù)據(jù)。全函數(shù)子陣列不需要CPU的參與就可以直接訪問緩存子陣列,使得它可以與CPU并行執(zhí)行。

第三,PRIME 控制器。如圖7(E),PRIME控制器解碼指令,將控制信號傳給全函數(shù)子陣列。PRIME控制器使得全函數(shù)子陣列可以在內(nèi)存模式和計算模式之間轉(zhuǎn)換。

第四,克服精度挑戰(zhàn)。精度挑戰(zhàn)包含幾個方面:輸入精度、權(quán)重精度、輸出精度。在PRIME設(shè)計上,采用了不同的假定,分別是輸入電壓3-bit精度(8個層級的電壓),4-bit精度的權(quán)重,6-bit精度的輸出。需要指出的是,PRIME使用了2個3-bit來實(shí)現(xiàn)6-bit的輸入信號,使用兩個4-bit來實(shí)現(xiàn)8-bit的權(quán)重。

第五,實(shí)現(xiàn)的神經(jīng)網(wǎng)絡(luò)算法。PRIME實(shí)現(xiàn)了感知機(jī)層、卷積層、池化層、本地應(yīng)答規(guī)則化層等等。

(A)針對不同電壓源的字線(Wordline)驅(qū)動,(B)模擬減法和sigmoid電路的列多路器,(C)可重構(gòu)的讀出放大器,支持多層輸出,加入了ReLU和4-1最大池化函數(shù)單元,用于卷積神經(jīng)網(wǎng)絡(luò),(D)全函數(shù)子陣列和緩存子陣列之間的連接,(E)PRIME控制器

PRIME基于ReRAM,提升了神經(jīng)網(wǎng)絡(luò)計算的計算性能,降低了功耗,適用于MLP、CNN等網(wǎng)絡(luò)結(jié)構(gòu),在MNIST數(shù)據(jù)集上取得了很好的實(shí)驗(yàn)效果,是一個值得關(guān)注的神經(jīng)網(wǎng)絡(luò)加速器架構(gòu)。

5 NEUTRAMS:神經(jīng)網(wǎng)絡(luò)軟硬件協(xié)同設(shè)計工具集

章節(jié)3介紹了一個實(shí)現(xiàn)神經(jīng)網(wǎng)絡(luò)計算的最簡化的微架構(gòu),章節(jié)4進(jìn)一步深化了架構(gòu)的設(shè)計,使其能夠支持大規(guī)模較復(fù)雜的神經(jīng)網(wǎng)絡(luò)。但是這兩種方法都是基于特定的硬件,支持特定的神經(jīng)網(wǎng)絡(luò),抽象化程度較低,YuJi等人在前人研究的基礎(chǔ)上,提出了NEUTRAMS工具集[12],該工具集借鑒了計算機(jī)系統(tǒng)層層抽象的思想,提出了神經(jīng)網(wǎng)絡(luò)系統(tǒng)的分層結(jié)構(gòu),使得基于該工具集進(jìn)行神經(jīng)計算不依賴特定的硬件結(jié)構(gòu)。NUTRAMS工具集的分層思想?yún)⒖剂擞嬎銠C(jī)系統(tǒng)的分層思想(如圖8(a)),NUTRAMS的結(jié)構(gòu)(如圖8)分為:表示層、轉(zhuǎn)換層、映射層、仿真層。

圖8 與傳統(tǒng)計算機(jī)系統(tǒng)架構(gòu)類比

圖7 PRIME架構(gòu)

下面給出了NUTRAMS各層簡介:

表示層,參照大部分神經(jīng)網(wǎng)絡(luò)模型給用戶提供的接口,表示層大都提供了兩種操作,分別為集群(Population,大規(guī)模神經(jīng)元的集合,其實(shí)也就是神經(jīng)網(wǎng)絡(luò)所謂層的概念,如隱藏層,顯示層)和映射(Projection,集群之間的連接,也就所謂的層與層之間的權(quán)重)。一個使用集群和映射操作的例子是:

創(chuàng)建一個神經(jīng)網(wǎng)絡(luò)需要兩類信息:(1)節(jié)點(diǎn)信息,及神經(jīng)元、突觸種類;(2)邊信息,即權(quán)重、延遲、其他用來描述映射的屬性。這也就是表示層所有表示的信息,這類可以用于傳統(tǒng)神經(jīng)網(wǎng)絡(luò)如多層感知器,也可以用卷積神經(jīng)網(wǎng)絡(luò)。

轉(zhuǎn)換層,轉(zhuǎn)換層是NUTRAMS的核心,就是在該層次突破了硬件的約束。YuJi等人使用的核心思想是分治算法,將復(fù)雜的神經(jīng)網(wǎng)絡(luò)連接劃分成更小的連接,讓其滿足硬件約束。圖9是一個數(shù)據(jù)流示意圖,圖9(A)是原始神經(jīng)網(wǎng)結(jié)構(gòu),圖9(B)圖9(C)描述了兩種減少權(quán)重的方法,一種是將前置集群拷貝,和后置集群分別連接,一種是將前置集群合并,與后置集群連接,圖9(D)是原始神經(jīng)網(wǎng)絡(luò)的劃分圖,大規(guī)模的連接被劃分成了小規(guī)模的連接,使直至該網(wǎng)絡(luò)適合于特定的硬件架構(gòu)。關(guān)于如何進(jìn)行劃分和怎么保證劃分之后神經(jīng)網(wǎng)絡(luò)的計算精度,可以參考YuJi等人的論文。

映射層,映射層是用來將神經(jīng)元分配到計算核心,構(gòu)建連接關(guān)系,填寫路由表。最優(yōu)映射不光能夠充分有效地利用芯片資源,也能夠保證正確性。YuJi等人提出的映射方法傾向于將密切聯(lián)系的神經(jīng)元放在一起。根據(jù)之前的描述,經(jīng)過轉(zhuǎn)換層的轉(zhuǎn)換,結(jié)果為相互連接的集群,每一個連接子矩陣(經(jīng)過分治算法的劃分得到的)滿足硬件約束。然后所有的神經(jīng)元被分配到虛擬核心上,再構(gòu)建虛擬核心到物理核心的映射。YuJi等人使用了KL(Kernighan-Lin)劃分策略,該策略將映射抽象成圖的劃分問題,嘗試在劃分邊界上最小化聯(lián)系。該方法首先隨機(jī)生成一個映射格局,然后二分節(jié)點(diǎn),聯(lián)系緊密的模塊保持在同一個劃分中。這個過程將一直持續(xù),直到臨近的兩個節(jié)點(diǎn)被放到任意的最終劃分結(jié)果中。通過這種方法實(shí)現(xiàn)了聯(lián)系的最小化,并構(gòu)建了一個映射。

仿真層,仿真層是對硬件芯片的抽象,NUTRAMS將芯片劃分成三類邏輯模塊:計算核心、主存、片內(nèi)網(wǎng)絡(luò)(Network on Chip,NoC)。對于計算核心的仿真步驟為:(1)得到當(dāng)前輸入脈沖(Input Spike)和突觸權(quán)重,(2)計算并更新神經(jīng)元狀態(tài),(3)發(fā)射新脈沖。如果當(dāng)前有很多輸入,重復(fù)步驟(1)和步驟(2)。對于主存的仿真方法很直觀,只需保存神經(jīng)網(wǎng)絡(luò)模型的突觸權(quán)重即可。對于片內(nèi)網(wǎng)絡(luò)的仿真方法也是很直接的:源神經(jīng)元發(fā)出的脈沖產(chǎn)生一個從源計算核心到目的計算核心的NoC數(shù)據(jù)包(X-Y路由策略)。

NEUTRAMS提供了更高層次的抽象,使得神經(jīng)網(wǎng)絡(luò)設(shè)計不在受硬件約束,相同的神經(jīng)網(wǎng)絡(luò)易于移植到不同的硬件芯片上。YuJi等人設(shè)計了將NUTRAMS工具集應(yīng)用在PRIME架構(gòu)上的實(shí)驗(yàn),取得了很好的效果

6 總結(jié)

本文首先介紹了深度學(xué)習(xí)、ISCA、MICRO的有關(guān)內(nèi)容和背景,重點(diǎn)關(guān)注基于ReRAM的神經(jīng)網(wǎng)絡(luò)加速器,然后介紹了ReRAM的原理和結(jié)構(gòu),介紹了基于ReRAM設(shè)計的簡單神經(jīng)網(wǎng)絡(luò)架構(gòu),該架構(gòu)僅僅支持30個連接權(quán)重,支持神經(jīng)網(wǎng)絡(luò)十分有限。PRIME架構(gòu)極大的擴(kuò)展了對神經(jīng)網(wǎng)絡(luò)計算的支持,針對不同網(wǎng)絡(luò)(多層感知器,卷積神經(jīng)網(wǎng)絡(luò))和較大規(guī)模數(shù)據(jù)集(MNIST)都取得了較好的實(shí)驗(yàn)效果。PRIME雖然對神經(jīng)網(wǎng)絡(luò)加速效果較好,但是其提供的軟硬件接口仍然只針對PRIME架構(gòu)本身,缺乏擴(kuò)展性。

圖9 數(shù)據(jù)流示意圖

NEUTRAMS工具集是為了消除硬件約束提出來,該工具集通過仿真層對硬件的抽象,使得在表示層設(shè)計的神經(jīng)網(wǎng)絡(luò)不需要修改即可實(shí)現(xiàn)在不同硬件架構(gòu)上移植。

主站蜘蛛池模板: 经典三级久久| 亚洲三级网站| 欧美影院久久| 日韩福利在线视频| 久久精品这里只有精99品| 91丝袜在线观看| 国产精品va| 欧美亚洲日韩中文| 久久久噜噜噜| 亚洲成人黄色在线| 国产一区二区三区在线精品专区| 精品91自产拍在线| 99免费在线观看视频| 国产精品主播| 欧美日韩福利| 青青青视频蜜桃一区二区| 国产成熟女人性满足视频| 有专无码视频| 91精品亚洲| 日本免费一区视频| 欧美 亚洲 日韩 国产| 无码一区中文字幕| 一区二区三区高清视频国产女人| 一级毛片不卡片免费观看| 91久久性奴调教国产免费| 中文字幕久久波多野结衣| 国产一区二区三区免费| 国产成人AV大片大片在线播放 | 在线精品亚洲一区二区古装| 日本国产在线| 日韩国产另类| 天天干伊人| 免费看a级毛片| 国产综合在线观看视频| 真实国产乱子伦高清| 中文字幕在线视频免费| 久久综合激情网| 亚洲国产成人自拍| 欧美午夜小视频| 欧美一区二区三区欧美日韩亚洲 | 欧美人人干| 美女扒开下面流白浆在线试听| 亚洲成A人V欧美综合| 中文字幕亚洲综久久2021| 亚洲日本在线免费观看| 午夜久久影院| 日本人妻丰满熟妇区| 精品偷拍一区二区| 国产精品吹潮在线观看中文| 欧美一区二区福利视频| 欧美日韩一区二区在线免费观看| 麻豆国产精品| 国产成人无码综合亚洲日韩不卡| 青青草91视频| 在线国产毛片手机小视频| 亚洲男人的天堂在线观看| 72种姿势欧美久久久大黄蕉| 天天躁夜夜躁狠狠躁躁88| 国产精品毛片一区视频播| 欧美无专区| 亚洲天堂视频在线观看| 不卡无码h在线观看| 亚洲国产成人精品无码区性色| 国产爽爽视频| 伊人久久精品无码麻豆精品| 99久久亚洲精品影院| 爱爱影院18禁免费| 亚洲一区精品视频在线| 亚洲最新在线| 亚洲精品波多野结衣| 青青青亚洲精品国产| 毛片大全免费观看| 国产精选自拍| 青青青草国产| 中文字幕久久精品波多野结| 99久久成人国产精品免费| 国产午夜一级淫片| 国产拍在线| 国产精品55夜色66夜色| 中文字幕第4页| 欧美亚洲国产一区| 国产成人久久777777|