[發(fā)明專利]一種基于存儲(chǔ)陣列的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法有效
| 申請(qǐng)?zhí)枺?/td> | 201711446484.2 | 申請(qǐng)日: | 2017-12-27 |
| 公開(kāi)(公告)號(hào): | CN108053029B | 公開(kāi)(公告)日: | 2021-08-27 |
| 發(fā)明(設(shè)計(jì))人: | 張睿 | 申請(qǐng)(專利權(quán))人: | 上海閃易半導(dǎo)體有限公司 |
| 主分類號(hào): | G06N3/063 | 分類號(hào): | G06N3/063;G06N3/08 |
| 代理公司: | 北京集佳知識(shí)產(chǎn)權(quán)代理有限公司 11227 | 代理人: | 王寶筠 |
| 地址: | 中國(guó)(上海)自由貿(mào)易試驗(yàn)區(qū)*** | 國(guó)省代碼: | 上海;31 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 存儲(chǔ) 陣列 神經(jīng)網(wǎng)絡(luò) 訓(xùn)練 方法 | ||
本發(fā)明提供一種基于存儲(chǔ)陣列的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,在對(duì)各存儲(chǔ)陣列的連接權(quán)重的參數(shù)修改時(shí),分別將該存儲(chǔ)陣列前向傳播的輸入數(shù)據(jù)離散化和將存儲(chǔ)陣列反向傳播的誤差數(shù)據(jù)進(jìn)行離散化,從而分別獲得輸入離散值和誤差離散值,通過(guò)輸入離散值和誤差離散值,確定連接權(quán)重的修改條件。該方法中,在修改連接權(quán)重時(shí),根據(jù)預(yù)設(shè)的修改條件進(jìn)行調(diào)整,相當(dāng)于修改幅度為隨機(jī)的,并不是根據(jù)具體的權(quán)重修改目標(biāo)值進(jìn)行,這樣,可以彌補(bǔ)神經(jīng)網(wǎng)絡(luò)算法實(shí)際修改要求與存儲(chǔ)器件特有特性之間的差距,通過(guò)多次訓(xùn)練以及隨機(jī)的修改,達(dá)到輸出結(jié)果收斂的目的,獲得滿意的訓(xùn)練結(jié)果。
技術(shù)領(lǐng)域
本發(fā)明涉及神經(jīng)網(wǎng)絡(luò)集成電路設(shè)計(jì)領(lǐng)域,特別涉及一種基于存儲(chǔ)陣列的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法。
背景技術(shù)
神經(jīng)網(wǎng)絡(luò)(Neuron Network,NN),是模仿動(dòng)物神經(jīng)網(wǎng)絡(luò)行為特征,進(jìn)行分布式并行信息處理的算法數(shù)學(xué)模型,這種算法模型廣泛應(yīng)用于語(yǔ)音識(shí)別、圖像識(shí)別以及自動(dòng)駕駛等人工智能領(lǐng)域。
在神經(jīng)網(wǎng)絡(luò)中,依靠系統(tǒng)的復(fù)雜程度,通過(guò)調(diào)整內(nèi)部大量節(jié)點(diǎn)之間的相互連接關(guān)系,從而達(dá)到處理信息的目的。在神經(jīng)網(wǎng)絡(luò)的實(shí)現(xiàn)算法中,需要對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,從而獲得收斂的神經(jīng)網(wǎng)絡(luò)算法,參考圖1所示,在訓(xùn)練過(guò)程中,前向傳播時(shí),輸入層的信息通過(guò)隱藏層逐層傳遞至輸出層;輸出層的處理結(jié)果與答案標(biāo)簽進(jìn)行對(duì)比產(chǎn)生誤差,在后向傳播時(shí),將產(chǎn)生的誤差通過(guò)隱藏層逐層回傳至輸入層,并進(jìn)行每一層連接權(quán)重的參數(shù)修改,直到算法收斂。
在神經(jīng)網(wǎng)絡(luò)算法處理過(guò)程中,層之間的數(shù)據(jù)處理為矩陣運(yùn)算,隨著神經(jīng)網(wǎng)絡(luò)功能的復(fù)雜化以及規(guī)模化,矩陣運(yùn)算量也急劇擴(kuò)大,通過(guò)CPU(中央處理器)或?qū)S锰幚砥髋c存儲(chǔ)器來(lái)實(shí)現(xiàn)運(yùn)算過(guò)程的方式,要耗費(fèi)大量的處理時(shí)間且設(shè)備費(fèi)用昂貴,目前,提出了利用存儲(chǔ)陣列實(shí)現(xiàn)矩陣運(yùn)算的方式,存儲(chǔ)陣列由非易失性存儲(chǔ)器組成,由于非易失性存儲(chǔ)器的存儲(chǔ)特性,可以以存儲(chǔ)器中存儲(chǔ)的數(shù)據(jù)表征連接權(quán)重的參數(shù),從而實(shí)現(xiàn)層之間的矩陣運(yùn)算。這種方式可以有效地提高神經(jīng)網(wǎng)絡(luò)的運(yùn)算規(guī)模和處理速度,但在訓(xùn)練過(guò)程中,通過(guò)對(duì)存儲(chǔ)器進(jìn)行寫(xiě)擦來(lái)修改連接權(quán)重,然而由于存儲(chǔ)器器件本身的特性,在特定的連接權(quán)重修改值下,得到的修改數(shù)值往往為隨機(jī)分布,難以獲得滿意的訓(xùn)練結(jié)果。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種基于存儲(chǔ)陣列的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,克服存儲(chǔ)陣列權(quán)重修改數(shù)值隨機(jī)性的問(wèn)題,獲得滿意的訓(xùn)練結(jié)果。
為實(shí)現(xiàn)上述目的,本發(fā)明有如下技術(shù)方案:
一種基于存儲(chǔ)陣列的神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法,利用多個(gè)存儲(chǔ)陣列進(jìn)行神經(jīng)網(wǎng)絡(luò)的訓(xùn)練,各所述存儲(chǔ)陣列分別用于神經(jīng)網(wǎng)絡(luò)各層之間的矩陣運(yùn)算,各所述存儲(chǔ)陣列由包括非易失性存儲(chǔ)器的存儲(chǔ)單元構(gòu)成,所述存儲(chǔ)陣列中的存儲(chǔ)數(shù)據(jù)用于表征層之間的連接權(quán)重,所述訓(xùn)練方法包括:
進(jìn)行多次樣本訓(xùn)練,直到輸出誤差收斂;
其中,每次樣本訓(xùn)練中各存儲(chǔ)陣列的連接權(quán)重的參數(shù)修改包括:
按照預(yù)設(shè)的第一連續(xù)區(qū)間與第一離散值的映射關(guān)系,將該存儲(chǔ)陣列前向傳播的輸入數(shù)據(jù)進(jìn)行離散化,以獲得輸入離散值;
按照預(yù)設(shè)的第二連續(xù)區(qū)間與第二離散值的映射關(guān)系,將該存儲(chǔ)陣列反向傳播的誤差數(shù)據(jù)進(jìn)行離散化,以獲得誤差離散值,所述第一連續(xù)區(qū)間或所述第二連續(xù)區(qū)間中的一個(gè)至少包括三個(gè)連續(xù)的區(qū)間;
根據(jù)權(quán)重變化量正比于所述前向傳播的輸入數(shù)據(jù)與所述反向傳播的誤差數(shù)據(jù)的乘積的相反數(shù),通過(guò)所述輸入離散值和所述誤差離散值,確定連接權(quán)重的修改條件,所述修改條件為預(yù)設(shè)的擦操作偏置、寫(xiě)操作偏置或不操作偏置;
按照所述修改條件,將相應(yīng)的非易失性存儲(chǔ)器進(jìn)行偏置。
可選地,所述第一連續(xù)區(qū)間包括一個(gè)零值區(qū)間和至少一個(gè)正值區(qū)間,所述第一離散值的數(shù)值隨著所述第一連續(xù)區(qū)間的區(qū)間數(shù)值的增大而增大且數(shù)值符號(hào)為相應(yīng)區(qū)間的符號(hào);所述第二連續(xù)區(qū)間包括至少一個(gè)正值區(qū)間、零值區(qū)間和至少一個(gè)負(fù)值區(qū)間,所述第二離散值的數(shù)值隨著所述第二連續(xù)區(qū)間的區(qū)間數(shù)值的增大而增大且具數(shù)值符號(hào)為相應(yīng)區(qū)間的符號(hào)。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海閃易半導(dǎo)體有限公司,未經(jīng)上海閃易半導(dǎo)體有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711446484.2/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 動(dòng)態(tài)存儲(chǔ)管理裝置及方法
- 一種存儲(chǔ)方法、服務(wù)器及存儲(chǔ)控制器
- 一種基于存儲(chǔ)系統(tǒng)的控制方法及裝置
- 一種信息的存儲(chǔ)控制方法
- 一種數(shù)據(jù)存儲(chǔ)方法及裝置
- 數(shù)據(jù)存儲(chǔ)方法、裝置、計(jì)算機(jī)設(shè)備以及存儲(chǔ)介質(zhì)
- 一種數(shù)據(jù)存儲(chǔ)控制方法及裝置
- 存儲(chǔ)設(shè)備、存儲(chǔ)系統(tǒng)及存儲(chǔ)方法
- 物料存儲(chǔ)方法及系統(tǒng)
- 基于雙芯智能電表的數(shù)據(jù)分類存儲(chǔ)方法和裝置
- 硬件神經(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)化方法及裝置





