[轉] [機器學習] 常用數據標準化(正則化)的方法
數據正則化
目的:為了加快訓練網絡的收斂性,可以不進行歸一化處理
源地址:http://blog.sina.com.cn/s/blog_8808cae20102vg53.html
而在多指標評價體系中,由於各評價指標的性質不同,通常具有不同的量綱和數量級。當各指標間的水平相差很大時,如果直接用原始指標值進行分析,就會突出數值較高的指標在綜合分析中的作用,相對削弱數值水平較低指標的作用。因此,為了保證結果的可靠性,需要對原始指標數據進行標準化處理。
目前數據標準化方法有多種,歸結起來可以分為直線型方法(如極值法、標準差法)、折線型方法(如三折線法)、曲線型方法(如半正態性分布)。不同的標準化方法,對系統的評價結果會產生不同的影響,然而不幸的是,在數據標準化方法的選擇上,還沒有通用的法則可以遵循
1 什麽是數據標準化(Normalization)
將數據按比例縮放,使之落入一個小的特定區間。在某些比較和評價的指標處理中經常會用到,去除數據的單位限制,將其轉化為無量綱的純數值,便於不同單位或量級的指標能夠進行比較和加權。
2 有哪些常用方法呢?
方法一:規範化方法(離差標準化)
對原始數據的線性變換,使結果映射到[0,1]區間。
這種方法有一個缺陷就是當有新數據加入時,可能導致max和min的變化,需要重新定義。
方法二:正規化方法
- 這種方法基於原始數據的均值(mean)和標準差(standard deviation)進行數據的標準化。將A的原始值x使用z-score標準化到x’。
- z-score標準化方法適用於屬性A的最大值和最小值未知的情況,或有超出取值範圍的離群數據的情況。
標準化後的變量值圍繞0上下波動,大於0說明高於平均水平,小於0說明低於平均水平。
方法三:歸一化方法
方法四: log函數轉換
通過以10為底的log函數轉換的方法同樣可以實現歸一下,具體方法如下: 看了下網上很多介紹都是x*=log10(x),其實是有問題的,這個結果並非一定落到[0,1]區間上,應該還要除以log10(max),max為樣本數據最大值,並且所有的數據都要大於等於1。
方法五: atan函數轉換
用反正切函數也可以實現數據的歸一化: 使用這個方法需要註意的是如果想映射的區間為[0,1],則數據都應該大於等於0,小於0的數據將被映射到[-1,0]區間上。y=atan(x)*2/PI
[轉] [機器學習] 常用數據標準化(正則化)的方法