快速遞歸Elman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法
【專利摘要】本發(fā)明屬于神經(jīng)網(wǎng)絡(luò)領(lǐng)域,具體為快速遞歸Elman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法,包括以下過程:步驟1模型選擇、步驟2參數(shù)初始化、步驟3計(jì)算訓(xùn)練樣本的誤差函數(shù)Ek,若誤差函數(shù)值小于誤差閾值,則轉(zhuǎn)步驟4;否則,計(jì)算誤差函數(shù)關(guān)于權(quán)值Wk和Vk的梯度:步驟4、測(cè)試精度。本發(fā)明提供的快速遞歸Elman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法,在優(yōu)化輸入權(quán)值矩陣時(shí)將隱層到輸出層的權(quán)值選取通過用廣義逆的方法一步得出,無需迭代,使得在更新權(quán)值過程中,從原始的用梯度法計(jì)算兩層的權(quán)值變?yōu)橐粚?,使?xùn)練速度得到大大提升,同時(shí)避免了BP算法容易陷入局部極小值、泛化能力差等缺點(diǎn)。
【專利說明】
快速遞歸EI man神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法
技術(shù)領(lǐng)域
[0001] 本發(fā)明屬于神經(jīng)網(wǎng)絡(luò)領(lǐng)域,具體為快速遞歸Elman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法。
【背景技術(shù)】
[0002] 在文獻(xiàn) "Pham,D · T ·,and X · Liu · 1992 · Dynami c sy stem mode I ing us ing partially recurrentneural networks.J.of Systems Engineering,2:90-97"中,Pham等 人提出了修正的Elman網(wǎng)絡(luò)(Modified Elman Networks),現(xiàn)在多把這種網(wǎng)絡(luò)作為標(biāo)準(zhǔn)的 Elman網(wǎng)絡(luò)。
[0003] Elman網(wǎng)絡(luò)除了輸入層、隱層、輸出層之外,還有一個(gè)特殊的承接層。該層單元是用 來記憶隱層單元以前時(shí)刻的輸出值,可認(rèn)為是一個(gè)時(shí)延算子。Elman神經(jīng)網(wǎng)絡(luò)具有η個(gè)輸入 節(jié)點(diǎn),#個(gè)隱層節(jié)點(diǎn)和m個(gè)輸出節(jié)點(diǎn)。輸入和遞歸權(quán)值矩陣分別為?和,合 并權(quán)值矩陣為表示隱層節(jié)點(diǎn)和輸出節(jié)點(diǎn)連接的權(quán)值向量。 對(duì)于訓(xùn)練樣本集N= {(Xl,I i = 1,…,N}輸入給網(wǎng)絡(luò),用H,( e/?''x'表示第k次循環(huán)的隱 層輸出矩陣,定義Η〇 = 0。假定g(x)為隱層節(jié)點(diǎn)的激活函數(shù),通常采用sigmoid函數(shù),即: g(.v)= L l + e 〇
(VkHk-i+WkXk)。網(wǎng)絡(luò)的輸出為% j,其中f (X)輸出節(jié)點(diǎn)的激活函數(shù),多取為線性函
[00041 Ul - 的 結(jié) Λ 旦仕A命[絡(luò) Λ v. ifcKltfein μ ?循環(huán)的隱層輸出矩 陣Hk- !層的輸出為Hk = g 數(shù),即網(wǎng)絡(luò)輸出為:X =IiH^
「nmy 由、V= d -TVv. _τ、τ將E對(duì)輸入層和承接層的權(quán)值矩陣L和E對(duì)隱 ?通過最速下降法對(duì)L和U進(jìn)行更新,公式為 聲習(xí)率Hk通過線搜索的方式獲得。通過這樣 迭代,獲得了優(yōu)化的網(wǎng)絡(luò)參數(shù)。
[0006] 這種算法采用誤差反向傳播方法,主要基于梯度下降的思想,由于用到了最速下 降法進(jìn)行迭代,因此所需要的訓(xùn)練時(shí)間相對(duì)長(zhǎng),且易陷入局部極小值,泛化能力有待提高。
【發(fā)明內(nèi)容】
[0007] 針對(duì)上述技術(shù)內(nèi)容,本發(fā)明提供一種快速算法,能夠大幅度提升網(wǎng)絡(luò)訓(xùn)練速度,避 免陷入局部極小值,提升泛化能力。
[0008] 具體技術(shù)方案為:
[0009] 快速遞歸E Iman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法,包括以下步驟:
[0010] 步驟1、模型選擇
[0011 ] 快速遞歸E Iman神經(jīng)網(wǎng)絡(luò)有η個(gè)輸入節(jié)點(diǎn)、#個(gè)隱層節(jié)點(diǎn)和m個(gè)輸出節(jié)點(diǎn);
[0012] 輸入和遞歸權(quán)值矩陣分別為,合并權(quán)值矩陣為
只隱層節(jié)點(diǎn)和輸出節(jié)點(diǎn)連接的權(quán)值向量;
[0013] 對(duì)于訓(xùn)練樣本集N= {(X1,扒)I i = 1,…,N}輸入給網(wǎng)絡(luò),用H一 表示第k次循 環(huán)的隱層輸出矩陣,定義Ho = O;
[0014] 假定g(X)為隱層節(jié)點(diǎn)的激活函數(shù),采用sigmoid函數(shù),即:= ?; I + e
[0015]步驟2、參數(shù)初始化
[0016] (1).設(shè)初始迭代次數(shù)k = 0;
[0017] (2).定義 Ho = O;
[0018] (3).隨機(jī)賦值從輸入層到隱層和承接層的初始權(quán)值矩陣W、V,選取(-1,1)之間的 隨機(jī)數(shù);
[0019] 步驟3、優(yōu)化初始權(quán)值
[0020] (1).計(jì)算隱層輸出矩陣Hk = g(VkHk-i+WkX);
[0021] (2).網(wǎng)絡(luò)的實(shí)際輸出為Yi = 1丨丨Hi,誤差函數(shù)為Ek = Tr [ (Yk-T) (Yk-T)τ],其中T為 理想輸出;
[0022]則求解從隱層到輸出層的網(wǎng)絡(luò)權(quán)值隊(duì)的問題轉(zhuǎn)化為最小化誤差函數(shù)的問題,即尋 找最小二乘解Uk使得Ek最?。?br>[0023] 利用Moore-penrose廣義逆可以得到:Uk= (HkHkT)-1HkTr,帶入Hk和T得到了隱層到 輸出層的權(quán)值矩陣Uk;
[0024] (3).計(jì)算訓(xùn)練樣本的誤差函數(shù)Ek,若誤差函數(shù)值小于誤差閾值,則轉(zhuǎn)步驟4;否則, 計(jì)算誤差函數(shù)關(guān)于權(quán)值Wk和Vk的梯度:
[0025;
[0026;
[0027;
[0028;
[0029]其中,學(xué)習(xí)率%通過線搜索的方式獲得;
[0030] (5).令1^ = 1^+1,返回步驟(2);
[0031]步驟4、測(cè)試精度
[0032]根據(jù)優(yōu)化后的隱層到輸入層的權(quán)值Wk和承接層權(quán)值矩陣Vk,以及根據(jù)步驟3中的步 驟(2)得到的隱層到輸出層的權(quán)值Uk,得到本算法的網(wǎng)絡(luò)參數(shù),計(jì)算測(cè)試樣本的精度。
[0033]本發(fā)明提供的快速遞歸E Iman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法,在優(yōu)化輸入權(quán)值矩陣時(shí)將 隱層到輸出層的權(quán)值選取通過用廣義逆的方法一步得出,無需迭代,使得在更新權(quán)值過程 中,從原始的用梯度法計(jì)算兩層的權(quán)值變?yōu)橐粚?,使?xùn)練速度得到大大提升,同時(shí)避免了BP 算法容易陷入局部極小值、泛化能力差等缺點(diǎn)。
【附圖說明】
[0034]圖1是本發(fā)明的快速遞歸Elman神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)圖;
[0035]圖2是本發(fā)明的流程圖。
【具體實(shí)施方式】
[0036]結(jié)合【附圖說明】本發(fā)明的【具體實(shí)施方式】。
[0037]本發(fā)明的一種新型快速遞歸Elman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法,在具體實(shí)施時(shí)包括如 下步驟:
[0038] 步驟 1、
[0039] 對(duì)于訓(xùn)練樣本集N = {(Xi,ti) I i = 1,…,N}輸入給網(wǎng)絡(luò),確定網(wǎng)絡(luò)的輸入節(jié)點(diǎn)個(gè)數(shù) η、輸出節(jié)點(diǎn)個(gè)數(shù)m,并設(shè)置網(wǎng)絡(luò)的隱層節(jié)點(diǎn)數(shù)為#個(gè)。
[0040] 步驟 2、
[0041 ]隨機(jī)賦值輸入和遞歸權(quán)值矩陣講€及&?和V e穴~氣選取(-1,1)之間的隨機(jī)數(shù); 合并權(quán)值矩陣為L(zhǎng) = 淀義循環(huán)的隱層輸出矩陣H〇 = 0。
[0042] 步驟 3、
[0043] i+笪隱)?命屮拓陳叫=g (VkHk-ι+WkX)。g (X)為隱層節(jié)點(diǎn)的激活函數(shù),采用s i gmo id 函數(shù),Bf
[0044] 步驟 4、
[0045] 計(jì)算網(wǎng)絡(luò)的實(shí)際輸出為\ =υ[Η4,以及誤差函數(shù)Ek = Tr[(Yk-T)(Yk-T)T],其中T 為理想輸出;并利用Moore-penrose廣義逆可以得到:Uk= (HkHkTr1HkTr,帶入Hk和T得到了隱 層到輸出層的權(quán)值矩陣Uk。
[0046] 步驟 5、
[0047]計(jì)算訓(xùn)練樣本的誤差函數(shù)Ek,若誤差函數(shù)值小于誤差閾值,則轉(zhuǎn)步驟7;否則,計(jì)算 誤差函數(shù)關(guān)干權(quán)倌WiJPVk的梯度:
[0048]
[0049]
[0050]
[0051]
[0052]
[0053] 令k = k+l,返回步驟3。
[0054] 步驟 7、
[0055] 根據(jù)優(yōu)化后的隱層到輸入層的權(quán)值Wk和承接層權(quán)值矩陣Vk,以及根據(jù)計(jì)算得到的 隱層到輸出層的權(quán)值U k,得到本算法的網(wǎng)絡(luò)參數(shù),計(jì)算測(cè)試樣本的精度。
[0056] 下面通過MNIST數(shù)據(jù)集對(duì)現(xiàn)有Elman、ELM(Extreme Learning Machine)和本發(fā)明 的算法進(jìn)行了實(shí)驗(yàn),并對(duì)它們的結(jié)果進(jìn)行比較。
[0057] MNIST數(shù)據(jù)集是Google實(shí)驗(yàn)室的Corinna Cortes和紐約大學(xué)柯朗研究所的Yann LeCun建有一個(gè)手寫數(shù)字?jǐn)?shù)據(jù)庫(kù),訓(xùn)練樣本有60,000張手寫0-9的數(shù)字圖像,測(cè)試樣本有10, 〇〇〇張。每張圖片灰度級(jí)都是8,且每張圖片可以使用一個(gè)784大小的向量表征。是較常用的 機(jī)器學(xué)習(xí)的數(shù)據(jù)集。本實(shí)驗(yàn)三種算法中激勵(lì)函數(shù)均使用sigmoid函數(shù),隱層節(jié)點(diǎn)數(shù)均選取 128 個(gè)。
[0058] Elman算法、ELM算法和本算法的實(shí)驗(yàn)結(jié)果如表1所示。
[0059]表 1
[〇〇611通過表1可以看出,對(duì)于數(shù)據(jù)量較大的麗1ST數(shù)據(jù)集實(shí)例中,本算法和Elman在迭代 相同次數(shù)時(shí),甚至Elman迭代次數(shù)是本算法兩倍時(shí),本算法所得到的訓(xùn)練精度和預(yù)測(cè)精度均 高于Elman。并且本算法的精度也高于同樣用到廣義逆思想求網(wǎng)絡(luò)參數(shù)的ELM。說明本算法 相比于其他兩種算法,提升了網(wǎng)絡(luò)的泛化能力,有效的提高了網(wǎng)絡(luò)的精度。
【主權(quán)項(xiàng)】
1.快速遞歸Elman神經(jīng)網(wǎng)絡(luò)建模學(xué)習(xí)算法,其特征在于:包括w下步驟: 步驟1、模型選擇 快速遞歸Elman神經(jīng)網(wǎng)絡(luò)有η個(gè)輸入節(jié)點(diǎn)、々個(gè)隱層節(jié)點(diǎn)和m個(gè)輸出節(jié)點(diǎn); 輸入和遞歸權(quán)值矩陣分別為W e 和V e巧*,合并權(quán)值矩陣為曼示隱層節(jié)點(diǎn)和輸出節(jié)點(diǎn)連接的權(quán)值向量; 對(duì)于訓(xùn)練樣本集N= {(XI,ti) I i = 1,…,N}輸入給網(wǎng)絡(luò),用G巧表示第k次循環(huán)的 隱層輸出矩陣,走義化二0; 假定g(x)為隱層節(jié)點(diǎn)的激活函數(shù),采用sigmoid函數(shù),即步驟2、參數(shù)初始化 (1) .設(shè)初始迭代次數(shù)k=0; (2) .定義 Ho = 0; (3) .隨機(jī)賦值從輸入層到隱層和承接層的初始權(quán)值矩陣W、V,選取(-1,1)之間的隨機(jī) 數(shù); 步驟3、優(yōu)化初始權(quán)值 (1) .計(jì)算隱層輸出矩陣Hk = g(Vk曲-i+WkX); (2) .網(wǎng)絡(luò)的實(shí)際輸出為乂 =巧H*,誤差函數(shù)為Ek = Tr[(Yk-TKYk-T)T],其中T為理想輸 出; 則求解從隱層到輸出層的網(wǎng)絡(luò)權(quán)值化的問題轉(zhuǎn)化為最小化誤差函數(shù)的問題,即尋找最 小二乘解化使得化最?。? 利用Moore-penrose廣義逆可W得到:化=巧姐)-1化jT,帶入化和T得到了隱層到輸出 層的權(quán)值矩陣化; (3) .計(jì)算訓(xùn)練樣本的誤差函數(shù)化,若誤差函數(shù)值小于誤差闊值,則轉(zhuǎn)步驟4;否則,計(jì)算 誤差函數(shù)關(guān)于權(quán)值Wk和Vk的梯度:其中H.'.二?-[τ(ΗΗ;τ)-ι是Η的廣義逆; (4) .權(quán)值更新公式為:其中,學(xué)習(xí)率化通過線捜索的方式獲得; 巧).令k = k+l,返回步驟(2); 步驟4、測(cè)試精度 根據(jù)優(yōu)化后的隱層到輸入層的權(quán)值Wk和承接層權(quán)值矩陣Vk,W及根據(jù)步驟3中的步驟 (2)得到的隱層到輸出層的權(quán)值化,得到本算法的網(wǎng)絡(luò)參數(shù),計(jì)算測(cè)試樣本的精度。
【文檔編號(hào)】G06N3/08GK105844332SQ201610137875
【公開日】2016年8月10日
【申請(qǐng)日】2016年3月10日
【發(fā)明人】王健, 龔曉玲, 葉振昀, 時(shí)賢, 溫艷青, 楊國(guó)玲, 張炳杰
【申請(qǐng)人】中國(guó)石油大學(xué)(華東)