normalize(x, norm='l2', axis=1, copy=true, return_norm=false)
scale input vectors individually to unit norm (vector length).
範化是將不同變化範圍的值對映到相同的固定範圍,常見的是[0,1],此時也稱為歸一化。《機器學習》周志華
可以發現對於每乙個樣本都有,0.4^2+0.4^2+0.81^2=1,這就是l2 norm,變換後每個樣本的各維特徵的平方和為1。類似地,l1 norm則是變換後每個樣本的各維特徵的絕對值和為1。還有max norm,則是將每個樣本的各維特徵除以該樣本各維特徵的最大值。
在度量樣本之間相似性時,如果使用的是二次型kernel,需要做normalization
from sklearn.preprocessing import normalize
x=np.array([[1.,-1.,2.],[2.,0.,0.],[0.,1.,-1.]])
help(normalize)
y1=normalize(x,axis=0)
y2=normalize(x,axis=1)
y1=[[ 0.4472136 -0.70710678 0.89442719]
[ 0.89442719 0. 0. ]
[ 0. 0.70710678 -0.4472136 ]]
y2=[[ 0.40824829 -0.40824829 0.81649658]
[ 1. 0. 0. ]
[ 0. 0.70710678 -0.70710678]]
sklearn 資料預處理
公式為 x mean std 計算時對每個屬性 每列分別進行。將資料按期屬性 按列進行 減去其均值,並處以其方差。得到的結果是,對於每個屬性 每列來說所有資料都聚集在0附近,方差為1。實現時,有兩種不同的方式 該語言能直接將給定的資料進行。from sklearn import preprocess...
sklearn的資料預處理
sklearn是乙個比較常用的機器學習庫,其中的sklearn.preprocessing包含了常用的預處理函式,一般在kaggle等資料競賽 拿到資料的時候,首先要觀察資料特徵,分布等資訊,然後進行資料預處理。資料預處理有利於計算機進行計算。原始資料存在的問題 1.存在缺失值 2.存在異常點及雜訊...
sklearn中的資料預處理
在sklearn中有這麼幾個常用的預處理方法。另外為了將資料預處理的各個階段連線起來還可以使用pipeline。類功能 說明standardscaler 無量綱化 標準化,基於特徵矩陣的列,將特徵值轉換至服從標準正態分佈 minmaxscaler 無量綱化 區間縮放,基於最大最小值,將特徵值轉換到 ...