[發(fā)明專利]深度神經(jīng)網(wǎng)絡(luò)的加速與壓縮方法及裝置有效
| 申請?zhí)枺?/td> | 201810088723.X | 申請日: | 2018-01-30 |
| 公開(公告)號: | CN108334945B | 公開(公告)日: | 2020-12-25 |
| 發(fā)明(設(shè)計)人: | 程健;胡慶浩 | 申請(專利權(quán))人: | 中國科學(xué)院自動化研究所 |
| 主分類號: | G06N3/063 | 分類號: | G06N3/063;G06N3/08 |
| 代理公司: | 北京瀚仁知識產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11482 | 代理人: | 郭文浩;陳曉鵬 |
| 地址: | 100190 *** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 深度 神經(jīng)網(wǎng)絡(luò) 加速 壓縮 方法 裝置 | ||
本發(fā)明屬于神經(jīng)網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種深度神經(jīng)網(wǎng)絡(luò)的加速與壓縮方法及裝置。旨在解決現(xiàn)有技術(shù)對深度神經(jīng)網(wǎng)絡(luò)進(jìn)行壓縮和加速占用大量內(nèi)存并且精度下降的問題。本發(fā)明提供深度神經(jīng)網(wǎng)絡(luò)的加速與壓縮方法,包括獲取原始深度神經(jīng)網(wǎng)絡(luò)中各層的輸入數(shù)據(jù)與參數(shù)矩陣;基于輸入數(shù)據(jù)與參數(shù)矩陣,計算原始深度神經(jīng)網(wǎng)絡(luò)中各層的二值矩陣與浮點系數(shù);將二值矩陣替換原始深度神經(jīng)網(wǎng)絡(luò)各層的參數(shù)矩陣,并在原始深度神經(jīng)網(wǎng)絡(luò)中構(gòu)建尺度因子層,基于浮點系數(shù)初始化尺度因子層的參數(shù),得到新的深度神經(jīng)網(wǎng)絡(luò)。本發(fā)明的方案能夠?qū)⑸窠?jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)參數(shù)二值化,占用更少的內(nèi)存且提升精度。
技術(shù)領(lǐng)域
本發(fā)明屬于神經(jīng)網(wǎng)絡(luò)技術(shù)領(lǐng)域,具體涉及一種深度神經(jīng)網(wǎng)絡(luò)的加速與壓縮方法及裝置。
背景技術(shù)
近年來隨著深度學(xué)習(xí)的發(fā)展,深度神經(jīng)網(wǎng)絡(luò)在計算機(jī)視覺、語音、文本等領(lǐng)域中都取得了巨大的成功,這也推動著深度學(xué)習(xí)在無人駕駛、智能家居、視頻監(jiān)控等任務(wù)中的應(yīng)用。
隨著深度網(wǎng)絡(luò)的發(fā)展,深度神經(jīng)網(wǎng)絡(luò)變得更深,同時參數(shù)量和計算量也變得更大。深度神經(jīng)網(wǎng)絡(luò)巨大的參數(shù)量和計算復(fù)雜度在提升網(wǎng)絡(luò)性能的同時也使得部署深度網(wǎng)絡(luò)變得更加困難,特別地,由于移動手機(jī)和嵌入式設(shè)備的計算性能較低,其內(nèi)存和電量有限,將深度神經(jīng)網(wǎng)絡(luò)部署到這些設(shè)備上會面臨著兩方面的挑戰(zhàn):一方面,深度神經(jīng)網(wǎng)絡(luò)巨大的計算復(fù)雜度使得網(wǎng)絡(luò)前饋運行緩慢,這一點對于很多實時的應(yīng)用往往是不能接受的;另一方面,深度網(wǎng)絡(luò)巨大的參數(shù)量也給深度網(wǎng)絡(luò)的部署帶來了困難:首先,大量的參數(shù)使得網(wǎng)絡(luò)模型存儲變大,占用更多的硬盤存儲;其次,深度網(wǎng)絡(luò)需要更多的運行內(nèi)存;最后,大量的內(nèi)存訪問會消耗大量的電量,給移動設(shè)備和嵌入式設(shè)備的續(xù)航帶來很大的挑戰(zhàn)。
針對深度神經(jīng)網(wǎng)絡(luò)在參數(shù)多、運算量大的情況下進(jìn)行壓縮和加速的問題,專利CN106127297A公開了一種基于張量分解的深度卷積神經(jīng)網(wǎng)絡(luò)的加速與壓縮方法,具體涉及:獲取原始深度卷積神經(jīng)網(wǎng)絡(luò);對原始深度卷積神經(jīng)網(wǎng)絡(luò)中各層的權(quán)值張量進(jìn)行張量分解,得到多個低秩子張量,用多個低秩子張量替換原始深度卷積神經(jīng)網(wǎng)絡(luò)中各層的權(quán)值張量,獲得新的深度卷積神經(jīng)網(wǎng)絡(luò)?,F(xiàn)有技術(shù)的方法是對深度卷積神經(jīng)網(wǎng)絡(luò)各層進(jìn)行浮點量運算,而浮點參數(shù)會占用大量的存儲和內(nèi)存,往往會更多地消耗移動設(shè)備和嵌入式設(shè)備上的電量,同時在一些硬件平臺下,例如FPGA,浮點計算會慢很多,此外,現(xiàn)有技術(shù)提出的某些方法只針對全連接神經(jīng)網(wǎng)絡(luò)框架,并且進(jìn)行壓縮或加速后神經(jīng)網(wǎng)絡(luò)的精度將會下降。
因此,如何提出一種解決上述問題的方案是本領(lǐng)域技術(shù)人員目前需要解決的問題。
發(fā)明內(nèi)容
為了解決現(xiàn)有技術(shù)中的上述問題,即為了解決現(xiàn)有技術(shù)對深度神經(jīng)網(wǎng)絡(luò)進(jìn)行壓縮和加速占用大量內(nèi)存并且精度下降的問題,本發(fā)明提供了一種深度神經(jīng)網(wǎng)絡(luò)的加速與壓縮方法,所述方法包括:
步驟S1:獲取原始深度神經(jīng)網(wǎng)絡(luò)中各層的輸入數(shù)據(jù)與參數(shù)矩陣;
步驟S2:基于所述輸入數(shù)據(jù)與參數(shù)矩陣,計算所述原始深度神經(jīng)網(wǎng)絡(luò)中各層的二值矩陣與浮點系數(shù);
步驟S3:將所述二值矩陣替換所述原始深度神經(jīng)網(wǎng)絡(luò)各層的參數(shù)矩陣,并在所述原始深度神經(jīng)網(wǎng)絡(luò)中構(gòu)建尺度因子層,基于所述浮點系數(shù)初始化所述尺度因子層的參數(shù),得到新的深度神經(jīng)網(wǎng)絡(luò)。
在上述方法的優(yōu)選技術(shù)方案中,所述步驟S2具體包括:
步驟S21:隨機(jī)初始化所述二值矩陣與浮點系數(shù),設(shè)定所述原始深度神經(jīng)網(wǎng)絡(luò)的卷積核個數(shù)為T,令i從0到T-1并行獨立執(zhí)行下述步驟;
步驟S22:使用符號函數(shù)初始化所述二值矩陣;通過求解所述參數(shù)矩陣對應(yīng)向量的范數(shù),并用所述參數(shù)矩陣對應(yīng)向量的范數(shù)除以所述參數(shù)矩陣對應(yīng)向量的長度,初始化所述浮點系數(shù);
步驟S23:對初始化后的二值矩陣和浮點系數(shù)進(jìn)行迭代更新。
在上述方法的優(yōu)選技術(shù)方案中,所述步驟S23具體包括:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國科學(xué)院自動化研究所,未經(jīng)中國科學(xué)院自動化研究所許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810088723.X/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 硬件神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法、計算裝置、軟硬件協(xié)作系統(tǒng)
- 生成較大神經(jīng)網(wǎng)絡(luò)
- 神經(jīng)網(wǎng)絡(luò)的生成方法、生成裝置和電子設(shè)備
- 一種舌診方法、裝置、計算設(shè)備及計算機(jī)存儲介質(zhì)
- 學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
- 脈沖神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法及相關(guān)轉(zhuǎn)換芯片
- 圖像處理方法、裝置、可讀存儲介質(zhì)和計算機(jī)設(shè)備
- 一種適應(yīng)目標(biāo)數(shù)據(jù)集的網(wǎng)絡(luò)模型微調(diào)方法、系統(tǒng)、終端和存儲介質(zhì)
- 用于重構(gòu)人工神經(jīng)網(wǎng)絡(luò)的處理器及其操作方法、電氣設(shè)備
- 一種圖像神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化方法及裝置





