轉自:https://blog.csdn.net/u014381464/article/details/81101551算法
規範化把關係知足的規範要求分爲幾級,知足要求最低的是第一範式(1NF),再來是第二範式、第三範式、BC範式和4NF、5NF等等,範數的等級越高,知足的約束集條件越嚴格。數據庫
數據的規範化包括歸一化標準化正則化,是一個統稱(也有人把標準化做爲統稱)。網絡
數據規範化是數據挖掘中的數據變換的一種方式,數據變換將數據變換或統一成適合於數據挖掘的形式,將被挖掘對象的屬性數據按比例縮放,使其落入一個小的特定區間內,如[-1, 1]或[0, 1]函數
對屬性值進行規範化經常使用於涉及神經網絡和距離度量的分類算法和聚類算法當中。好比使用神經網絡後向傳播算法進行分類挖掘時,對訓練元組中度量每一個屬性的輸入值進行規範化有利於加快學習階段的速度。對於基於距離度量相異度的方法,數據歸一化可以讓全部的屬性具備相同的權值。學習
數據規範化的經常使用方法有三種:最小最大值規範化,z-score標準化和按小數定標規範化大數據
數據標準化是將數據按比例縮放,使其落入到一個小的區間內,標準化後的數據可正可負,可是通常絕對值不會太大,通常是z-score標準化方法:減去指望後除以標準差。優化
特色:.net
對不一樣特徵維度的伸縮變換的目的是使其不一樣度量之間的特徵具備可比性,同時不改變原始數據的分佈。3d
好處:orm
不改變原始數據的分佈,保持各個特徵維度對目標函數的影響權重
對目標函數的影響體如今幾何分佈上
在已有樣本足夠多的狀況下比較穩定,適合現代嘈雜大數據場景
把數值放縮到0到1的小區間中(歸到數字信號處理範疇以內),通常方法是最小最大規範的方法:min-max normalization
上面min-max normalization是線性歸一化,還有非線性歸一化,經過一些數學函數,將原始值進行映射。該方法包括log、指數、反正切等。須要根據數據分佈的狀況,決定非線性函數的曲線。
log函數:x = lg(x)/lg(max);反正切函數:x = atan(x)*2/pi
應用:
1.無量綱化
例如房子數量和收入,從業務層知道這二者的重要性同樣,因此把它們所有歸一化,這是從業務層面上做的處理。
2.避免數值問題
不一樣的數據在不一樣列數據的數量級相差過大的話,計算起來大數的變化會掩蓋掉小數的變化。
3.一些模型求解的須要
例如梯度降低法,若是不歸一化,當學習率較大時,求解過程會呈之字形降低。學習率較小,則會產生直角形路線,無論怎麼樣,都不會是好路線(路線解釋看西面歸一化和標準化的對比)。解釋神經網絡梯度降低的文章。
4.時間序列
進行log分析時,會將本來絕對化的時間序列歸一化到某個基準時刻,造成相對時間序列,方便排查。
5.收斂速度
加快求解過程當中參數的收斂速度。
特色:
對不一樣特徵維度進行伸縮變換
改變原始數據的分佈,使得各個特徵維度對目標函數的影響權重歸於一致(使得扁平分佈的數據伸縮變換成類圓形)
對目標函數的影響體如今數值上
把有量綱表達式變爲無量綱表達式
歸一化能夠消除量綱對最終結果的影響,使不一樣變量具備可比性。好比兩我的體重差10KG,身高差0.02M,在衡量兩我的的差異時體重的差距會把身高的差距徹底掩蓋,歸一化以後就不會有這樣的問題。
好處:
提升迭代求解的收斂速度
提升迭代求解的精度
缺點:
最大值與最小值很是容易受異常點影響
魯棒性較差,只適合傳統精確小數據場景
一、在分類、聚類算法中,須要使用距離來度量類似性的時候、或者使用PCA技術進行降維的時候,標準化(Z-score standardization)表現更好。
二、在不涉及距離度量、協方差計算、數據不符合正太分佈的時候,可使用歸一化方法。好比圖像處理中,將RGB圖像轉換爲灰度圖像後將其值限定在[0 255]的範圍。
在求解最優化問題中,調節擬合程度的參數通常稱爲正則項,越大代表欠擬合,越小代表過擬合
爲了解決過擬合問題,一般有兩種方法,第一是減少樣本的特徵(即維度),第二是正則化(又稱爲懲罰penalty)
正則化的通常形式是在整個平均損失函數的最後增長一個正則項(L2範數正則化,也有其餘形式的正則化,做用不一樣)
正則項越大代表懲罰力度越大,等於0表示不作懲罰。
正則項越小,懲罰力度越小,極端爲正則項爲0,則會形成過擬合問題;正則化越大,懲罰力度越大,則容易出現欠擬合問題。