在機器學習中,特征歸一化是一項重要的預處理步驟。特征歸一化的目的是將不同范圍的特征值縮放到相同的范圍,并且在一些模型中能夠提升模型的效果。
import numpy as np def min_max_scaling(feature): """ min-max scaling,歸一化到[0, 1]之間 """ return (feature - np.min(feature)) / (np.max(feature) - np.min(feature)) def z_score_scaling(feature): """ z-score scaling,標準差歸一化 """ return (feature - np.mean(feature)) / np.std(feature)
代碼中實現了兩種常見的特征歸一化方法,分別是min-max scaling和z-score scaling。
min-max scaling將特征值縮放到[0,1]之間,公式為:
X' = (X - Xmin) / (Xmax- Xmin)
其中,X是原始特征值,X'min和X'max是歸一化后的區間值。
z-score scaling則是將特征值轉化為標準正態分布,公式為:
X' = (X - μ) / σ
其中,μ是特征值的均值,σ是特征值的標準差,X'是歸一化后的特征值。
在python中,我們可以使用numpy庫來實現特征歸一化的操作。使用該庫可以方便地對整個數組或者矩陣進行向量化操作,提高了代碼的效率。
上一篇python 現實換行符
下一篇python 球鞋機器人