[發(fā)明專利]一種神經(jīng)網(wǎng)絡(luò)模型的稀疏化后向傳播訓(xùn)練方法在審
| 申請(qǐng)?zhí)枺?/td> | 201710453252.3 | 申請(qǐng)日: | 2017-06-15 |
| 公開(公告)號(hào): | CN107273975A | 公開(公告)日: | 2017-10-20 |
| 發(fā)明(設(shè)計(jì))人: | 孫栩;任宣丞;馬樹銘 | 申請(qǐng)(專利權(quán))人: | 北京大學(xué) |
| 主分類號(hào): | G06N3/08 | 分類號(hào): | G06N3/08 |
| 代理公司: | 北京萬象新悅知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙)11360 | 代理人: | 黃鳳茹 |
| 地址: | 100871*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 神經(jīng)網(wǎng)絡(luò) 模型 稀疏 傳播 訓(xùn)練 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明屬于信息技術(shù)領(lǐng)域,涉及機(jī)器學(xué)習(xí)和深度學(xué)習(xí)技術(shù),尤其涉及一種基于K大值的稀疏化(Sparsify)神經(jīng)網(wǎng)絡(luò)模型后向傳播訓(xùn)練方法。
背景技術(shù)
神經(jīng)網(wǎng)絡(luò)模型的訓(xùn)練過程分為兩個(gè)步驟:前向傳播(Forward Propagation)和后向傳播(Backward Propagation)。前向傳播計(jì)算神經(jīng)網(wǎng)絡(luò)各層的輸出,后向傳播根據(jù)前向傳播輸出結(jié)果的梯度計(jì)算模型參數(shù)的梯度,最后神經(jīng)網(wǎng)絡(luò)模型利用這些梯度對(duì)參數(shù)進(jìn)行更新。
現(xiàn)有的后向傳播方法需要利用前向傳播的輸出結(jié)果的全部梯度信息來計(jì)算參數(shù)的梯度,這使得神經(jīng)網(wǎng)絡(luò)的訓(xùn)練耗時(shí)很長,計(jì)算量和耗電量大,而且會(huì)引入大量與實(shí)例相關(guān)度低的信息,從而使得訓(xùn)練好的神經(jīng)網(wǎng)絡(luò)模型的準(zhǔn)確度較低。
發(fā)明內(nèi)容
為了克服上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種基于K大值的稀疏化后向傳播的訓(xùn)練方法,通過減少更新與實(shí)例相關(guān)度低的信息來提高神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度和訓(xùn)練效果。
本發(fā)明提供的技術(shù)方案是:
一種神經(jīng)網(wǎng)絡(luò)模型的稀疏化后向傳播訓(xùn)練方法,在后向傳播過程中通過采用基于K大值的稀疏化方法,減少更新與實(shí)例相關(guān)度低的信息,提高深度神經(jīng)網(wǎng)絡(luò)的訓(xùn)練速度和訓(xùn)練效果,包括如下步驟:
1)前向傳播過程:
在前向傳播的過程中,神經(jīng)網(wǎng)絡(luò)的每一層接受上層的輸入x,通過給定的線性變換輸出y和非線性變換輸出z,并作為下一層的輸入,最后一層的輸出為整個(gè)網(wǎng)絡(luò)的輸出結(jié)果。前向傳播的網(wǎng)絡(luò)可以是前饋神經(jīng)網(wǎng)絡(luò)(MLP),循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)或長短時(shí)記憶網(wǎng)絡(luò)(LSTM)等采用后向傳播(圖3)進(jìn)行梯度計(jì)算的神經(jīng)網(wǎng)絡(luò)模型。
2)后向傳播過程:
神經(jīng)網(wǎng)絡(luò)模型每一層的后向傳播需要利用上一層的輸出梯度(1≤i≤n,n為向量維度)作為輸入計(jì)算梯度,本發(fā)明對(duì)輸出梯度進(jìn)行K大值稀疏化(Sparsify)的處理,即保留前向傳播輸出梯度的絕對(duì)值(absolute value,i.e.magnitude)最大的k個(gè)值(k的大小小于向量z的維度大小),剩余的值全部為0,例如則利用這個(gè)稀疏化處理后的向量進(jìn)行梯度計(jì)算得到參數(shù)梯度,由于經(jīng)過稀疏化處理,梯度計(jì)算時(shí)只需要計(jì)算與k個(gè)值有關(guān)的部分,剩余的部分不需要參與計(jì)算,可以降低后向傳播的計(jì)算量;
具體地,本發(fā)明通過式1對(duì)輸出梯度的絕對(duì)值做稀疏化處理:
其中,σi′是稀疏化處理后的向量;topk代表一個(gè)K大值稀疏化操作,即保留輸入向量的所有維度的絕對(duì)值中前k大的值(k的大小小于向量z的維度n),剩余的值全部為0,例如則利用這個(gè)稀疏化處理后的向量σi′進(jìn)行梯度計(jì)算得到參數(shù)梯度。
利用經(jīng)式1進(jìn)行稀疏化處理后的向量σi′計(jì)算參數(shù)矩陣W的梯度,計(jì)算公式為式2:
利用經(jīng)式1進(jìn)行稀疏化處理后的向量σi′計(jì)算輸入向量x的梯度,計(jì)算公式為式3:
其中,{t1,t2,…,tk}(1≤k≤n)代表的所有維度的絕對(duì)值中前k大的值的下標(biāo)。
當(dāng)神經(jīng)網(wǎng)絡(luò)有多層時(shí),本層的輸入向量x即為下層的輸出向量,因此輸入向量x的梯度可以作為下一層的輸出結(jié)果梯度傳遞下去。
采用本發(fā)明方法訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,由于每一層的梯度都經(jīng)過了topk稀疏化處理(式1),只保留了與訓(xùn)練實(shí)例最相關(guān)的信息,可以大幅度地降低計(jì)算量和計(jì)算時(shí)間,并提高模型的準(zhǔn)確度。
3)根據(jù)2)中后向傳播求得的稀疏化梯度,對(duì)神經(jīng)網(wǎng)絡(luò)的參數(shù)進(jìn)行更新:
本發(fā)明方法適用于所有采用了標(biāo)準(zhǔn)后向傳播(圖3)的訓(xùn)練算法,例如亞當(dāng)(Adam)訓(xùn)練算法、自適應(yīng)次梯度(Adagrad)訓(xùn)練算法、隨機(jī)梯度下降算法(SGD)等。由于稀疏化梯度只保留了與實(shí)例最相關(guān)的信息,因此可以提高模型訓(xùn)練的可靠性。
本發(fā)明方法適用于所有采用了標(biāo)準(zhǔn)后向傳播(圖3)的神經(jīng)網(wǎng)絡(luò)模型,例如前饋神經(jīng)網(wǎng)絡(luò)(MLP),循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN),長短時(shí)記憶網(wǎng)絡(luò)(LSTM)等。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是:
本發(fā)明通過基于K大值的稀疏化后向傳播的訓(xùn)練方法來降低訓(xùn)練時(shí)間和計(jì)算量,以及提高神經(jīng)網(wǎng)絡(luò)的準(zhǔn)確度。通過本發(fā)明提供的后向傳播方法,減少了神經(jīng)網(wǎng)絡(luò)的訓(xùn)練時(shí)間,尤其減少了神經(jīng)網(wǎng)絡(luò)模型的計(jì)算量和耗電量,稀疏化的過程沒有降低模型的準(zhǔn)確度,甚至由于只更新了與實(shí)例最相關(guān)的信息,神經(jīng)網(wǎng)絡(luò)模型的準(zhǔn)確度可以得到提高。
附圖說明
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京大學(xué),未經(jīng)北京大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710453252.3/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 硬件神經(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)化方法及裝置





