機器學習中需要歸一化的演算法有svm,邏輯回歸,神經網路,knn,線性回歸,而樹形結構的不需要歸一化,因為它們不關心變數的值,而是關心變數分布和變數之間的條件概率,如決策樹,隨機森林,對於樹形結構,樹模型的構造是通過尋找最優**點構成的,樣本點的數值縮放不影響**點的位置,對樹模型的結構不造成影響,而且樹模型不能進行梯度下降,因為樹模型是階躍的,階躍是不可導的,並且求導沒意義,也不需要歸一化。
2、對於那些需要歸一化的模型,主要是因為特徵值相差很大時,運用梯度下降,損失等高線是橢圓形,需要進行多次迭代才能達到最優點,如果進行歸一化了,那麼等高線就是圓形的,促使sgd往原點迭代,從而導致需要迭代次數較少。
3、歸一化的方法。
線性函式歸一化,對原始資料進行線性變換,使結構對映到0,1範圍內,歸一化的公式是,xnorm=x-xmin/(xmax-xmin)
0均值歸一化,原始資料對映到均值為0,標準差為1的分布上,假設 均值為u,標準差為r,歸一化的公式就是(x-u)/r
對數函式轉換:
y=log10(x)
反餘切函式轉換
y=arctan(x)*2/pi
4、歸一化的目的:
1、加快梯度下降求解最優解的速度
2、歸一化有可能提高精度
5、標準化和歸一化的區別
標準化是依照特徵矩陣的列處理資料,其通過求z-score的方法,將樣本的特徵值轉換到同一量綱下。
標準化在於提高迭代速度,降低不同維度之間影響權重不一致的問題。
歸一化,依據特徵矩陣的行處理資料,目的在於樣本向量點乘運算或其他核函式計算相似性時,擁有統一的標準,也就是說轉化為單位向量。
原文:
標準化和歸一化什麼區別?
機器學習資料歸一化的的方法有哪些?適合於什麼樣的資料?
感覺很多回答中,標準化、歸一化都是混亂的。。。
機器學習演算法 歸一化數值
coding utf 8 author whf import numpy from knn import file2matrix from numpy import def autonorm dataset 將每列的最小值放在minvals中 minvals dataset.min 0 將每列的最大...
機器學習之 歸一化
之前我們討論了幾個機器學習的模型,線性回歸模型 linear regression 和邏輯回歸模型 logistic regression 這一次我們討論一下關於模型資料擬合的問題以及歸一化方法 regularization 過擬合問題 the problem of overfitting 如果我們...
機器學習 資料歸一化
機器學習中,在資料預處理過程中,通過將資料歸一化可以加快梯度下降求最優解的速度,也有可能提高模型計算的精度。常用的歸一化方法主要有兩種 最值歸一化。比如把最大值歸一化成1,最小值歸一化成 1 或把最大值歸一化成1,最小值歸一化成0。適用於本來就分布在有限範圍內的資料。其中常用的方法有 線性比例變換法...