




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、多量綱的歸一化1.我有一個問題不太明白,神經(jīng)網(wǎng)絡(luò)在訓練時,先對數(shù)據(jù)進行歸一化處理,按照常理訓練完之后應(yīng)該對數(shù)據(jù)再進行反歸一化啊,可是再很多資料上根本就看不出有反歸一化這個步驟,而且很多時候訓練效果不是很好。請問,哪個大俠能幫幫我啊2.看一下MATLAB里的premnmx函數(shù)和postmnmx函數(shù).它們一個是歸一一個是反歸一3.并不是歸一化的數(shù)據(jù)訓練效果就好4.我也遇到過類似的問題,有篇論文就是用postmnmx函數(shù).效果不好可能是樣本數(shù)據(jù)不太準.5.可以采用標準化PRESTD,效果很好。6.樣本數(shù)據(jù)和測試數(shù)據(jù)是否放在一起歸一化?7.應(yīng)該將樣本數(shù)據(jù)和測試數(shù)據(jù)放在一起歸一化,不然如果測試數(shù)據(jù)中有的
2、值比樣本數(shù)據(jù)最大值還大,豈不是超過1了? 神經(jīng)網(wǎng)絡(luò)訓練的時候,應(yīng)該考慮極值情況,即歸一化的時候要考慮你所需要識別參數(shù)的極值,以極值作分母,這樣可能效果更好一點。8.激發(fā)函數(shù)如果選用的是倒s型函數(shù),應(yīng)不存在歸一化的問題吧9.我想問大家一下:在神經(jīng)網(wǎng)絡(luò)中,只有一個函數(shù)即:purelin這個函數(shù)對訓練的輸出數(shù)據(jù)不用歸一化,而象logsig 和tansig函數(shù)都要歸一化(如果數(shù)據(jù)范圍不在-1,1或0,1之間).那既然用purelin函數(shù)可以不用歸一化,為何又是還用歸一化呢?用神經(jīng)網(wǎng)絡(luò)里的PRESTD, PREPCA, POSTMNMX, TRAMNMX等函數(shù)歸一化和直接用pur
3、elin這個函數(shù)有什么區(qū)別啊? 我作負荷預測時,象不用歸一化的效果很好呀!10.purelin沒有作歸一化啊,你用logsig 和tansig作為神經(jīng)元激勵函數(shù),輸出范圍自然限制在-1,1或0,1之間了11.我所知道的關(guān)于歸一化:歸一化化定義:我是這樣認為的,歸一化化就是要把你需要處理的數(shù)據(jù)經(jīng)過處理后(通過某種算法)限制在你需要的一定范圍內(nèi)。首先歸一化是為了后面數(shù)據(jù)處理的方便,其次是保正程序運行時收斂加快。在matlab里面,用于歸一化的方法共有三中,(1)premnmx、postmnmx、tramnmx(2)prestd、poststd、trastd(3)是用matlab語言自己編程。pre
4、mnmx指的是歸一到1 1,prestd歸一到單位方差和零均值。(3)關(guān)于自己編程一般是歸一到0.1 0.9 。具體用法見下面實例。為什么要用歸一化?為什么要用歸一化呢?首先先說一個概念,叫做奇異樣本數(shù)據(jù),所謂奇異樣本數(shù)據(jù)數(shù)據(jù)指的是相對于其他輸入樣本特別大或特別小的樣本矢量。下面舉例:m=0.11 0.15 0.32 0.45 30;0.13 0.24 0.27 0.25 45;其中的第五列數(shù)據(jù)相對于其他4列數(shù)據(jù)就可以成為奇異樣本數(shù)據(jù)(下面所說的網(wǎng)絡(luò)均值bp)。奇異樣本數(shù)據(jù)存在所引起的網(wǎng)絡(luò)訓練時間增加,并可能引起網(wǎng)絡(luò)無法收斂,所以對于訓練樣本存在奇異樣本數(shù)據(jù)的數(shù)據(jù)集在訓練之前,最好先進形歸一化
5、,若不存在奇異樣本數(shù)據(jù),則不需要事先歸一化。具體舉例:close allclearecho onclc%BP建模%原始數(shù)據(jù)歸一化m_data=1047.92 1047.83 0.39 0.39 1.0 3500 5075;1047.83 1047.68 0.39 0.40 1.0 3452 4912;1047.68 1047.52 0.40 0.41 1.0 3404 4749;1047.52 1047.27 0.41 0.42 1.0 3356 4586;1047.27 1047.41 0.42 0.43 1.0 3308 4423;1046.73 1046.74 1.70 1.80 0.7
6、5 2733 2465;1046.74 1046.82 1.80 1.78 0.75 2419 2185;1046.82 1046.73 1.78 1.75 0.75 2105 1905;1046.73 1046.48 1.75 1.85 0.70 1791 1625;1046.48 1046.03 1.85 1.82 0.70 1477 1345;1046.03 1045.33 1.82 1.68 0.70 1163 1065;1045.33 1044.95 1.68 1.71 0.70 849 785;1044.95 1045.21 1.71 1.72 0.70 533 508;1045.
7、21 1045.64 1.72 1.70 0.70 567 526;1045.64 1045.44 1.70 1.69 0.70 601 544;1045.44 1045.78 1.69 1.69 0.70 635 562;1045.78 1046.20 1.69 1.52 0.75 667 580;%定義網(wǎng)絡(luò)輸入p和期望輸出tpauseclcp1=m_data(:,1:5);t1=m_data(:,6:7);p=p1't=t1'pn,minp,maxp,tn,mint,maxt=premnmx(p,t)%設(shè)置網(wǎng)絡(luò)隱單元的神經(jīng)元數(shù)(530驗證后5個最好)n=5;%建立相應(yīng)的BP
8、網(wǎng)絡(luò)pauseclcnet=newff(minmax(pn),n,2,'tansig','purelin','traingdm');inputWeights=net.IW1,1;inputbias=net.b1;layerWeights=net.IW1,1;layerbias=net.b2;pauseclc% 訓練網(wǎng)絡(luò)net.trainParam.show=50;net.trainParam.lr=0.05;net.trainParam.mc=0.9;net.trainParam.epochs=200000;net.trainParam.goal
9、=1e-3;pauseclc%調(diào)用TRAINGDM算法訓練BP網(wǎng)絡(luò)net=train(net,pn,tn);%對BP網(wǎng)絡(luò)進行仿真A=sim(net,pn);E=A-tn;M=sse(E)N=mse(E)pauseclcp2=1046.20 1046.05 1.52 1.538 0.75;1046.05 1046.85 1.538 1.510 0.75;1046.85 1046.60 1.510 1.408 0.75;1046.60 1046.77 1.408 1.403 0.75;1046.77 1047.18 1.403 1.319 0.75;p2=p2'p2n=tramnmx(p2
10、,minp,maxp);a2n=sim(net,p2n);a2=postmnmx(a2n,mint,maxt)echo offpauseclc程序說明:所用樣本數(shù)據(jù)(見m_data)包括輸入和輸出數(shù)據(jù),都先進行歸一化,還有一個問題就是你要進行預測的樣本數(shù)據(jù)(見本例p2)在進行仿真前,必須要用tramnmx函數(shù)進行事先歸一化處理,然后才能用于預測,最后的仿真結(jié)果要用postmnmx進行反歸一,這時的輸出數(shù)據(jù)才是您所需要的預測結(jié)果。個人認為:tansig、purelin、logsig是網(wǎng)絡(luò)結(jié)構(gòu)的傳遞函數(shù),本身和歸一化沒什么直接關(guān)系,歸一化只是一種數(shù)據(jù)預處理方法。12."tansig、pu
11、relin、logsig是網(wǎng)絡(luò)結(jié)構(gòu)的傳遞函數(shù),本身和歸一化沒什么直接關(guān)系,歸一化只是一種數(shù)據(jù)預處理方法",說的有問題,若用premnmx將輸入輸出歸一化,其輸出值在-1,1之間,若輸出層傳函為logsig 則無論怎么訓練,輸出值都不可能在-1,1之間.13.我感覺如果激發(fā)函數(shù)是S型函數(shù),應(yīng)該不用規(guī)一化處理,但是效果不如規(guī)一化處理的好,不知道為什么?14.我認為有可能是數(shù)據(jù)太大或太多,將其歸一化之后,有利于快速的調(diào)整神經(jīng)網(wǎng)絡(luò)的網(wǎng)絡(luò)結(jié)構(gòu),或者如同terry2008所說存在奇異值也肯定有影響。當然,效果好就選誰!15.如果輸入數(shù)據(jù)中含有頻率、幅值、相位以及其他一些不同類型的數(shù)據(jù),需要對他們
12、進行什么處理,才能用于網(wǎng)絡(luò)的訓練?只是簡單的歸一化就行嗎?16.如果數(shù)據(jù)的維數(shù)太多,可以考慮用prepca進行主元分析,不知道silvercx所說的簡單的歸一化是什么意思?我現(xiàn)在還不知道其他預處理方法?什么事都得試一下,試過了就知道,你可可以拿出具體問題一起討論!17.我認為討論之前要搞清一個數(shù)學問題,就是每種激勵函數(shù)的定義域和值域,我們都知道tansig的定義域是任意實數(shù),值域為(1,1)、purelin定義域和值域都是任意實數(shù)、logsig定義域任意實數(shù),值域是(0 ,1)。所以在具體實際中使用用事先考慮好這個問題,logsig的值域是(0,1),當然不可能使輸出在(1,1)了。我所說的:
13、"tansig、purelin、logsig是網(wǎng)絡(luò)結(jié)構(gòu)的傳遞函數(shù),本身和歸一化沒什么直接關(guān)系,歸一化只是一種數(shù)據(jù)預處理方法",我并沒說沒有間接關(guān)系。18.如果輸入樣本的數(shù)據(jù)組成為In=頻率; 幅值; 相位我只用premnmx對In進行歸一化,訓練BP網(wǎng)絡(luò),得到一個目標輸出Out,其數(shù)據(jù)組成也為Out=頻率; 幅值; 相位。這樣子可以嗎?總覺得把不同類型的數(shù)據(jù)放一起有點不妥。19.完全可以,不過在輸入數(shù)據(jù)和輸出數(shù)據(jù)啊安排上可能要以時間序列的方式來安排。例如,用第1,2,3,4時刻的數(shù)據(jù)預測第5時刻的數(shù)據(jù),用第2,3,4,5時刻的數(shù)據(jù)預測第6時刻的數(shù)據(jù),依次類推,可以組成一定的
14、輸入輸出對,以上只是舉個例子,只是說明這種數(shù)據(jù)組織方法,silvercx 在實際中可以根據(jù)自己的要解決的問題,自己確定,我只是提供一個參考方法。有問題再討論!20.目前在我的項目中,我是這樣子來訓練BP網(wǎng)絡(luò)的。在變頻器輸出頻率為4550Hz之間,采集電機的轉(zhuǎn)矩(T)、轉(zhuǎn)速(n)和另外一個目標量(RL)。然后我對這些數(shù)據(jù)進行FFT變換,得到他們前幾次諧波的幅值和相位。歸一化。然后我利用兩個網(wǎng)絡(luò)分別訓練幅值和相位。(下面Am表示幅值,Ph表示相位,即AmT45,表示在45Hz時電機的轉(zhuǎn)矩前幾次諧波幅值)網(wǎng)絡(luò)1:in=AmT45 AmT46 AmT47 AmT48 AmT49 AmT50;Amn45
15、 Amn46 Amn47 Amn48 Amn49 Amn50;out=AmRL45 AmRL46 AmRL47 AmRL48 AmRL49 AmRL50;網(wǎng)絡(luò)2:in=PhT45 PhT46 PhT47 PhT48 PhT49 PhT50;Phn45 Phn46 Phn47 Phn48 Phn49 Phn50;out=PhRL45 PhRL46 PhRL47 PhRL48 PhRL49 PhRL50;然后利用所訓練的網(wǎng)絡(luò)去測試其他頻率下的數(shù)據(jù)RL。這樣進行網(wǎng)絡(luò)的訓練行不行,還是把幅值和相位放在一個網(wǎng)絡(luò)內(nèi)訓練的效果好?21.在神經(jīng)網(wǎng)絡(luò)BP網(wǎng)的預測中,對數(shù)據(jù)進行歸一化處理,完了輸出再反歸一化。如果
16、是單入單出系統(tǒng)好辦,如果是多入單出系統(tǒng),那么反歸一化時,最大值和最小值怎么確定呢?22.你可以自己指定,或者使用在訓練網(wǎng)絡(luò)時候確定的最大值和最小值23.請問minmax(p),p是輸入樣本,它的功能是做歸一化嗎,在MATLAB里面.謝謝!24.我認為,如果各維的數(shù)據(jù)不進行歸一化處理,那么各維對誤差函數(shù)的影響差異會很大。從而會影響學習性能。不知道對不對?25.那樣本數(shù)據(jù)測試數(shù)據(jù)預測數(shù)據(jù)期望數(shù)據(jù)要一起進行歸一化嗎?26.我所知道的關(guān)于歸一化:歸一化化定義:我是這樣認為的,歸一化化就是要把你需要處理的數(shù)據(jù)經(jīng)過處理后(通過某種算法)限制在你需要的一定范圍內(nèi)。首先歸一化是為了后面數(shù)據(jù)處理的方便,其次是保
17、正程序運行時收斂加快。在matlab里面,用于歸一化的方法共有三中,(1)premnmx、postmnmx、tramnmx(2)prestd、poststd、trastd(3)是用matlab語言自己編程。premnmx指的是歸一到1 1,prestd歸一到單位方差和零均值。(3)關(guān)于自己編程一般是歸一到0.1 0.9 。具體用法見下面實例。為什么要用歸一化?為什么要用歸一化呢?首先先說一個概念,叫做奇異樣本數(shù)據(jù),所謂奇異樣本數(shù)據(jù)數(shù)據(jù)指的是相對于其他輸入樣本特別大或特別小的樣本矢量。下面舉例:m=0.11 0.15 0.32 0.45 30;0.13 0.24 0.27 0.25 45;其中的
18、第五列數(shù)據(jù)相對于其他4列數(shù)據(jù)就可以成為奇異樣本數(shù)據(jù)(下面所說的網(wǎng)絡(luò)均值bp)。奇異樣本數(shù)據(jù)存在所引起的網(wǎng)絡(luò)訓練時間增加,并可能引起網(wǎng)絡(luò)無法收斂,所以對于訓練樣本存在奇異樣本數(shù)據(jù)的數(shù)據(jù)集在訓練之前,最好先進形歸一化,若不存在奇異樣本數(shù)據(jù),則不需要事先歸一化。具體舉例:程序說明:所用樣本數(shù)據(jù)(見m_data)包括輸入和輸出數(shù)據(jù),都先進行歸一化,還有一個問題就是你要進行預測的樣本數(shù)據(jù)(見本例p2)在進行仿真前,必須要用tramnmx函數(shù)進行事先歸一化處理,然后才能用于預測,最后的仿真結(jié)果要用postmnmx進行反歸一,這時的輸出數(shù)據(jù)才是您所需要的預測結(jié)果。個人認為:tansig、purelin、lo
19、gsig是網(wǎng)絡(luò)結(jié)構(gòu)的傳遞函數(shù),本身和歸一化沒什么直接關(guān)系,歸一化只是一種數(shù)據(jù)預處理方法。你好,我用了你的歸一化方法,但當p2數(shù)據(jù)取比這些數(shù)大很多的值時,好像就不行了,出現(xiàn)了這樣的問題,是不是數(shù)值超出了最大值的原因?我用的是GRNN網(wǎng)絡(luò)Warning: Divide by zero.> In normprod at 73In calca at 119In network.sim at 204In xgi at 60a2=postmnmx(a2n,mint,maxt)a2 =Columns 1 through 91602 1602 NaN NaN NaN NaN NaN NaN NaNCol
20、umn 10NaN29.而且預測值受樣本期望輸出的最大值限制,30.這個問題我提出來很多天了,為什么沒有人表示意見呢,是這個問題本身就是神經(jīng)網(wǎng)絡(luò)的BUG,還是,我走的路偏了,對神經(jīng)網(wǎng)絡(luò)本質(zhì)誤解所致,大家多多指教阿,我在這等很久了呀!非常不好意思,請教一問題:31.利用歸一化后的數(shù)據(jù)建了BP網(wǎng)絡(luò),但最后預測值在反歸一化前卻超出了-1,+1,不知問題出在哪?32.小波神經(jīng)網(wǎng)絡(luò)對于時間序列預測在文獻上報道得神乎其神,據(jù)稱預測精度相對偏差平均達5%以下。鄙人嘗試后認為,小波神經(jīng)網(wǎng)絡(luò)只是加快了收斂速度,而預測精度決定于問題本身,很多數(shù)據(jù)預測結(jié)果并不能達到以上效果。歡迎各位仁兄討論改進方法。33.有個問題
21、:歸一化的時候我認為應(yīng)該考慮數(shù)據(jù)的物理含義34.為什么我的簡單的歸一化程序總是錯的?謝各位大蝦指點p=1520 510 5.155 33.88;1468 521 5.321 35.79;.共5行't=0.7 1.9;0.6 1.798;.共10行'for i=1:4P(i,: )=(p(i,: )-min(p(i,: )/(max(p(i,: )-min(p(i,: );就是這行總說有錯,到底是程序錯還是軟件不好?end此程序出自<神經(jīng)網(wǎng)絡(luò)理論與MATLAB7實現(xiàn)>,第269頁,類似的歸一化在我機子里都說不對,急死了,等畢業(yè)呢.35.不要用這個歸一化啊,換函數(shù)pre
22、mnmx試試36.為什么要歸一化?神經(jīng)網(wǎng)絡(luò)輸入的一維代表一個特征,當神經(jīng)網(wǎng)絡(luò)的輸入是多維時,要識別的模式有多個特征,當這多個特征的數(shù)據(jù)相差很大,如幾個數(shù)量級時,就需要歸一化,變成相同數(shù)量級,以防某些數(shù)值低的特征被淹沒。數(shù)據(jù)標準化/歸一化方法歸一化方法(Normalization Method)1。 把數(shù)變?yōu)椋?,1)之間的小數(shù) 主要是為了數(shù)據(jù)處理方便提出來的,把數(shù)據(jù)映射到01范圍之內(nèi)處理,更加便捷快速,應(yīng)該歸到數(shù)字信號處理范疇之內(nèi)。2 。把有量綱表達式變?yōu)闊o量綱表達式
23、0; 歸一化是一種簡化計算的方式,即將有量綱的表達式,經(jīng)過變換,化為無量綱的表達式,成為純量。 比如,復數(shù)阻抗可以歸一化書寫:Z = R + jL = R(1 + jL/R) ,復數(shù)部分變成了純數(shù)量了,沒有量綱。 另外,微波之中也就是電路分析、信號系統(tǒng)、電磁波傳輸?shù)?,有很多運算都可以如此處理,既保證了運算的便捷,又能凸現(xiàn)出物理量的本質(zhì)含義。/C+實現(xiàn)的歸一化和反歸一化處理函數(shù)/void _fastcall TModelManage:TranslateData(TModel* pModel,int Id,double *Value,int Flag)/轉(zhuǎn)換函數(shù)
24、類型int iChgFunc;/節(jié)點對應(yīng)的最大、最小值double dMaxValue,dMinValue;/取節(jié)點配置信息:轉(zhuǎn)換函數(shù)類型,最大值,最小值GetNodeConfValue(pModel->ConfTable,Id,&iChgFunc,&dMaxValue,&dMinValue);if(Flag=1) /仿真時不取邊界值,以避免仿真結(jié)果誤差太大 if
25、(*Value<=(dMinValue*1.005) *Value=dMinValue*1.005; if(*Value>=(dMaxValue*0.995) *Value=dMaxValue*0.995;else if(*Value<=dMinValue)
26、 *Value=dMinValue; if(*Value>=dMaxValue) *Value=dMaxValue;/線性函數(shù)轉(zhuǎn)換,轉(zhuǎn)換在0-1之內(nèi)if(iChgFunc=0) *Value=(*Value-dMinValue)/(dMaxValue-dMinValue);/用atan函數(shù)轉(zhuǎn)換在0-1之內(nèi)else if(iChgFunc=2) *Value=atan(*Value)*2/M_PI;/用log函數(shù)轉(zhuǎn)換else if(iChgFunc=1) if(*Value<=1) *Value=0; else *Value=log10(*Value); /用log10函數(shù)轉(zhuǎn)換(縮小) if(dMaxValue>1)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 剪紙課題立項申報書
- 事故車交易合同范本
- 上海嘉善房屋出租合同范本
- 高中課題申報書
- 課題申報書亮點
- 臨時用工勞務(wù)合同范本 三
- 勞務(wù)拆遷采購合同范本
- 合同范本 材料價差調(diào)整
- 勞務(wù)公司包工合同范本
- 與中介簽買房合同范本
- 2025采購部年度工作計劃
- 2025年安徽合肥市軌道交通集團限公司社會招聘24人高頻重點提升(共500題)附帶答案詳解
- 2024年度個人珠寶首飾分期購買合同范本3篇
- 食為天:2024中國食品飲料行業(yè)白皮書
- 醫(yī)學倫理與醫(yī)患溝通技巧
- 個人信息保護:維護個人隱私和數(shù)據(jù)安全
- 5.3.2 函數(shù)的極值與最大(?。┲?第2課時 教學設(shè)計
- 2025年牛津譯林版英語七年級下冊全冊單元重點知識點與語法匯編
- 痔瘡中醫(yī)治療課件
- 污水處理設(shè)備的故障處理指南考核試卷
- 華東師范大學《社會研究方法》2023-2024學年第一學期期末試卷
評論
0/150
提交評論