当前项目中需要对所有图表计算它们之间的相似性,我们通过计算两两图表间的欧式距离来衡量其相似性。然而直接使用图表的原始数据进行计算会导致即使图表相似性极高但因为数据范围差别过大而失败,这里我们考虑对原始数据进行处理,将所有数据映射到某一个固定区间之内再计算。
这里就用到了特征缩放(Feature scaling),特征缩放(Feature Scaling)是将不同特征的值量化到同一区间的方法,也是预处理中容易忽视的关键步骤之一。这里,就要了解一些具体的方法:标准化(Standardization)和归一化(Normalization)。
以下内容如有误漏敬请指正。
1.归一化(Normalization)
概念:
将数据映射到[0,1]或[-1,1]区间内,不会改变数据的特征,将有量纲的表达式转换成无量纲的表达式,即标量。
常用方法:
min-max normalization:
min(x):样本最小值,max(x):样本最大值,但是最大最小值容易受到异常点的影响,健壮性比较差,使用于传统的精确小数据。
Mean normalization:
average(x):样本均值。
2.标准化(Standardization):
概念:
将数据标准化处理之后,均值变为0,方差变为1,即服从标准正态分布。
常用方法:
z-score标准化:
σ:样本标准差。
3.如何选择以上两种方法
- 如果对输出结果范围有要求,用归一化。
- 如果数据较为稳定,不存在极端的最大最小值,用归一化。
- 如果数据存在异常值和较多噪音,用标准化,可以间接通过中心化避免异常值和极端值的影响。