[發(fā)明專(zhuān)利]一種神經(jīng)網(wǎng)絡(luò)處理器和數(shù)據(jù)處理方法在審
| 申請(qǐng)?zhí)枺?/td> | 202010822840.1 | 申請(qǐng)日: | 2020-08-13 |
| 公開(kāi)(公告)號(hào): | CN114077889A | 公開(kāi)(公告)日: | 2022-02-22 |
| 發(fā)明(設(shè)計(jì))人: | 劉保慶;何雷駿;王明書(shū) | 申請(qǐng)(專(zhuān)利權(quán))人: | 華為技術(shù)有限公司 |
| 主分類(lèi)號(hào): | G06N3/063 | 分類(lèi)號(hào): | G06N3/063;G06N3/04 |
| 代理公司: | 廣州三環(huán)專(zhuān)利商標(biāo)代理有限公司 44202 | 代理人: | 熊永強(qiáng);李稷芳 |
| 地址: | 518129 廣東*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 神經(jīng)網(wǎng)絡(luò) 處理器 數(shù)據(jù)處理 方法 | ||
本申請(qǐng)?zhí)峁┝艘环N神經(jīng)網(wǎng)絡(luò)處理器和數(shù)據(jù)處理方法,該神經(jīng)網(wǎng)絡(luò)處理器可以包括:第一緩存單元,用于存儲(chǔ)第一輸入數(shù)據(jù);第二緩存單元,用于存儲(chǔ)權(quán)重?cái)?shù)據(jù);與第一緩存單元和第二緩存單元連接的運(yùn)算單元,用于對(duì)第一輸入數(shù)據(jù)和權(quán)重?cái)?shù)據(jù)進(jìn)行矩陣乘運(yùn)算以得到中間計(jì)算結(jié)果;壓縮單元,用于對(duì)中間計(jì)算結(jié)果進(jìn)行處理,得到處理后的數(shù)據(jù);處理后的數(shù)據(jù)包括壓縮后的數(shù)據(jù)和未壓縮的數(shù)據(jù);與壓縮單元連接的存儲(chǔ)單元訪(fǎng)問(wèn)控制器,用于將處理后的數(shù)據(jù)存儲(chǔ)至神經(jīng)網(wǎng)絡(luò)處理器之外的存儲(chǔ)器中。實(shí)施本申請(qǐng),可以在節(jié)省IO帶寬的同時(shí),還可以減少壓縮操作的復(fù)雜度。
技術(shù)領(lǐng)域
本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,尤其涉及一種神經(jīng)網(wǎng)絡(luò)處理器和數(shù)據(jù)處理方法。
背景技術(shù)
神經(jīng)網(wǎng)絡(luò)是一種模仿動(dòng)物神經(jīng)網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型,這種網(wǎng)絡(luò)由大量的節(jié)點(diǎn)(或稱(chēng)神經(jīng)元)之間相互連接構(gòu)成,通過(guò)調(diào)整內(nèi)部大量節(jié)點(diǎn)之間相互連接的關(guān)系,利用輸入數(shù)據(jù)、權(quán)值產(chǎn)生輸出數(shù)據(jù)模擬人腦的信息處理過(guò)程處理信息并生成模式識(shí)別之后的結(jié)果。
對(duì)于神經(jīng)網(wǎng)絡(luò)運(yùn)算來(lái)說(shuō),如果該神經(jīng)網(wǎng)絡(luò)運(yùn)算具有多層運(yùn)算,多層運(yùn)算的輸入神經(jīng)元和輸出神經(jīng)元并非是指整個(gè)神經(jīng)網(wǎng)絡(luò)的輸入層中神經(jīng)元和輸出層中神經(jīng)元,而是對(duì)于網(wǎng)絡(luò)中任意相鄰的兩層,處于網(wǎng)絡(luò)正向運(yùn)算下層中的神經(jīng)元即為輸入神經(jīng)元,處于網(wǎng)絡(luò)正向運(yùn)算上層中的神經(jīng)元即為輸出神經(jīng)元。以卷積神經(jīng)網(wǎng)絡(luò)模型為例,設(shè)一個(gè)卷積神經(jīng)網(wǎng)絡(luò)有L層,K=1,2,...,L-1,對(duì)于第K層和第K+1層來(lái)說(shuō),我們將第K層稱(chēng)為輸入層,其中的神經(jīng)元為輸入神經(jīng)元,第K+1層稱(chēng)為輸出層,其中的神經(jīng)元為輸出神經(jīng)元。即除最頂層外,每一層都可以作為輸入層,其下一層為對(duì)應(yīng)的輸出層。
在神經(jīng)網(wǎng)絡(luò)模型的計(jì)算過(guò)程中,神經(jīng)網(wǎng)絡(luò)模型中前一層計(jì)算得到的輸出結(jié)果會(huì)作為后一層計(jì)算的輸入。一般情況下,處理器將神經(jīng)網(wǎng)絡(luò)模型中前一層計(jì)算得到的輸出結(jié)果存入處理器內(nèi)部的輸出數(shù)據(jù)緩存器中,在進(jìn)行后一層的計(jì)算時(shí),處理器需要先讀取輸出數(shù)據(jù)緩存器中存儲(chǔ)好的前一層的輸出結(jié)果,然后將其作為當(dāng)前層的輸入進(jìn)行計(jì)算。然而,在前一層計(jì)算得到的中間計(jì)算結(jié)果的數(shù)據(jù)量龐大的情況下,由于受輸出數(shù)據(jù)緩存器的容量限制,中間計(jì)算結(jié)果只能保存在處理器之外的存儲(chǔ)器中,當(dāng)進(jìn)行后一層的計(jì)算時(shí),處理器需要先從外部存儲(chǔ)器中獲取存儲(chǔ)好的前一層的中間計(jì)算結(jié)果,然后將其作為當(dāng)前層的輸入進(jìn)行計(jì)算。
現(xiàn)有技術(shù)中,處理器在對(duì)中間計(jì)算結(jié)果進(jìn)行壓縮時(shí),往往對(duì)中間計(jì)算結(jié)果進(jìn)行全部壓縮,然后,將壓縮后的中間計(jì)算結(jié)果存儲(chǔ)在處理器之外的存儲(chǔ)器中。在進(jìn)行神經(jīng)網(wǎng)絡(luò)的下一層計(jì)算時(shí),需要對(duì)壓縮后的中間計(jì)算結(jié)果進(jìn)行解壓,以獲得解壓后的數(shù)據(jù),然后,使用解壓后的數(shù)據(jù)參與計(jì)算。由于在處理器中增加了壓縮以及解壓縮操作,降低了從處理器中搬運(yùn)中間計(jì)算結(jié)果到存儲(chǔ)器的數(shù)據(jù)量,然而,申請(qǐng)人在實(shí)際中發(fā)現(xiàn),針對(duì)某些神經(jīng)網(wǎng)絡(luò)層來(lái)說(shuō)(例如,第一層神經(jīng)網(wǎng)絡(luò)),由于第一層數(shù)據(jù)的稀疏率通常較低,通過(guò)上述描述的壓縮以及解壓縮方式對(duì)第一層數(shù)據(jù)進(jìn)行處理時(shí),會(huì)帶來(lái)較小的I/O帶寬收益,并且還帶來(lái)因壓縮以及解壓縮的復(fù)雜度所帶來(lái)的功耗損失,因此,如何在保證I/O帶寬收益的情況下,減少壓縮以及解壓縮操作的復(fù)雜度是亟需解決的技術(shù)問(wèn)題。
發(fā)明內(nèi)容
本申請(qǐng)?zhí)峁┝艘环N神經(jīng)網(wǎng)絡(luò)處理器和數(shù)據(jù)處理方法,可以降低從神經(jīng)網(wǎng)絡(luò)處理器中搬運(yùn)中間計(jì)算結(jié)果到外部存儲(chǔ)器的數(shù)據(jù)量,還可以減少壓縮操作的復(fù)雜度,為后續(xù)減少解壓縮操作的復(fù)雜度提供了便利。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于華為技術(shù)有限公司,未經(jīng)華為技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010822840.1/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 硬件神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法、計(jì)算裝置、軟硬件協(xié)作系統(tǒng)
- 生成較大神經(jīng)網(wǎng)絡(luò)
- 神經(jīng)網(wǎng)絡(luò)的生成方法、生成裝置和電子設(shè)備
- 一種舌診方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)
- 脈沖神經(jīng)網(wǎng)絡(luò)轉(zhuǎn)換方法及相關(guān)轉(zhuǎn)換芯片
- 圖像處理方法、裝置、可讀存儲(chǔ)介質(zhì)和計(jì)算機(jī)設(shè)備
- 一種適應(yīng)目標(biāo)數(shù)據(jù)集的網(wǎng)絡(luò)模型微調(diào)方法、系統(tǒng)、終端和存儲(chǔ)介質(zhì)
- 用于重構(gòu)人工神經(jīng)網(wǎng)絡(luò)的處理器及其操作方法、電氣設(shè)備
- 一種圖像神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化方法及裝置
- 數(shù)據(jù)處理設(shè)備,數(shù)據(jù)處理方法,和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理電路、數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法、數(shù)據(jù)處理控制方法
- 數(shù)據(jù)處理設(shè)備、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法及數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法及計(jì)算機(jī)可讀取的記錄介質(zhì)
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法以及數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法以及數(shù)據(jù)處理程序
- 數(shù)據(jù)處理裝置、數(shù)據(jù)處理方法和數(shù)據(jù)處理程序
- 一種數(shù)據(jù)庫(kù)讀寫(xiě)分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線(xiàn)程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





