由于数据往往复杂多样,其中不同的特征变量可能具有不同的数值范围,这使得特征缩放成为一个必要的步骤。例如,当我们要处理医学数据时,对于同一个患者,肺活量的变化范围可能在1000到5000之间,而体重指数(BMI)的变化范围则可能在10到50之间,其他一些生理指标甚至可能处于-0.1到0.1的微小范围内。由于这些变量具有不同的单位和尺度,在进行距离度量或其他基于数值的计算时(如K近邻算法、支持向量机、聚类分析等),若不进行特征缩放处理,不同尺度的变量可能对计算结果产生不一致甚至误导性的影响。通过特征缩放,所有特征变量被调整到相同的尺度,确保它们在模型训练过程中能够以平等的权重进行比较和使用。这种处理方法不仅能够提高模型的性能,还能减少计算中的误差,从而提升分析结果的准确性和可靠性。
一、特征缩放的主要方法
特征缩放的主要方法包括数据的中心化(Centralization)和标准化(Normalization)。中心化是指将数据集中的每一个数据点减去该数据集的均值,目的在于使数据的分布中心移到原点附近,从而消除数据中的偏移量。标准化则是在数据中心化的基础上,再将数据除以该数据集的标准差,目的是使数据的分布符合标准正态分布(均值为0,标准差为1)。
这两种方法的结合能够有效消除量纲的影响,使得不同尺度的特征能够在同一尺度下进行比较。例如,假设我们有10位患者分别完成了三份不同的问卷调查(Que.1、Que.2和Que.3),我们可以使用R语言的seq()
、c()
和