归一化
因为 每一列数据的量纲不同,导致 数据分布区间存在差异。(人的身高可以是 180cm,也可以是 1.8m,这两个虽然表示意义相同,但是由于单位的不同,导致 机器学习在计算过程中也容易出现差异,所以就需要对数据进行归一化)。通过归一化,每个维度都是去量纲化的,避免了不同量纲的选取对距离计算产生的巨大影响。
归一化方法
- 线性比例变换法:
- 极差变换法:
将原始数据线性化的方法转换到[0 1]的范围。由于极值化方法在对变量无量纲化过程中仅仅与该变量的最大值和最小值这两个极端值有关,而与其他取值无关,这使得该方法在改变各变量权重时过分依赖两个极端取值。
- 0均值标准化:
虽然该方法在无量纲化过程中利用了所有的数据信息,但是该方法在无量纲化后不仅使得转换后的各变量均值相同,且标准差也相同,即无量纲化的同时还消除了各变量在变异程度上的差异,从而转换后的各变量在聚类分析中的重要性程度是同等看待的。而实际分析中,经常根据各变量在不同单位间取值的差异程度大小来决定其在分析中的重要性程度,差异程度大的其分析权重也相对较大。
需要归一化的模型
- 基于距离计算的模型:KNN;
- 通过梯度下降法求解的模型:线性回归、逻辑回归、支持向量机、神经网络
不需要归一化的模型
- 树形模型:决策树、随机森林(Random Forest)