先舉例:
如上兩個樣本所示,如果計算兩個樣本之間的尤拉距離,那麼樣本間的距離就會被發現時間所主導
就是將所有的資料對映到統一尺度中
最值歸一化:把所有資料對映到0-1之間
適用於分布有明顯邊界的情況(考試成績,畫素值),缺點是對於沒有明顯邊界的情況處理較差(如:個人收入)
均值方差歸一化:把所有資料歸一到均值為0,方差為1的分布中
適用於資料分布沒有明顯邊界,可能存在極端數值的情況
import numpy as np
import matplotlib.pyplot as plt
x = np.random.
randint(0
,100
,size=
100)
#最值歸一化
x_new =
(x - np.
min(x))/
(np.
max(x)
- np.
min(x)
)print
(x_new)
#矩陣的最值歸一化
# x_j = np.array(x.reshape(50,2),dtype=float)
# x_j[:,0] = (x_j[:,0] - np.min(x_j[:,0]))/(np.max(x_j[:,0]) - np.min(x_j[:,0]))
# x_j[:,1] = (x_j[:,1] - np.min(x_j[:,1]))/(np.max(x_j[:,1]) - np.min(x_j[:,1]))
# print(x_j)
#均值方差歸一化
x_j1 = np.
array
(x.reshape(50
,2),dtype=
float
)x_j1[:,
0]=(x_j1[:,
0]- np.
mean
(x_j1[:,
0]))
/(np.
std(x_j1[:,
0]))
x_j1[:,
1]=(x_j1[:,
1]- np.
mean
(x_j1[:,
1]))
/(np.
std(x_j1[:,
1]))
plt.
scatter
(x_j1[:,
0],x_j1[:,
1])plt.
show()
print
(np.
mean
(x_j1[:,
0]),np.
std(x_j1[:,
0]))
資料歸一化
近來,在網上搜了很多關於資料歸一化的帖子,看了太多,很雜,這裡整理總結一下 歸一化是一種資料預處理方法,就是要把你需要處理的資料經過處理後 通過某種演算法 限制在你需要的一定範圍內,為了後面資料處理的方便,其次是保正程式執行時 收斂加快。比如說,對於奇異樣本資料 所謂奇異樣本資料資料指的是相對於其他...
資料歸一化
如果對神經網路的 輸入和 輸出數 據進行 一定的 預處理 可以加快網路的訓練速 度 matlab 中 提供的預 處理方 法有歸一化處理 將每組資料都變為 1 至 1 之 間數 所涉及 的函式有 premnmx postmnmx tramnmx 標準化處理 將每組資料都為均 值為 0,方 差 為 1 ...
資料歸一化
資料標準化 歸一化 處理是資料探勘的一項基礎工作,不同評價指標往往具有不同的量綱和量綱單位,這樣的情況會影響到資料分析的結果,為了消除指標之間的量綱影響,需要進行資料標準化處理,以解決資料指標之間的可比性。原始資料經過資料標準化處理後,各指標處於同一數量級,適合進行綜合對比評價。以下是兩種常用的歸一...