數(shù)據(jù)的標(biāo)準(zhǔn)化
? 在數(shù)據(jù)分析之前,我們通常需要先將數(shù)據(jù)標(biāo)準(zhǔn)化(normalization),利用標(biāo)準(zhǔn)化后的數(shù)據(jù)進(jìn)行數(shù)據(jù)分析。數(shù)據(jù)標(biāo)準(zhǔn)化也就是統(tǒng)計(jì)數(shù)據(jù)的指數(shù)化。數(shù)據(jù)標(biāo)準(zhǔn)化處理主要包括數(shù)據(jù)同趨化處理和無(wú)量綱化處理兩個(gè)方面。數(shù)據(jù)同趨化處理主要解決不同性質(zhì)數(shù)據(jù)問(wèn)題,對(duì)不同性質(zhì)指標(biāo)直接加總不能正確反映不同作用力的綜合結(jié)果,須先考慮改變逆指標(biāo)數(shù)據(jù)性質(zhì),使所有指標(biāo)對(duì)測(cè)評(píng)方案的作用力同趨化,再加總才能得出正確結(jié)果。數(shù)據(jù)無(wú)量綱化處理主要解決數(shù)據(jù)的可比性。去除數(shù)據(jù)的單位限制,將其轉(zhuǎn)化為無(wú)量綱的純數(shù)值,便于不同單位或量級(jí)的指標(biāo)能夠進(jìn)行比較和加權(quán)。數(shù)據(jù)標(biāo)準(zhǔn)化的方法有很多種,常用的有“最小—最大標(biāo)準(zhǔn)化”、“Z-score標(biāo)準(zhǔn)化”和“按小數(shù)定標(biāo)標(biāo)準(zhǔn)化”等。經(jīng)過(guò)上述標(biāo)準(zhǔn)化處理,原始數(shù)據(jù)均轉(zhuǎn)換為無(wú)量綱化指標(biāo)測(cè)評(píng)值,即各指標(biāo)值都處于同一個(gè)數(shù)量級(jí)別上,可以進(jìn)行綜合測(cè)評(píng)分析。
一、Min-max 標(biāo)準(zhǔn)化?
min-max標(biāo)準(zhǔn)化方法是對(duì)原始數(shù)據(jù)進(jìn)行線性變換。設(shè)minA和maxA分別為屬性A的最小值和最大值,將A的一個(gè)原始值x通過(guò)min-max標(biāo)準(zhǔn)化映射成在區(qū)間[0,1]中的值x',其公式為:
新數(shù)據(jù)=(原數(shù)據(jù)-極小值)/(極大值-極小值)
二、z-score 標(biāo)準(zhǔn)化?
這種方法基于原始數(shù)據(jù)的均值(mean)和標(biāo)準(zhǔn)差(standard deviation)進(jìn)行數(shù)據(jù)的標(biāo)準(zhǔn)化。將A的原始值x使用z-score標(biāo)準(zhǔn)化到x'。? ? z-score標(biāo)準(zhǔn)化方法適用于屬性A的最大值和最小值未知的情況,或有超出取值范圍的離群數(shù)據(jù)的情況。
新數(shù)據(jù)=(原數(shù)據(jù)-均值)/標(biāo)準(zhǔn)差?
spss默認(rèn)的標(biāo)準(zhǔn)化方法就是z-score標(biāo)準(zhǔn)化。 用Excel進(jìn)行z-score標(biāo)準(zhǔn)化的方法:在Excel中沒(méi)有現(xiàn)成的函數(shù),需要自己分步計(jì)算,其實(shí)標(biāo)準(zhǔn)化的公式很簡(jiǎn)單。步驟如下:
求出各變量(指標(biāo))的算術(shù)平均值(數(shù)學(xué)期望)xi和標(biāo)準(zhǔn)差si ;
.進(jìn)行標(biāo)準(zhǔn)化處理:zij=(xij-xi)/si,其中:zij為標(biāo)準(zhǔn)化后的變量值;xij為實(shí)際變量值。
將逆指標(biāo)前的正負(fù)號(hào)對(duì)調(diào)。? ? 標(biāo)準(zhǔn)化后的變量值圍繞0上下波動(dòng),大于0說(shuō)明高于平均水平,小于0說(shuō)明低于平均水平。
三、Decimal scaling小數(shù)定標(biāo)標(biāo)準(zhǔn)化
? ? 這種方法通過(guò)移動(dòng)數(shù)據(jù)的小數(shù)點(diǎn)位置來(lái)進(jìn)行標(biāo)準(zhǔn)化。小數(shù)點(diǎn)移動(dòng)多少位取決于屬性A的取值中的最大絕對(duì)值。將屬性A的原始值x使用decimal scaling標(biāo)準(zhǔn)化到x'的計(jì)算方法是:x'=x/(10*j)? ? 其中,j是滿足條件的最小整數(shù)。例如 假定A的值由-986到917,A的最大絕對(duì)值為986,為使用小數(shù)定標(biāo)標(biāo)準(zhǔn)化,我們用1000(即,j=3)除以每個(gè)值,這樣,-986被規(guī)范化為-0.986。? ? 注意,標(biāo)準(zhǔn)化會(huì)對(duì)原始數(shù)據(jù)做出改變,因此需要保存所使用的標(biāo)準(zhǔn)化方法的參數(shù),以便對(duì)后續(xù)的數(shù)據(jù)進(jìn)行統(tǒng)一的標(biāo)準(zhǔn)化。除了上面提到的數(shù)據(jù)標(biāo)準(zhǔn)化外還有對(duì)數(shù)Logistic模式、模糊量化模式等等:? ? 對(duì)數(shù)Logistic模式:新數(shù)據(jù)=1/(1+e^(-原數(shù)據(jù)))模糊量化模式:新數(shù)據(jù)=1/2+1/2sin[派3.1415/(極大值-極小值)*(X-(極大值-極小值)/2) ] ,X為原數(shù)據(jù)
數(shù)據(jù)歸一化
? ? 歸一化是一種簡(jiǎn)化計(jì)算的方式,即將有量綱的表達(dá)式,經(jīng)過(guò)變換,化為無(wú)量綱的表達(dá)式,成為純量。歸一化是為了加快訓(xùn)練網(wǎng)絡(luò)的收斂性,可以不進(jìn)行歸一化處理
歸一化的具體作用是歸納統(tǒng)一樣本的統(tǒng)計(jì)分布性。歸一化在0-1之間是統(tǒng)計(jì)的概率分布,歸一化在-1--+1之間是統(tǒng)計(jì)的坐標(biāo)分布。歸一化有同一、統(tǒng)一和合一的意思。無(wú)論是為了建模還是為了計(jì)算,首先基本度量單位要同一,神經(jīng)網(wǎng)絡(luò)是以樣本在事件中的統(tǒng)計(jì)分別幾率來(lái)進(jìn)行訓(xùn)練(概率計(jì)算)和預(yù)測(cè)的,歸一化是同一在0-1之間的統(tǒng)計(jì)概率分布;SVM是以降維后線性劃分距離來(lái)分類(lèi)和仿真的,因此時(shí)空降維歸一化是統(tǒng)一在-1--+1之間的統(tǒng)計(jì)坐標(biāo)分布。
當(dāng)所有樣本的輸入信號(hào)都為正值時(shí),與第一隱含層神經(jīng)元相連的權(quán)值只能同時(shí)增加或減小,從而導(dǎo)致學(xué)習(xí)速度很慢。為了避免出現(xiàn)這種情況,加快網(wǎng)絡(luò)學(xué)習(xí)速度,可以對(duì)輸入信號(hào)進(jìn)行歸一化,使得所有樣本的輸入信號(hào)其均值接近于0或與其均方差相比很小。
歸一化是因?yàn)閟igmoid函數(shù)的取值是0到1之間的,網(wǎng)絡(luò)最后一個(gè)節(jié)點(diǎn)的輸出也是如此,所以經(jīng)常要對(duì)樣本的輸出歸一化處理。所以這樣做分類(lèi)的問(wèn)題時(shí)用[0.9 0.1 0.1]就要比用要好。
但是歸一化處理并不總是合適的,根據(jù)輸出值的分布情況,標(biāo)準(zhǔn)化等其它統(tǒng)計(jì)變換方法有時(shí)可能更好。
主要是為了數(shù)據(jù)處理方便提出來(lái)的,把數(shù)據(jù)映射到0~1范圍之內(nèi)處理,更加便捷快速,應(yīng)該歸到數(shù)字信號(hào)處理范疇之內(nèi)。
歸一化方法(Normalization Method)
1。把數(shù)變?yōu)椋?,1)之間的小數(shù) 主要是為了數(shù)據(jù)處理方便提出來(lái)的,把數(shù)據(jù)映射到0~1范圍之內(nèi)處理,更加便捷快速,應(yīng)該歸到數(shù)字信號(hào)處理范疇之內(nèi)。
2 。把有量綱表達(dá)式變?yōu)闊o(wú)量綱表達(dá)式歸一化是一種簡(jiǎn)化計(jì)算的方式,即將有量綱的表達(dá)式,經(jīng)過(guò)變換,化為無(wú)量綱的表達(dá)式,成為純量。比如,復(fù)數(shù)阻抗可以歸一化書(shū)寫(xiě):Z = R + jωL = R(1 + jωL/R) ,復(fù)數(shù)部分變成了純數(shù)量了,沒(méi)有量綱。
標(biāo)準(zhǔn)化方法(Normalization Method)
數(shù)據(jù)的標(biāo)準(zhǔn)化是將數(shù)據(jù)按比例縮放,使之落入一個(gè)小的特定區(qū)間。由于信用指標(biāo)體系的各個(gè)指標(biāo)度量單位是不同的,為了能夠?qū)⒅笜?biāo)參與評(píng)價(jià)計(jì)算,需要對(duì)指標(biāo)進(jìn)行規(guī)范化處理,通過(guò)函數(shù)變換將其數(shù)值映射到某個(gè)數(shù)值區(qū)間。
關(guān)于神經(jīng)網(wǎng)絡(luò)(matlab)歸一化的整理
關(guān)于神經(jīng)網(wǎng)絡(luò)歸一化方法的整理
由于采集的各數(shù)據(jù)單位不一致,因而須對(duì)數(shù)據(jù)進(jìn)行[-1,1]歸一化處理,歸一化方法主要有如下幾種,供大家參考:(by james)
1、線性函數(shù)轉(zhuǎn)換,表達(dá)式如下:
y=(x-MinValue)/(MaxValue-MinValue)
說(shuō)明:x、y分別為轉(zhuǎn)換前、后的值,MaxValue、MinValue分別為樣本的最大值和最小值。
2、對(duì)數(shù)函數(shù)轉(zhuǎn)換,表達(dá)式如下:
y=log10(x)
說(shuō)明:以10為底的對(duì)數(shù)函數(shù)轉(zhuǎn)換。
3、反余切函數(shù)轉(zhuǎn)換,表達(dá)式如下:
y=atan(x)*2/PI
歸一化是為了加快訓(xùn)練網(wǎng)絡(luò)的收斂性,可以不進(jìn)行歸一化處理
歸一化的具體作用是歸納統(tǒng)一樣本的統(tǒng)計(jì)分布性。歸一化在0-1之間是統(tǒng)計(jì)的概率分布,歸一化在-1~+1之間是統(tǒng)計(jì)的坐標(biāo)分布。歸一化有同一、統(tǒng)一和合一的意思。無(wú)論是為了建模還是為了計(jì)算,首先基本度量單位要同一,神經(jīng)網(wǎng)絡(luò)是以樣本在事件中的統(tǒng)計(jì)分別幾率來(lái)進(jìn)行訓(xùn)練(概率計(jì)算)和預(yù)測(cè)的,歸一化是統(tǒng)一在0-1之間的統(tǒng)計(jì)概率分布;
當(dāng)所有樣本的輸入信號(hào)都為正值時(shí),與第一隱含層神經(jīng)元相連的權(quán)值只能同時(shí)增加或減小,從而導(dǎo)致學(xué)習(xí)速度很慢。為了避免出現(xiàn)這種情況,加快網(wǎng)絡(luò)學(xué)習(xí)速度,可以對(duì)輸入信號(hào)進(jìn)行歸一化,使得所有樣本的輸入信號(hào)其均值接近于0或與其均方差相比很小。
歸一化是因?yàn)閟igmoid函數(shù)的取值是0到1之間的,網(wǎng)絡(luò)最后一個(gè)節(jié)點(diǎn)的輸出也是如此,所以經(jīng)常要對(duì)樣本的輸出歸一化處理。所以這樣做分類(lèi)的問(wèn)題時(shí)用[0.9 0.1 0.1]就要比用[1 0 0]要好。
但是歸一化處理并不總是合適的,根據(jù)輸出值的分布情況,標(biāo)準(zhǔn)化等其它統(tǒng)計(jì)變換方法有時(shí)可能更好。
關(guān)于用premnmx語(yǔ)句進(jìn)行歸一化:
Premnmx語(yǔ)句格式:
[Pn,minp,maxp,Tn,mint,maxt]=premnmx(P,T)
其中P,T分別為原始輸入和輸出數(shù)據(jù),minp和maxp分別為P中的最小值和最大值(最大最小是針對(duì)矩陣的行來(lái)取,而min(p)是針對(duì)矩陣的列來(lái)取)。mint和maxt分別為T(mén)的最小值和最大值。
premnmx函數(shù)用于將網(wǎng)絡(luò)的輸入數(shù)據(jù)或輸出數(shù)據(jù)進(jìn)行歸一化,歸一化后的數(shù)據(jù)將分布在[-1,1]區(qū)間內(nèi)。
我們?cè)谟?xùn)練網(wǎng)絡(luò)時(shí)如果所用的是經(jīng)過(guò)歸一化的樣本數(shù)據(jù),那么以后使用網(wǎng)絡(luò)時(shí)所用的新數(shù)據(jù)也應(yīng)該和樣本數(shù)據(jù)接受相同的預(yù)處理,這就要用到tramnmx。
關(guān)于用tramnmx語(yǔ)句進(jìn)行歸一化:
Tramnmx語(yǔ)句格式:
[Pn]=tramnmx(P,minp,maxp)
其中P和Pn分別為變換前、后的輸入數(shù)據(jù),maxp和minp分別為premnmx函數(shù)找到的最大值和最小值。
(by terry2008)
matlab中的歸一化處理有三種方法
1.? premnmx、postmnmx、tramnmx
2. restd、poststd、trastd
3. 自己編程
具體用那種方法就和你的具體問(wèn)題有關(guān)了
(by happy)
pm=max(abs(p(i,:))); p(i,:)=p(i,:)/pm;
和
for i=1:27
p(i,:)=(p(i,:)-min(p(i,:)))/(max(p(i,:))-min(p(i,:)));
end 可以歸一到0 1 之間
0.1+(x-min)/(max-min)*(0.9-0.1)其中max和min分別表示樣本最大值和最小值。
這個(gè)可以歸一到0.1-0.9
矩陣歸一化
歸一化化定義:我是這樣認(rèn)為的,歸一化化就是要把你需要處理的數(shù)據(jù)經(jīng)過(guò)處理后(通過(guò)某種算法)限制在你需要的一定范圍內(nèi)。首先歸一化是為了后面數(shù)據(jù)處理的方便,其次是保正程序運(yùn)行時(shí)收斂加快。
在matlab里面,用于:
歸一化的方法共有三種
(1)premnmx、postmnmx、tramnmx
premnmx指的是歸一到[-1 1]。
(2)prestd、poststd、trastd
prestd歸一到單位方差和零均值。
(3)是用matlab語(yǔ)言自