[發(fā)明專利]基于異構(gòu)計算的卷積神經(jīng)網(wǎng)絡資源優(yōu)化配置方法有效
| 申請?zhí)枺?/td> | 201911293482.3 | 申請日: | 2019-12-12 |
| 公開(公告)號: | CN112988229B | 公開(公告)日: | 2022-08-05 |
| 發(fā)明(設計)人: | 王浩;曹姍;徐樹公;張舜卿 | 申請(專利權(quán))人: | 上海大學 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06N3/04 |
| 代理公司: | 上海交達專利事務所 31201 | 代理人: | 王毓理;王錫麟 |
| 地址: | 200444*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 計算 卷積 神經(jīng) 網(wǎng)絡資源 優(yōu)化 配置 方法 | ||
一種基于異構(gòu)計算的卷積神經(jīng)網(wǎng)絡資源優(yōu)化配置方法,針對卷積神經(jīng)網(wǎng)絡的卷積層、偏置層、池化層、relu層和全連接層進行逐層計算復雜度分析和數(shù)據(jù)復雜度分析,得到計算通信比,基于計算通信比的排序在異構(gòu)計算平臺上以運算速度和效率作為優(yōu)化目標進行資源配置,即將計算通信比高的部分配置于FPGA上進行計算,其余部分配置于ARM上進行計算。本發(fā)明同時兼顧了FPGA的高度并行計算的能力和ARM端的高主頻,多級緩存以及單指令多數(shù)據(jù)等特點,顯著加速卷積層等計算密集型部分的運算和數(shù)據(jù)密集的全連接層運算,從而對整個卷積神經(jīng)網(wǎng)絡達到最有效的加速。
技術(shù)領(lǐng)域
本發(fā)明涉及的是一種人工智能領(lǐng)域的技術(shù),具體是一種基于異構(gòu)計算的卷積神經(jīng)網(wǎng)絡資源優(yōu)化配置方法。
背景技術(shù)
近年來卷積神經(jīng)網(wǎng)絡得到了廣泛的應用,并在圖像分類、語音識別、文本檢測等方面取得了很大的成功,但現(xiàn)有的神經(jīng)網(wǎng)絡的模型依賴數(shù)百萬甚至數(shù)十億參數(shù)進行大量的計算,例如典型的vgg16網(wǎng)絡,參數(shù)量就高達1.38億個,而乘加運算次數(shù)更是高達155億次。因而傳統(tǒng)的CPU已經(jīng)無法滿足計算的需求,目前主流的硬件加速平臺是GPU,GPU由上千個流處理器作為運算器,相比于CPU流水線式的串行操作,GPU通過大量線程進行并行計算,在大規(guī)模計算時,會取得明顯的加速效果。
但是針對移動端嵌入式應用而言,GPU的功耗太高。相比之下,F(xiàn)PGA以其靈活性和高效性特別適合作為移動端的硬件加速器。ARM+FPGA的異構(gòu)計算架構(gòu)在移動端實現(xiàn)卷積神經(jīng)網(wǎng)絡是目前常用的一種方法,F(xiàn)PGA彌補了ARM計算能力不足的缺點,可以提供大規(guī)模并行計算;而ARM又更好地控制整個網(wǎng)絡流程,同時多級緩存機制便于緩存大量數(shù)據(jù)。
FPGA的優(yōu)勢在于可以提供大規(guī)模并行計算的能力,利用并行計算提高大規(guī)模計算的速度。但是ARM的主頻遠遠高于FPGA的頻率,ARM擁有的多級緩存機制,同時使用ARM NEON實現(xiàn)單指令多數(shù)據(jù)運算,即可以在一個指令周期內(nèi)并行處理多個數(shù)據(jù)。所以如果某一層的速度受限于傳輸帶寬,即由于需要傳輸大量的數(shù)據(jù),使得傳輸?shù)臄?shù)據(jù)無法提供一個很高的并行度計算時,那么FPGA的大規(guī)模并行計算優(yōu)勢將無法發(fā)揮出來,此時使用ARM更加有效,即ARM更加適合于數(shù)據(jù)密集部分的計算。
發(fā)明內(nèi)容
本發(fā)明針對現(xiàn)有技術(shù)的上述不足,提出一種基于異構(gòu)計算的卷積神經(jīng)網(wǎng)絡資源優(yōu)化配置方法。
本發(fā)明是通過以下技術(shù)方案實現(xiàn)的:
本發(fā)明涉及一種基于異構(gòu)計算的卷積神經(jīng)網(wǎng)絡資源優(yōu)化配置方法,針對卷積神經(jīng)網(wǎng)絡的卷積層、偏置層、池化層、relu層和全連接層進行逐層計算復雜度分析和數(shù)據(jù)復雜度分析,得到計算通信比(CTC),基于計算通信比的排序在異構(gòu)計算平臺上以運算速度和效率作為優(yōu)化目標進行資源配置,即將計算通信比高的部分配置于FPGA上進行計算,其余部分配置于ARM上進行計算。
優(yōu)選地,將全連接層配置于ARM上進行處理,而其余層在FPGA上進行處理。
所述的計算通信比該指標衡量的是傳輸單位字節(jié)數(shù)據(jù)時,可以完成多少運算。即當某一層的CTC越高,表明數(shù)據(jù)復用率越高,該層處于計算密集型部分,需要提供較大算力的硬件平臺,那么該層適合在FPGA中實現(xiàn);而CTC較低時,表明數(shù)據(jù)復用率較低,該層處于數(shù)據(jù)密集型部分,需要提供更高的傳輸帶寬,同時對算力要求沒有那么高,那么該層適合在ARM上完成。
所述的計算通信比高的部分是指:CTC大于2(op/Byte)時屬于計算密集型的部分。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海大學,未經(jīng)上海大學許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201911293482.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 卷積運算處理方法及相關(guān)產(chǎn)品
- 一種卷積神經(jīng)網(wǎng)絡的計算方法及系統(tǒng)
- 卷積運算方法及系統(tǒng)
- 卷積運算方法、裝置及系統(tǒng)
- 深度神經(jīng)網(wǎng)絡裁剪方法、裝置及電子設備
- 基于卷積神經(jīng)網(wǎng)絡的圖像處理方法和圖像處理裝置
- 卷積神經(jīng)網(wǎng)絡及基于卷積神經(jīng)網(wǎng)絡的圖像處理方法
- 一種圖像處理方法、裝置以及計算機存儲介質(zhì)
- 用于卷積神經(jīng)網(wǎng)絡的卷積運算裝置
- 基于FPGA實現(xiàn)圖像識別的方法、裝置、設備及存儲介質(zhì)
- 用于治療支氣管樹的系統(tǒng)、組件和方法
- 一種頸部神經(jīng)信號記錄方法
- 用于在激活褐色脂肪組織時抑制神經(jīng)的方法和裝置
- 一種神經(jīng)元硬件裝置及用這種裝置模擬脈沖神經(jīng)網(wǎng)絡的方法
- 神經(jīng)移植物及應用其的神經(jīng)移植物系統(tǒng)
- 一種神經(jīng)疏通緩解裝置
- 神經(jīng)移植物及應用其的神經(jīng)移植物系統(tǒng)
- 一種模擬神經(jīng)網(wǎng)芯片的設計方法及模擬神經(jīng)網(wǎng)芯片
- 神經(jīng)網(wǎng)絡的剪枝方法、裝置、設備及存儲介質(zhì)
- 一套無人機神經(jīng)網(wǎng)絡控制用的人工神經(jīng)元模型





