特征缩放(Feature Scaling
)
- 特征缩放是数据预处理过程中时长被忽略的关键的一步。
- 决策树和随机森林是机器学习算法中为数不多的两个不需要进行特征缩放的算法。
- 大部分机器学习算法和优化算法在进行特征缩放后的数据上能够有刚好的表现。
- 在多指标评价体系中,由于各评价指标的性质不同,通常具有不同的量纲和数量级。当各指标间的水平相差很大时,如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱数值水平较低指标的作用。因此,为了保证结果的可靠性,需要对原始指标数据进行标准化处理。
- 特征缩放的优点:
特征缩放的方法
- 归一化(
normalization
): 归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。变换后将特征值缩放到[0,1]区间。
from sklearn.preprocessing import MinMaxScaler
mms = MinMaxScaler()
X_train_norm = mms.fit_transform(X_train)
X_test_norm = mms.transform(X_test)
- 标准化(
standardization
):将某变量中的观察值减去该变量的平均数,然后除以该变量的标准差。经过标准差标准化后,各变量将有约一半观察值的数值小于0,另一半观察值的数值大于0,变量的均值为0,标准差为1。经标准化的数据都是没有单位的纯数量。对变量进行的标准差标准化可以消除量纲(单位)影响和变量自身变异的影响。
from sklearn.preprocessing import StandardScaler
stdsc = StandardScaler()
X_train_std = stdsc.fit_transform(X_train)
X_test_std = stdsc.transform(X_test)