機器學習-數據歸一化及哪些算法需要歸一化


一、數據為什么需要歸一化處理?

歸一化的目的是處理不同規模和量綱的數據,使其縮放到相同的數據區間和范圍,以減少規模、特征、分布差異對模型的影響。

方法:

1. 極差變換法

2. 0均值標准化(Z-score方法)

1. Max-Min(線性歸一化)

Max-Min歸一化是對原始數據進行線性變化,利用取值的最大值和最小值將原始數據轉換為某一范圍的數據

缺點:歸一化過程與最大值和最小值有關,容易受到極端值的影響。會一定程度破壞原有數據的結構

應用:圖像處理中,將RGB圖像轉換為灰度圖像后將其值限定在[0, 255]的范圍

 

2. Z-Score標准化

基於原始數據的均值和標准差進行標准化。Z-score是一種中心化方法,會改變原有數據的分布結構,不適合對稀疏數據做處理。本方法要求原始數據的分布近似為高斯分布,否則歸一化的效果很差。

應用:在分類和聚類算法中,需要使用距離來度量相似性的時候、或者使用PCA技術進行降維的時候,Z-Score標准化表現很好

 

二、應用場景

1. 概率模型不需要歸一化,因為這種模型不關心變量的取值,而是關心變量的分布和變量之間的條件概率。

決策樹(概率模型)、隨機森林(基學習器是決策樹)、朴素貝葉斯(概率模型)不需要歸一化

2. SVM、線性回歸之類的最優化問題需要歸一化。歸一化之后加快了梯度下降求最優解的速度,並有可能提高精度。

 是否歸一化主要在於是否關心變量取值

3. 神經網絡需要標准化處理,一般變量的取值在-1到1之間,這樣做是弱化某些變量的值較大而對某些產生影響。一般神經網絡中的隱藏層采用tanh激活函數比sigmoid要好,因為取值[-1, 1],均值為0(需要

4. 在k近鄰算法中,如果不對解釋變量進行標准化,那么具有小數量級的解釋變量的影響就會微乎其微(需要

參考地址:

https://blog.csdn.net/ayu96777/article/details/80684914

https://blog.csdn.net/u011089523/article/details/80198312

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM