为什么需要对数值类型的特征归一化?
对数据进行特征归一化(Normalization)处理,可以使得数据的各个特征处于同一数值量级,而不会导致模型学习出来的结果倾向于数值差别比较大的那些特征。
常用的特征归一化方法:
-
线性函数归一化(Min-Max Scaling):对原始数据进行线性变换,是结果映射到[0,1]范围,实现对原始数据的等比缩放。归一化公式为:x_norm=(x-x_min)/(x_max-x_min)
-
零均值归一化(Z-Score Normalization):将原始数据映射到 均值为0、标准差为1的分布上。我们假设原始特征的均值为μ、标准差为σ,则归一化公式为:x_norm = (x-μ)/σ
通常在实际应用中,通过梯度下降求解的模型是需要归一化的,包括线性回归、逻辑回归、支持向量机、神经网络模型等。然而并不适用于决策树模型,因为决策树在划分子树时依据的是信息增益(或基尼系数等),而信息增益与特征是否经过归一化是无关的,因为归一化并不会改变样本在特征上的信息增益。
Reference:《百面机器学习》