BP網(wǎng)絡(luò)以及深度學(xué)習(xí)_第1頁
BP網(wǎng)絡(luò)以及深度學(xué)習(xí)_第2頁
BP網(wǎng)絡(luò)以及深度學(xué)習(xí)_第3頁
BP網(wǎng)絡(luò)以及深度學(xué)習(xí)_第4頁
BP網(wǎng)絡(luò)以及深度學(xué)習(xí)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、神經(jīng)網(wǎng)絡(luò)1 BP網(wǎng)圖:三層BP網(wǎng)信號正向傳播和誤差反向傳播 k=1,2l 有l(wèi)個輸出(l常常為1)。中間隱層有m層: i=1,2,m n個輸入。j=1,2m其中Sigmoid函數(shù): (單極性) 1.1 計算流程推導(dǎo)誤差公式計算結(jié)果E=0,p=1,其中p+=1,q+=1訓(xùn)練次數(shù)計數(shù)器樣本模式計數(shù)器p<M訓(xùn)練樣本數(shù)E<Emin不同樣本誤差:E=(T-Ok)'*(T-Ok)/2; 一般使用1.2 影響參數(shù):1.2.1 隱層節(jié)點數(shù) nn= +a,其中 m 為輸出神經(jīng)元數(shù), n 為輸入神經(jīng)元數(shù),a 為1,10之間的常數(shù)。 nn=nn=2n+1;nn=1.2.2 學(xué)習(xí)率學(xué)習(xí)率,太大會影

2、響訓(xùn)練穩(wěn)定性,太小使訓(xùn)練收斂速度慢。一般在0.01-0.8之間。我取0.2Emin一般在0.1-之間。1.3 樣本/輸入1.3.1 訓(xùn)練樣本訓(xùn)練樣本數(shù):M,為權(quán)值閾值總數(shù),一般為連接權(quán)總數(shù)的510倍。訓(xùn)練數(shù)據(jù)必須作平衡處理,不同類別的樣本需要交叉輸入,輪流輸入-時間延長。1.3.2 輸入形式字符:形狀格填充、邊緣距離曲線:采樣 變化大可以密集采樣輸出:不同的輸出用不同的碼表示1.3.3 歸一化:樣本分布比較均勻0,1區(qū)間:-1,1區(qū)間: 其中不均勻:對數(shù) 平方根coef,score,latent,t2 = princomp(x);(個人觀點):x:為要輸入的n維原始數(shù)據(jù)。帶入這個matlab自

3、帶函數(shù),將會生成新的n維加工后的數(shù)據(jù)(即score)。此數(shù)據(jù)與之前的n維原始數(shù)據(jù)一一對應(yīng)。score:生成的n維加工后的數(shù)據(jù)存在score里。它是對原始數(shù)據(jù)進(jìn)行的分析,進(jìn)而在新的坐標(biāo)系下獲得的數(shù)據(jù)。他將這n維數(shù)據(jù)按貢獻(xiàn)率由大到小排列。(即在改變坐標(biāo)系的情況下,又對n維數(shù)據(jù)排序)latent:是一維列向量,每一個數(shù)據(jù)是對應(yīng)score里相應(yīng)維的貢獻(xiàn)率,因為數(shù)據(jù)有n維所以列向量有n個數(shù)據(jù)。由大到小排列(因為score也是按貢獻(xiàn)率由大到小排列)。coef:是系數(shù)矩陣。通過cofe可以知道x是怎樣轉(zhuǎn)換成score的。1.4 權(quán)值/閾值1.4.1 初始權(quán)值初始權(quán)值足夠小,初始值為1和-1的權(quán)值數(shù)相等。1.

4、4.2 權(quán)值學(xué)習(xí)算法P99traingd:標(biāo)準(zhǔn)梯度下降算法traingdm:附加動量項traingda:自適應(yīng)學(xué)習(xí)速率,效果比上者好。traingdx: 附加動量項、自適應(yīng)學(xué)習(xí)速率更好的算法如下:trainlm:trainscg:權(quán)值學(xué)習(xí)算法算法描述traingd標(biāo)準(zhǔn)BPtraingda可變學(xué)習(xí)率BPtraingdm附加動量的BPtraingdx附加動量、可變學(xué)習(xí)率BPtraincgfFletcher-Powell共軛梯度法traincgpPolak-Ribiere共軛梯度法traincgbPowell-Beale共軛梯度法trainscgScaled共軛梯度法trainbfgBFGS擬牛頓法

5、trainoss正割擬牛頓法trainlmLevenberg-Marquardt法trainrp彈性BP1.5 優(yōu)化1 提高訓(xùn)練速度:附加動量法:其中 見P852 改為,一般=1較大時,進(jìn)入平坦區(qū),令>1常用的改進(jìn)方法有附加沖量項、自適應(yīng)學(xué)習(xí)參數(shù)、模擬退火法等,1.6 技巧若show設(shè)為NaN ,則不顯示訓(xùn)練過程一篇論文中案例:初始權(quán)值不可過大過小。網(wǎng)絡(luò)1的初始權(quán)值和偏差定為-0.25-0.25的隨機(jī)數(shù),網(wǎng)絡(luò)2的定為-0.5-0.5的隨機(jī)數(shù)。目標(biāo)誤差:0.05 兩個連續(xù)迭代過程平均相差小于,樣本數(shù):2001.7 常用函數(shù)歸納1.7.1 train之前net.trainParam.show

