日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

一、数据预处理——数据归一化 数据标准化

發布時間:2024/7/5 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 一、数据预处理——数据归一化 数据标准化 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、數據預處理——數據歸一化 & 數據標準化

點擊標題即可獲取文章相關的源代碼文件喲!

1.1 數據無量綱化

在機器學習算法實踐中,我們往往有著將不同規格的數據轉換到同一規格,或不同分布的數據轉換到某個特定分布的需求,這種需求統稱為將數據“無量綱化”。譬如梯度和矩陣為核心的算法中,譬如邏輯回歸,支持向量機,神經網絡,無量綱化可以加快求解速度;而在距離類模型,譬如K近鄰,K-Means聚類中,無量綱化可以幫我們提升模型精度,避免某一個取值范圍特別大的特征對距離計算造成影響。(一個特例是決策樹和樹的集成算法們,對決策樹我們不需要無量綱化,決策樹可以把任意數據都處理得很好。)

數據的無量綱化可以是線性的,也可以是非線性的。線性的無量綱化包括
中心化(Zero-centered或者Mean-subtraction)處理縮放處理(Scale)。

  • 中心化的本質是讓所有記錄減去一個固定值,即讓數據樣本數據平移到某個位置。
  • 縮放的本質是通過除以一個固定值,將數據固定在某個范圍之中,取對數也算是一種縮放處理。
  • 一、數據歸一化

    • preprocessing.MinMaxScaler

    當數據(x)按照最小值中心化后,再按極差(最大值 - 最小值)縮放,數據移動了最小值個單位,并且會被收斂到[0,1]之間,而這個過程,就叫做數據歸一化(Normalization,又稱Min-Max Scaling)。注意,Normalization是歸一化,不是正則化,真正的正則化是regularization,不是數據預處理的一種手段。歸一化之后的數據服從正態分布,公式如下:

    在sklearn當中,我們使用preprocessing.MinMaxScaler來實現這個功能。MinMaxScaler有一個重要參數,feature_range,控制我們希望把數據壓縮到的范圍,默認是[0,1]。


    二、數據標準化

    • preprocessing.StandardScaler
      當數據(x)按均值(μ)中心化后,再按標準差(σ)縮放,數據就會服從為均值為0,方差為1的正態分布(即標準正態分布),而這個過程,就叫做數據標準化(Standardization,又稱Z-score normalization),公式如下:



      對于StandardScaler和MinMaxScaler來說,空值NaN會被當做是缺失值,在fit的時候忽略,在transform的時候保持缺失NaN的狀態顯示。并且,盡管去量綱化過程不是具體的算法,但在fit接口中,依然只允許導入至少二維數組,一維數組導入會報錯。通常來說,我們輸入的X會是我們的特征矩陣,現實案例中特征矩陣不太可能是一維,所以不會存在這個問題。

    • StandardScaler和MinMaxScaler選哪個?
      看情況。大多數機器學習算法中,會選擇StandardScaler來進行特征縮放因為MinMaxScaler對異常值非常敏感。在PCA,聚類,邏輯回歸,支持向量機,神經網絡這些算法中,StandardScaler往往是最好的選擇。
      MinMaxScaler在不涉及距離度量、梯度、協方差計算以及數據需要被壓縮到特定區間時使用廣泛,比如數字圖像處理中量化像素強度時,都會使用MinMaxScaler將數據壓縮于[0,1]區間之中。

    建議先試試看StandardScaler,效果不好換MinMaxScaler。

    除了StandardScaler和MinMaxScaler之外,sklearn中也提供了各種其他縮放處理(中心化只需要一個pandas廣播一下減去某個數就好了,因此sklearn不提供任何中心化功能)。比如,在希望壓縮數據,卻不影響數據的稀疏性時(不影響矩陣中取值為0的個數時),我們會使用MaxAbsScaler;在異常值多,噪聲非常大時,我們可能會選用分位數來無量綱化,此時使用RobustScaler。更多詳情請參考以下列表。

    總結

    以上是生活随笔為你收集整理的一、数据预处理——数据归一化 数据标准化的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。