歸一化特徵是數據挖掘的一項基礎工作,不同評價指標往往具有不同的量綱和量綱單位,這樣的情況會影響到數據分析的結果,為了消除指標之間的量綱影響,需要進行數據標準化處理,以解決數據指標之間的可比性。原始數據經過數據標準化處理後,各指標處於同一數量級,適合進行綜合對比評價。
基本介紹
- 中文名:歸一化特徵
- 外文名:Normalized feature
背景
常用方法
Standardization
Min-Max Scaling
代碼實現
def standardize(X):
"""特徵標準化處理
Args:
X: 樣本集
Returns:
標準後的樣本集
"""
m, n = X.shape
# 歸一化每一個特徵
for j in range(n):
features = X[:,j]
meanVal = features.mean(axis=0)
std = features.std(axis=0)
if std != 0:
X[:, j] = (features-meanVal)/std
else
X[:, j] = 0
return X
def normalize(X):
"""Min-Max normalization sklearn.preprocess 的MaxMinScalar
Args:
X: 樣本集
Returns:
歸一化後的樣本集
"""
m, n = X.shape
# 歸一化每一個特徵
for j in range(n):
features = X[:,j]
minVal = features.min(axis=0)
maxVal = features.max(axis=0)
diff = maxVal - minVal
if diff != 0:
X[:,j] = (features-minVal)/diff
else:
X[:,j] = 0
return X</span>