6、=10; %show interval 25%net.trainParam.showWindow=flase;net.trainParam.epochs=5000;%train times.default:10net.trainParam.goal=0.0001;%0net.trainParam.lr=0.2;%0.15net.trainParam.max_fail=5;% max times of affirm failurenet.trainParam.min_grad=1e-10;%min gradientnet.trainParam.time=inf;%max train timene

7、t.trainParam.mc=0.95; %momentum factor when use traingdm,default:0.91.7.2%net.iw1,1=iw;net.lw2,1=lw;net.b1=theta1;net.b2=theta2;%net.layers1.initFcn ='initlay'Plotpv(p,t,v)Plotpc(net.iw1,1,net.b1)初始化網(wǎng)絡(luò):Net.inputWeights1,1.initFcn=rands; %initialize weightNet.biases1.initFcn=rands; %initializ

8、e deviationnet=init(net)誤差平方和:sumsqrNewff newcf1.8 評價標(biāo)準(zhǔn)實際為正類實際為負(fù)類預(yù)測為正類TPFP預(yù)測為負(fù)類FNTN查準(zhǔn)率/精度:precision=TP/(TP+FP) 真正類率(TPR)/查全率/真陽性率/靈敏度/召回率/敏感性(sensitivity):recall=TP/(TP+FN) 正確率:accuracy=(TP+TN)/ALL特異性(specificity)/真陰性率/1-假陽性率:TN/(FP+TN)2 前饋神經(jīng)網(wǎng)絡(luò)無隱層:線性單隱層:凸域雙隱層:任意復(fù)雜形狀區(qū)域,所以一般使用單隱層,較少情況下可以使用雙隱層。解決已知的線性問

9、題,使用感知器或者自適應(yīng)網(wǎng)絡(luò)更好,非線性使用BP。2.1 單層感知器方程組求解的形式,只能做 線性劃分 Newp檢驗:hardlim(W+P,B)2.2 Adaline自適應(yīng)線性元件神經(jīng)元有一個激活函數(shù), 因此輸出可以是任意值??梢宰鼍€性逼近。采用LMS(最小均方差規(guī)則,又稱W-H學(xué)習(xí)規(guī)則):不用求導(dǎo)newlinnewlind帶有延時的自適應(yīng)線性網(wǎng)絡(luò)3 深度神經(jīng)網(wǎng)絡(luò)在語音識別和圖像識別等領(lǐng)域獲得了巨大的成功4 遞歸神經(jīng)網(wǎng)絡(luò)反饋神經(jīng)網(wǎng)絡(luò)4.1 全局反饋遞歸神經(jīng)網(wǎng)絡(luò)4.1.1 ARX和NARX網(wǎng)絡(luò)4.1.2 Hopfield網(wǎng)絡(luò)4.1.3 約旦網(wǎng)絡(luò)4.2 前向遞歸神經(jīng)網(wǎng)絡(luò)4.2.1 局部連接4.2

10、.2 全連接型Elman記憶遞歸神經(jīng)網(wǎng)絡(luò)4.3 混合型網(wǎng)絡(luò)5 RBF網(wǎng)絡(luò)徑向基函數(shù)解決插值問題完全內(nèi)插法要求插值函數(shù)經(jīng)過每個樣本點,即。樣本點總共有P個。RBF的方法是要選擇P個基函數(shù),每個基函數(shù)對應(yīng)一個訓(xùn)練數(shù)據(jù),各基函數(shù)形式為,由于距離是徑向同性的,因此稱為徑向基函數(shù)。|X-Xp|表示差向量的模,或者叫2范數(shù)?;跒閺较蚧瘮?shù)的插值函數(shù)為:輸入X是個m維的向量,樣本容量為P,P>m。可以看到輸入數(shù)據(jù)點Xp是徑向基函數(shù)p的中心。隱藏層的作用是把向量從低維m映射到高維P,低維線性不可分的情況到高維就線性可分了。將插值條件代入:寫成向量的形式為,顯然是個規(guī)模這P對稱矩陣,且與X的維度無關(guān),當(dāng)

11、可逆時,有。對于一大類函數(shù),當(dāng)輸入的X各不相同時,就是可逆的。下面的幾個函數(shù)就屬于這“一大類”函數(shù):1)Gauss(高斯)函數(shù)2)Reflected Sigmoidal(反常S型)函數(shù)3)Inverse multiquadrics(擬多二次)函數(shù)稱為徑向基函數(shù)的擴(kuò)展常數(shù),它反應(yīng)了函數(shù)圖像的寬度,越小,寬度越窄,函數(shù)越具有選擇性。完全內(nèi)插存在一些問題:1)插值曲面必須經(jīng)過所有樣本點,當(dāng)樣本中包含噪聲時,神經(jīng)網(wǎng)絡(luò)將擬合出一個錯誤的曲面,從而使泛化能力下降。由于輸入樣本中包含噪聲,所以我們可以設(shè)計隱藏層大小為K,K<P,從樣本中選取K個(假設(shè)不包含噪聲)作為函數(shù)的中心。2)基函數(shù)個數(shù)等于訓(xùn)練樣

