[發(fā)明專利]一種基于FPGA的稀疏激活感知型神經(jīng)網(wǎng)絡(luò)加速器在審
| 申請?zhí)枺?/td> | 202011304282.6 | 申請日: | 2020-11-20 |
| 公開(公告)號: | CN112418396A | 公開(公告)日: | 2021-02-26 |
| 發(fā)明(設(shè)計)人: | 袁海英;曾智勇 | 申請(專利權(quán))人: | 北京工業(yè)大學(xué) |
| 主分類號: | G06N3/04 | 分類號: | G06N3/04;G06N3/063 |
| 代理公司: | 北京思海天達知識產(chǎn)權(quán)代理有限公司 11203 | 代理人: | 劉萍 |
| 地址: | 100124 *** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 fpga 稀疏 激活 感知 神經(jīng)網(wǎng)絡(luò) 加速器 | ||
本發(fā)明公開了一種基于FPGA的稀疏激活感知型神經(jīng)網(wǎng)絡(luò)加速器,包括了讀命令發(fā)生器、數(shù)據(jù)分配器、Tm個運算子通道、大小為Tm×Tn的乘累加陣列、由Tn個加法樹組成的加法樹組、功能模塊和輸出緩存。數(shù)據(jù)分配器將片外存儲器讀入的數(shù)據(jù)分配給盡可能少的運算子通道。運算通道將權(quán)重和非0激活送入到乘累加陣列,乘累加陣列進行運算卷積乘累加。本發(fā)明還提供一種基于FPGA的稀疏激活神經(jīng)網(wǎng)絡(luò)運算數(shù)據(jù)流,它重建非0激活值的位置并且匹配對應(yīng)的權(quán)重。本發(fā)明具有很高的數(shù)據(jù)復(fù)用性,減少了數(shù)據(jù)的搬移節(jié)省功耗,未用到的運算子通道及其后續(xù)模塊被門控時鐘所關(guān)閉,同樣節(jié)省了功耗,它可以高效感知稀疏激活,使絕大部分為非0激活所進行的運算,加快了運算速度。
技術(shù)領(lǐng)域
本發(fā)明涉及電子信息和深度學(xué)習(xí)領(lǐng)域,特別是一種基于FPGA的高效稀疏激活感知型神經(jīng)網(wǎng)絡(luò)加速器。
背景技術(shù)
卷積神經(jīng)網(wǎng)絡(luò)(CNN)近些年來已經(jīng)成為計算機視覺任務(wù)中最流行和有效的算法之一,因其準確率明顯高于傳統(tǒng)算法,在圖像分類,人臉識別,和語義分割等領(lǐng)域得到了廣泛的應(yīng)用。隨著CNN網(wǎng)絡(luò)模型規(guī)模不斷擴大,需要更多的計算和存儲資源,CPU由于其并行計算資源的不足,面對大規(guī)模的CNN運算已經(jīng)現(xiàn)得力不從心,相反,具有大量流處理器的GPU成為了CNN訓(xùn)練和推理的主流平臺,但是其運行CNN時高能耗的缺陷無法避免。FPGA作為一種可編程的邏輯器件,其不僅具有較高的靈活性可以適應(yīng)各種網(wǎng)絡(luò)結(jié)構(gòu),強大的邏輯計算資源和和其較高的能源效率也使其成為了運行CNN的很有前途的硬件平臺。
在深度CNN中,其計算量是十分巨大的,這些運算的激活和權(quán)重很大一部分都為0,通過利用這些稀疏性,可以在不降低網(wǎng)絡(luò)預(yù)測精度的前提下提升大規(guī)模網(wǎng)絡(luò)的推理性能。其中激活的稀疏是在推理過程中產(chǎn)生的,特別是現(xiàn)代卷積神經(jīng)網(wǎng)絡(luò)中大規(guī)模使用的矯正線性單元,但是與權(quán)重稀疏不同的是,推理時產(chǎn)生的稀疏位置很難在訓(xùn)練時進行控制,這就造成現(xiàn)有的利用稀疏激活神經(jīng)網(wǎng)絡(luò)加速器方案對稀疏激活的利用率較為低下。
發(fā)明內(nèi)容
本發(fā)明的目的在于針對現(xiàn)有技術(shù)利用稀疏激活神經(jīng)網(wǎng)絡(luò)加速器方案對稀疏激活的利用率較為低下的不足,提出了一種基于FPGA的稀疏激活感知型神經(jīng)網(wǎng)絡(luò)加速器,該加速器實現(xiàn)了較高的片上數(shù)據(jù)復(fù)用,同時使用的數(shù)據(jù)分配方式減少功耗并對稀疏激活中的0值實現(xiàn)了高效跳過。
本發(fā)明為實現(xiàn)上述技術(shù)目的,所實施的技術(shù)方案為:
一種基于FPGA的稀疏激活感知型神經(jīng)網(wǎng)絡(luò)加速器,其特征在于,包括:讀命令發(fā)生器、數(shù)據(jù)分配器、Tm個運算子通道、大小為Tm×Tn的乘累加陣列、由Tn個加法樹組成的加法樹組、功能模塊和輸出緩存。
所述讀命令發(fā)生器用于向外部總線發(fā)送讀請求尋址片外存儲器存儲的激活和權(quán)重數(shù)據(jù),其讀請求按照Tn個輸入通道的激活和權(quán)重為單位進行,讀取順序為:特征圖從寬度到高度再到輸入通道深度;權(quán)重從寬度到高度,隨后從輸入通道深度到輸出通道深度。
所述數(shù)據(jù)分配器,用于將片外存儲器讀入的數(shù)據(jù)以輸入通道為單位分配給運算子通道,內(nèi)部維持1個輸入通道的計數(shù)器,在輸入通道為Chin的情況下,計數(shù)器的溢出值為ceil(Chin/Tn)-ceil(ceil(Chin/Tn)/Tm),跨步為ceil(ceil(Chin/Tn)/Tm),計數(shù)條件為上一個輸入通道尋址完畢,此處ceil()表示向上取整,“/”為除法,Tm和Tn為乘累加陣列的高度和寬度。只要沒溢出,每次計數(shù)條件的觸發(fā)都引起下一個運算子通道的數(shù)據(jù)分配,一旦溢出,重新分配給第一個運算子通道。沒有獲得數(shù)據(jù)的運算子通道及其后續(xù)模塊被門控時鐘所關(guān)閉。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京工業(yè)大學(xué),未經(jīng)北京工業(yè)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202011304282.6/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





