在进行特征选择之前,一般会先进行数据无量纲化处理,这样,表征不同属性(单位不同)的各特征之间才有可比性。例如,2cm和0.2kg如何直接比较?无量纲化处理的方法很多,选择不同方法会对机器学习模型产生不同的影响。常用方法包括归一化(Normalization)等。

示例代码:

from sklearn.datasets import load_iris
# 导入IRIS数据集
iris = load_iris()

from sklearn.preprocessing import StandardScaler
# 标准化,返回值为标准化后的数据
scaled_data = StandardScaler().fit_transform(iris.data)

常用的无量纲化方法

  1. 归一化(Normalization):将特征值缩放到指定范围(如0到1),适用于特征分布差异较大的情况。
  2. 标准化(Standardization):基于均值和标准差对数据进行缩放,使数据满足标准正态分布,适用于有异常值的场景。
  3. MinMax Scaling:将数据缩放到指定区间(如0到1),对数据分布要求较少。

不同的无量纲化方法适用于不同的场景,合理选择可以提升模型表现。