歸一化 標準化 中心化

2021-09-23 01:49:17 字數 1829 閱讀 1595

歸一化:把資料變成 [0,1] 或 [-1,1] 之間的小數。主要是為了資料處理方便提出來的,把資料對映到0~1範圍之內處理,更加便捷快速。是一種簡化計算的方式,將有量綱的表示式,經過變換,化為無量綱的表示式,成為標量,便於不同單位或量級的指標能夠進行比較和加權。

標準化:在機器學習中,我們可能要處理不同種類的資料,例如,音訊和上的畫素值,這些資料可能是高維度的,資料標準化後會使每個特徵中的數值平均變為0(將每個特徵的值都減掉原始資料中該特徵的平均)、標準差變為1,這個方法被廣泛的使用在許多機器學習演算法中(例如:支援向量機、邏輯回歸和類神經網路)。

中心化:平均值為0,對標準差無要求。

歸一化和標準化的區別:歸一化是將樣本的特徵值轉換到同一量綱下把資料對映到 [0,1] 或者 [-1,1] 區間內,僅由變數的極值決定,因區間放縮法是歸一化的一種。標準化是依照特徵矩陣的列處理資料,其通過求z-score的方法,轉換為標準正態分佈,和整體樣本分佈相關,每個樣本點都能對標準化產生影響。它們的相同點在於都能取消由於量綱不同引起的誤差;都是一種線性變換,都是對向量x按照比例壓縮再進行平移。

標準化和中心化的區別:標準化是原始分數減去平均數然後除以標準差,中心化是原始分數減去平均數。 所以一般流程為先中心化再標準化。

(1) max-min歸一化

x』 = (x - x_min) / (x_max - x_min)

該方法實現對原始資料的等比例縮放

(2)平均歸一化

x』 = (x - μ) / (x_max - x_min)

( 1)和(2)有乙個缺陷就是當有新資料加入時,可能導致max和min的變化,需要重新定義。

(3)非線性歸一化

對數函式轉換:y = log(x)

反餘切函式轉換:y = atan(x) * 2 / π

經常用在資料分化比較大的場景,有些數值很大,有些很小。通過一些數學函式,將原始值進行對映。該方法包括 log、指數,正切等。需要根據資料分布的情況,決定非線性函式的曲線,比如log(v, 2)還是log(v, 10)等。

z-score規範化(標準差標準化 / 零均值標準化):x』 = (x - μ)/σ

x』 = x - μ

歸一化/標準化實質是一種線性變換,線性變換有很多良好的性質,這些性質決定了對資料改變後不會造成「失效」,反而能提高資料的表現,這些性質是歸一化/標準化的前提。比如有乙個很重要的性質:線性變換不會改變原始資料的數值排序。

歸一化和標準化常用於以下幾個方面:

(1)在使用梯度下降的方法求解最優化問題時, 歸一化/標準化後可以加快梯度下降的求解速度,即提公升模型的收斂速度。如下圖所示,未歸一化/標準化時形成的等高線偏橢圓,迭代時很有可能走「之」字型路線(垂直長軸),從而導致迭代很多次才能收斂。而如右圖對兩個特徵進行了歸一化,對應的等高線就會變圓,在梯度下降進行求解時能較快的收斂。

(2)一些分類器需要計算樣本之間的距離(如歐氏距離),例如knn。如果乙個特徵值域範圍非常大,那麼距離計算就主要取決於這個特徵,從而與實際情況相悖(比如這時實際情況是值域範圍小的特徵更重要)。

,無量綱化是使不同規格的資料轉換到同一規格,例如房子數量和收入,因為從業務層知道,這兩者的重要性一樣,所以把它們全部歸一化。 這樣訓練的時候便不會產生權重偏差。

太大的數會引發數值問題。

不同的模型對特徵的分布假設是不一樣的。比如svm 用高斯核的時候,所有維度共用乙個方差,這不就假設特徵分布是圓的麼,輸入橢圓的就坑了人家,所以簡單的歸一化都還不夠好,來杯白化才有勁。比如用樹的時候就是各個維度各算各的切分點,沒所謂。

需要度量距離的模型,一般在特徵值差距較大時,都會進行歸一化/標準化。不然會出現「大數吃小數」。

歸一化 標準化 正則化

無量綱化使不同規格的資料轉換到同一規格。常用的無量綱化方法有標準化和區間縮放法。標準化的前提是特徵值服從正態分佈,標準化後,其轉換成標準正態分佈 區間縮放法利用了邊界值資訊,將特徵的取值區間縮放到某個特點的範圍,例如 0,1 等。標準化的前提是特徵值服從正態分佈,標準化後,其轉換成標準正態分佈 z ...

標準化 歸一化 正則化

x x x min x max x min 歸一化後的資料取值區間為 0,1 from sklearn.preprocessing import minmaxscaler import numpy as np data np.random.uniform 0,100,10 np.newaxis 隨機...

歸一化 標準化 正則化

我們經常將歸一化和標準化弄混淆,下面簡單描述一下他們之間的差異 歸一化的目標是找到某種對映關係,將原資料對映到 a,b a,b 區間上。一般a,b a,b會取 1 1 0,1 1,1 0,1 這些組合 a b 一般有兩種應用場景 常用min max normalization 用大數定理將資料轉化為...