讀書筆記 -- 004_數據預處理_數據規範化

概述
所用的度量單位可能影響數據分析。例如,把height的度量單位從米制換成英寸,把weight的度量單位從公斤換成磅,可能導致的結果不一樣。一般而言,用較小的單位表示屬性將導致該屬性具有較大的值域,因此趨向於使這樣的屬性具有較大的影響或較高的“權重”。爲了幫助避免對度量單位選擇的依賴性,數據應該規範化或標準化。這涉及到變換數據,使之落入較小的共同區間,如[-1, 1]或[0.0, 1.0]。

規範化數據試圖賦予所有的屬性相等的權重。對於涉及神經網絡的分類算法或基於距離度量的分類(如最近鄰分類)和聚類,規範化特別有用。

經常使用的數據規範化的方法有:最小-最大規範化、z分數規範化和按小數定規範化。

1、最小-最大規範化
對原始數據進行線性變換。假設max_A 和 min_A分別爲屬性A的最小值和最大值。那麼規範化通過公式:
這裏寫圖片描述
注意:最小-最大規範化保持原始數據值之間的聯繫。如果今後的輸入數據落在A的原始數據值域之外,則該方法將面臨“越界”錯誤。

2、z分數規範化(或零均值規範化)
這裏寫圖片描述
其中,分子的第二個字母表示A的均值,分母是A的標準差。
注意:當屬性A的實際最小值和最大值未知,或離羣點左右了最小-最大規範化時,方法是有用的。

上式分母中的標準差可以用均值絕對偏差替換。A的均值絕對偏差(mean absolute deviation)定義爲:
這裏寫圖片描述
於是,使用均值絕對差的z分數規範化爲:
這裏寫圖片描述
注意:對於離羣點,均值絕對偏差比標準差更加魯棒。在計算絕對值偏差時,不對到均值的偏差(即這裏寫圖片描述)取平方,因此離羣點的影響多少有點降低。

3、小數定標規範化
通過移動屬性A的值得小數點位置進行規範化。小數點的移動位數依賴於A的最大絕對值。
這裏寫圖片描述
其中,j是使得這裏寫圖片描述的最小整數。

例:假設A的取值由-986到917。那麼A的最大爲986.因此,爲使用小數定標規範化,我們用1000(即j=3)除每個值。因此,-986被規範化爲-0.986,而917被規範化爲0.917。

注意:規範化可能將原來的數據改變很多,特別是使用z分數規範化或小數定標規範化時尤其如此。還有必要保留規範化參數(如均值和標準差,如果使用z分數規範化的話),以便將來的數據可以用一致的方式規範化

發佈了30 篇原創文章 · 獲贊 3 · 訪問量 7萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章