12、本數(shù)目,當(dāng)訓(xùn)練樣本數(shù)遠(yuǎn)遠(yuǎn)大于物理過程中固有的自由度時,問題就稱為超定的,插值矩陣求逆時可能導(dǎo)致不穩(wěn)定。擬合函數(shù)F的重建問題滿足以下3個條件時,稱問題為適定的:1. 解的存在性2. 解的唯一性3. 解的連續(xù)性不適定問題大量存在,為解決這個問題,就引入了正則化理論。正則化理論正則化的基本思想是通過加入一個含有解的先驗知識的約束來控制映射函數(shù)的光滑性,這樣相似的輸入就對應(yīng)著相似的輸出。尋找逼近函數(shù)F(x)通過最小化下面的目標(biāo)函數(shù)來實現(xiàn):加式的第一項好理解,這是均方誤差,尋找最優(yōu)的逼近函數(shù),自然要使均方誤差最小。第二項是用來控制逼近函數(shù)光滑程度的,稱為正則化項,是正則化參數(shù),D是一個線性微分算子,代表

13、了對F(x)的先驗知識。曲率過大(光滑度過低)的F(x)通常具有較大的|DF|值,因此將受到較大的懲罰。直接給出(1)式的解:權(quán)向量*(2)G(X,Xp)稱為Green函數(shù),G稱為Green矩陣。Green函數(shù)與算子D的形式有關(guān),當(dāng)D具有旋轉(zhuǎn)不變性和平移不變性時,。這類Green函數(shù)的一個重要例子是多元Gauss函數(shù):。代碼%/ This is a RBF network trained by BP algorithm %/ Author : zouxy %/ Date : 2013-10-28 %/ HomePage : %/ Email : zouxy09 close all; clear

14、; clc; % *% * step 0: load data *display('step 0: load data.');% train_x = 1 2 3 4 5 6 7 8; % each sample arranged as a column of train_x% train_y = 2 * train_x;train_x = rand(5, 10);train_y = 2 * train_x;test_x = train_x;test_y = train_y; % from matlab% rbf = newrb(train_x, train_y);% outpu

15、t = rbf(test_x); % *% * step 1: initialize parameters * display('step 1: initialize parameters.');numSamples = size(train_x, 2);rbf.inputSize = size(train_x, 1);rbf.hiddenSize = numSamples; % num of Radial Basis functionrbf.outputSize = size(train_y, 1);rbf.alpha = 0.1; % learning rate (shou

16、ld not be large!) % centre of RBFfor i = 1 : rbf.hiddenSize % randomly pick up some samples to initialize centres of RBF index = randi(1, numSamples); rbf.center(:, i) = train_x(:, index);end % delta of RBFrbf.delta = rand(1, rbf.hiddenSize); % weight of RBFr = 1.0; % random number between -r, rrbf.

17、weight = rand(rbf.outputSize, rbf.hiddenSize) * 2 * r - r; % *% * step 2: start training *display('step 2: start training.');maxIter = 400;preCost = 0;for i = 1 : maxIter fprintf(1, 'Iteration %d ,', i); rbf = trainRBF(rbf, train_x, train_y); fprintf(1, 'the cost is %d n', rb

18、f.cost); curCost = rbf.cost; if abs(curCost - preCost) < 1e-8 disp('Reached iteration termination condition and Termination now!'); break; end preCost = curCost;end % *% * step 3: start testing * display('step 3: start testing.');Green = zeros(rbf.hiddenSize, 1);for i = 1 : size(t

19、est_x, 2) for j = 1 : rbf.hiddenSize Green(j, 1) = green(test_x(:, i), rbf.center(:, j), rbf.delta(j); end output(:, i) = rbf.weight * Green;enddisp(test_y);disp(output);function rbf = trainRBF(rbf, train_x, train_y) % step 1: calculate gradient numSamples = size(train_x, 2); Green = zeros(rbf.hidde

20、nSize, 1); output = zeros(rbf.outputSize, 1); delta_weight = zeros(rbf.outputSize, rbf.hiddenSize); delta_center = zeros(rbf.inputSize, rbf.hiddenSize); delta_delta = zeros(1, rbf.hiddenSize); rbf.cost = 0; for i = 1 : numSamples % Feed forward for j = 1 : rbf.hiddenSize Green(j, 1) = green(train_x(:, i), rbf.center(:, j), rbf.delta(j); end output = rbf.weight * Green; % Back propagation delta3 = -(train_y(:, i) - output); rbf.cost = rbf.cost + sum(delta3.2); delta_weight = delta_weight + delta3 * Green' delta2 = rbf.weight' * delta3 .* Green; for j = 1 : rbf.hidd

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論