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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

数据预处理|关于标准化和归一化的一切

發布時間:2025/3/8 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据预处理|关于标准化和归一化的一切 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


數據預處理是最令數據科學家頭禿的工作

之前在知乎看過一個問題你為什么離開數據科學行業?一位知友est答曰:數據清洗10小時,擬合2分鐘,如此重復996。

這條回答下面的評論更是精彩,居然真的會眼瞎。。。

之前推送過一篇數據處理方面的文章,整理一份詳細的數據預處理方法

里面有一個問題沒有說清楚,而且網上很多博客和公眾號推文也都寫的有點亂,這就是歸一化(Normalization)和標準化(Standardization)的事。

本文重點說以下三點

  • 歸一化和標準化之前的關系

  • 為什么要歸一化和標準化

  • 哪些機器學習模型需要做歸一化

  • 如何做歸一化和標準化

歸一化和標準化之前的關系

這是目前最混亂的。

在統計學里并沒有Standardization,只有Normalization,不管是把數據變為均值為0,方差為1的正態分布,還是把數據映射到[0,1],都叫Normalization,其包括如下幾種公式:

但是在機器學習領域,Normalization分為兩個,一個是min-max normalization,,一個是Mean normalization:,機器學習里的Standardization特指把數據分布變為正態分布,

從sklearn的preprocessing里,不管是把數據分布變為均值為0,方差為1的正態分布還是把數據縮放到[0,1]都叫Standardization,當然把數據縮放為[-1,1]也叫Standardization,preprocessing里的Normalization里只包括正則化,即把x除以L1-范數或L2范數。

綜上,把數據變為正態分布是標準化,把數據的范圍縮放到[0,1]是歸一化

歸一化/標準化的意義

1)歸一化后加快了梯度下降求最優解的速度

這個圖來自吳恩達的機器學習課程,被引用無數次了。藍色的圈圈圖代表的是兩個特征的等高線,左圖兩個特征X1和X2的區間相差非常大,X1區間是[0,2000],X2區間是[1,5],其所形成的等高線非常尖。當使用梯度下降法尋求最優解時,很有可能走“之字型”路線(垂直等高線走),從而導致需要迭代很多次才能收斂;而右圖對兩個原始特征進行了歸一化,其對應的等高線顯得很圓,在梯度下降進行求解時能較快的收斂。因此如果機器學習模型使用梯度下降法求最優解時,歸一化往往非常有必要,否則很難收斂甚至不能收斂。

2)歸一化有可能提高精度

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

哪些機器學習算法需要歸一化

1)需要使用梯度下降和計算距離的模型要做歸一化,因為不做歸一化會使收斂的路徑程z字型下降,導致收斂路徑太慢,而且不容易找到最優解,歸一化之后加快了梯度下降求最優解的速度,并有可能提高精度。比如說線性回歸、邏輯回歸、adaboost、xgboost、GBDT、SVM、NeuralNetwork等。需要計算距離的模型需要做歸一化,比如說KNN、KMeans等。

2)概率模型、樹形結構模型不需要歸一化,因為它們不關心變量的值,而是關心變量的分布和變量之間的條件概率,如決策樹、隨機森林。

歸一化/標準化如何實現?

這一部分實在沒辦法詳解,最好的辦法就是閱讀文檔,動手練習!

sklearn.preprocess模塊官方文檔

https://scikit-learn.org/stable/modules/preprocessing.html#preprocessing

apachecn小組已將sklearn漢化,請移步

https://sklearn.apachecn.org/#/docs/40?id=_53-預處理數據

參考

https://www.jianshu.com/p/45430e476a7b

https://www.zhihu.com/question/20467170

https://zhuanlan.zhihu.com/p/30358160

https://www.cnblogs.com/LBSer/p/4440590.html

https://blog.csdn.net/u014535528/article/details/82977653?

https://www.zhihu.com/question/20455227/answer/197897298

關于本站

“機器學習初學者”公眾號由是黃海廣博士創建,黃博個人知乎粉絲22000+,github排名全球前110名(32000+)。本公眾號致力于人工智能方向的科普性文章,為初學者提供學習路線和基礎資料。原創作品有:吳恩達機器學習個人筆記、吳恩達深度學習筆記等。

往期精彩回顧

  • 那些年做的學術公益-你不是一個人在戰斗

  • 適合初學者入門人工智能的路線及資料下載

  • 吳恩達機器學習課程筆記及資源(github標星12000+,提供百度云鏡像)

  • 吳恩達深度學習筆記及視頻等資源(github標星8500+,提供百度云鏡像)

  • 《統計學習方法》的python代碼實現(github標星7200+)

  • 精心整理和翻譯的機器學習的相關數學資料

  • 首發:深度學習入門寶典-《python深度學習》原文代碼中文注釋版及電子書

備注:加入本站微信群或者qq群,請回復“加群

加入知識星球(4300+用戶,ID:92416895),請回復“知識星球

總結

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

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