資料預處理之 標準化 正則化 處理

2021-07-25 21:28:00 字數 1104 閱讀 1436

標準化(scale)和正則化(normalization)是兩種常用的資料預處理方法,其作用是讓資料變得更加「規範」一些。在文字聚類等任務中使用的比較多。

針對某資料,如果不適用資料標準化、正則化,展示的情況如下圖

公式為:(x-mean)/std  計算時對每個屬性/每列分別進行。將資料按期屬性(按列進行)減去其均值,並處以其方差。得到的結果是,對於每個屬性/每列來說所有資料都聚集在0附近,方差為1。經過資料標準化的資料如下圖:可以看到有些特徵被凸顯出來了。

正則化的過程是將每個樣本縮放到單位範數(每個樣本的範數為1),如果後面要使用如二次型(點積)或者其它核方法計算兩個樣本之間的相似性這個方法會很有用。

normalization主要思想是對每個樣本計算其p-範數,然後對該樣本中每個元素除以該範數,

這樣處理的結果是使得每個處理後樣本的p-範數(l1-norm,l2-norm)等於1。

p-範數的計算公式:||x||p=(|x1|^p+|x2|^p+...+|xn|^p)^1/p

該方法主要應用於文字分類和聚類中。例如,對於兩個tf-idf向量的l2-norm進行點積,就可以得到這兩個向量的余弦相似性。

在sklearn中有三種正則化方法,l1範數、l2範數、max範數。

使用這三種範數生成的結果如下圖所示:

在肉眼上很難看出有什麼區別,不過還是能看出l2範數的結果相對更好,即能盡可能的削弱「強勢」特徵,將一些數值較小但是比較有特點的特徵「凸顯」出來。

使用方法參照sklearn官方文件就可以了,非常簡單:

python資料標準化處理 資料標準化處理

正態分佈跟標準分數之間的關係 python版本 3.5 標準分數 標準分數 standard score,又稱z score z分數或標準化值 是將集合中的單個數與集合的均值相減的結果除以集合的標準差得到標準化的結果,該方法類似於正態分佈的標準化轉換,轉換函式為 式中x為需要被標準化的原始值,為均值...

資料預處理之標準化

近來趁專案間隔期,工作不是太多,也在利用空餘時間把資料分析的完整流程用python實現一遍,也恰好整理下這幾年手頭的一些資料,順序可能比較亂,後期再慢慢調整。資料的標準化 normalization 是將資料按照一定規則縮放,使之落入乙個小的特定區間。這樣去除資料的單位限制,將其轉化為無量綱的純數值...

資料標準化處理

資料的標準化 normalization 也就是將資料按照比例縮放,使之落入特定區間內。因為不同的指標往往具有不同的量綱和單位,這樣的資料會影響分析結果,為了消除指標之間的這種影響,需要進行資料標準化處理,使個指標處於同一量級,讓指標有可比性。常用的歸一化有兩種方法 一 min max標準化 min...