機器學習——標准化/歸一化的目的、作用和場景


(一)歸一化的作用


在機器學習領域中,不同評價指標(即特征向量中的不同特征就是所述的不同評價指標)往往具有不同的量綱和量綱單位,這樣的情況會影響到數據分析的結果,為了消除指標之間的量綱影響,需要進行數據標准化處理,以解決數據指標之間的可比性。原始數據經過數據標准化處理后,各指標處於同一數量級,適合進行綜合對比評價。其中,最典型的就是數據的歸一化處理。(可以參考學習:數據標准化/歸一化)

簡而言之,歸一化的目的就是使得預處理的數據被限定在一定的范圍內(比如[0,1]或者[-1,1]),從而消除奇異樣本數據導致的不良影響。

1)在統計學中,歸一化的具體作用是歸納統一樣本的統計分布性。歸一化在0~1之間是統計的概率分布,歸一化在-1~+1之間是統計的坐標分布。

2)奇異樣本數據是指相對於其他輸入樣本特別大或特別小的樣本矢量(即特征向量),譬如,下面為具有兩個特征的樣本數據x1、x2、x3、x4、x5、x6(特征向量—>列向量),其中x6這個樣本的兩個特征相對其他樣本而言相差比較大,因此,x6認為是奇異樣本數據。

 

奇異樣本數據的存在會引起訓練時間增大,同時也可能導致無法收斂,因此,當存在奇異樣本數據時,在進行訓練之前需要對預處理數據進行歸一化;反之,不存在奇異樣本數據時,則可以不進行歸一化。

      解釋范例:http://www.cnblogs.com/silence-tommy/p/7113498.html

--如果不進行歸一化,那么由於特征向量中不同特征的取值相差較大,會導致目標函數變“扁”。這樣在進行梯度下降的時候,梯度的方向就會偏離最小值的方向,走很多彎路,即訓練時間過長。

 

 

--如果進行歸一化以后,目標函數會呈現比較“圓”,這樣訓練速度大大加快,少走很多彎路。

 

綜上可知,歸一化有如下好處,即

1)歸一化后加快了梯度下降求最優解的速度;

2)歸一化有可能提高精度(如KNN)

注:沒有一種數據標准化的方法,放在每一個問題,放在每一個模型,都能提高算法精度和加速算法的收斂速度。

 

 

(二)歸一化的方法

1)最大最小標准化(Min-Max Normalization)

a). 本歸一化方法又稱為離差標准化,使結果值映射到[0 ,1]之間,轉換函數如下:

 

b). 本歸一化方法比較適用在數值比較集中的情況;

c). 缺陷:如果max和min不穩定,很容易使得歸一化結果不穩定,使得后續使用效果也不穩定。實際使用中可以用經驗常量來替代max和min。

d).  應用場景:在不涉及距離度量、協方差計算、數據不符合正太分布的時候,可以使用第一種方法或其他歸一化方法(不包括Z-score方法)。比如圖像處理中,將RGB圖像轉換為灰度圖像后將其值限定在[0 255]的范圍

2)Z-score標准化方法

a). 數據處理后符合標准正態分布,即均值為0,標准差為1,其轉化函數為:

 

其中μ為所有樣本數據的均值,σ為所有樣本數據的標准差。

b). 本方法要求原始數據的分布可以近似為高斯分布,否則歸一化的效果會變得很糟糕;

c). 應用場景:在分類、聚類算法中,需要使用距離來度量相似性的時候、或者使用PCA技術進行降維的時候,Z-score standardization表現更好。

3)非線性歸一化

a). 本歸一化方法經常用在數據分化比較大的場景,有些數值很大,有些很小。通過一些數學函數,將原始值進行映射。

b). 該方法包括 log,正切等,需要根據數據分布的情況,決定非線性函數的曲線:

       ---log對數函數轉換方法

y = log10(x),即以10為底的對數轉換函數,對應的歸一化方法為:x' = log10(x) /log10(max),其中max表示樣本數據的最大

值,並且所有樣本數據均要大於等於1.

---atan反正切函數轉換方法

利用反正切函數可以實現數據的歸一化,即

x' = atan(x)*(2/pi)

使用這個方法需要注意的是如果想映射的區間為[0,1],則數據都應該大於等於0,小於0的數據將被映射到[-1,0]區間上.

---L2范數歸一化方法

L2范數歸一化就是特征向量中每個元素均除以向量的L2范數:

 

(三)應用場景說明
1)概率模型不需要歸一化,因為這種模型不關心變量的取值,而是關心變量的分布和變量之間的條件概率;

2)SVM、線性回歸之類的最優化問題需要歸一化,是否歸一化主要在於是否關心變量取值;

3)神經網絡需要標准化處理,一般變量的取值在-1到1之間,這樣做是為了弱化某些變量的值較大而對模型產生影響。一般神經網絡中的隱藏層采用tanh激活函數比sigmod激活函數要好些,因為tanh雙曲正切函數的取值[-1,1]之間,均值為0.

4)在K近鄰算法中,如果不對解釋變量進行標准化,那么具有小數量級的解釋變量的影響就會微乎其微。
---------------------
作者:o_Eagle_o
來源:CSDN
原文:https://blog.csdn.net/zenghaitao0128/article/details/78361038
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM