通常,在data science中,預處理資料有乙個很關鍵的步驟就是資料的標準化。這裡主要引用sklearn文件中的一些東西來說明,主要把各個標準化方法的應用場景以及優缺點總結概括,以來充當筆記。
首先,我要引用我自己的文章feature preprocessing on kaggle裡面關於scaling的描述
tree-based models doesn』t depend on scaling
non-tree-based models hugely depend on scaling
在機器學習演算法的目標函式(例如svm的rbf核心或線性模型的l1和l2正則化),許多學習演算法中目標函式的基礎都是假設所有的特徵都是零均值並且具有同一階數上的方差。如果某個特徵的方差比其他特徵大幾個數量級,那麼它就會在學習演算法中佔據主導位置,導致學習器並不能像我們說期望的那樣,從其他特徵中學習。舉乙個簡單的例子,在knn中,我們需要計算待分類點與所有例項點的距離。假設每個例項點(instance)由n個features構成。如果我們選用的距離度量為歐式距離,如果資料預先沒有經過歸一化,那麼那些絕對值大的features在歐式距離計算的時候起了決定性作用,soga。
從經驗上說,歸一化是讓不同維度之間的特徵在數值上有一定比較性,可以大大提高分類器的準確性。
對於線性model來說,資料歸一化後,最優解的尋優過程明顯會變得平緩,更容易正確的收斂到最優解。
比較這兩個圖,前者是沒有經過歸一化的,在梯度下降的過程中,走的路徑更加的曲折,而第二個圖明顯路徑更加平緩,收斂速度更快。
sklearn的preprocessing
提供了可以滿足需求的歸一化方法:
標準化資料通過減去均值然後除以方差(或標準差),這種資料標準化方法經過處理後資料符合標準正態分佈,即均值為0,標準差為1,轉化函式為:
x =(x -
機器學習資料預處理 標準化 歸一化方法
通常,在data science中,預處理資料有乙個很關鍵的步驟就是資料的標準化。這裡主要引用sklearn文件中的一些東西來說明,主要把各個標準化方法的應用場景以及優缺點總結概括,以來充當筆記。首先,我要引用我自己的文章feature preprocessing on kaggle裡面關於scal...
機器學習 資料特徵預處理歸一化和標準化
通過特定的統計方法 數學方法 將資料轉換成演算法要求的資料 數值型資料 標準縮放 歸一化 標準化 缺失值 類別行資料 one hot編碼 時間型資料 時間的切分將原始資料對映到乙個區間 0,1 特徵同等重要 歸一化處理 目的 使得某乙個特徵對最終結果不對造成更大的影響 缺點 對於異常點處理不好,容易...
sklearn資料預處理 歸一化 標準化
1 把數變為 0,1 之間的小數 主要是為了資料處理方便提出來的,把資料對映到0 1範圍之內處理,更加便捷快速。2 把有量綱表示式變為無量綱表示式 歸一化是一種簡化計算的方式,即將有量綱的表示式,經過變換,化為無量綱的表示式,成為純量。歸一化演算法有 1.線性轉換 y x minvalue maxv...