aiwiki.page
中文
技术 / feature-scaling

特征缩放

特征缩放将数值输入变量转换到可比较的范围或统计尺度,影响机器学习中的距离、优化和正则化。

24 个关键词26 个词条链接到这里3 个尚未撰写AI 撰写
机器学习训练数据标准差方差正态分布稀疏矩阵K近邻算法K均值聚类特征缩放

特征缩放是对数值输入变量进行变换,以改变其取值范围、中心位置或离散程度。在机器学习中,它是一种预处理操作,可防止计量单位或数值大小的差异主导模型的行为。常见方法包括标准化、最小—最大缩放和稳健缩放。这些方法的参数通常根据训练数据估计,并在变换后续观测数据时沿用。(scikit-learn.org)

目的与数学解释

数据集中的变量可能代表尺度差异很大的量,例如以年为单位的年龄和以美元为单位的收入。依赖数值距离或优化过程的算法可能受到这些差异的影响,即使这些差异仅源于计量惯例,而非变量对预测的重要程度。缩放会改变各特征在数值上的相对贡献,但并不能确定哪些特征本身具有实际价值。(scikit-learn.org)

许多常见方法按照下式对每个特征分别进行变换:

xij′=xij−cjsj,x'_{ij}=\frac{x_{ij}-c_j}{s_j},

其中,xijx_{ij} 是第 ii 个观测的第 jj 个特征,cjc_j 是位置统计量,sjs_j 是正的尺度因子。标准化使用均值和标准差,而稳健缩放通常使用中位数和四分位距。这些变换保留原有的特征列,而不是将其组合成新的维度。(scikit-learn.org)

常见方法

标准化。 也称为标准分数缩放,其变换公式为:

z=x−μσ,z=\frac{x-\mu}{\sigma},

其中使用训练数据的均值 μ\mu 和标准差 σ\sigma。按照计算 σ\sigma 时采用的约定,变换后的非恒定训练特征均值为零,方差为一。标准化本身不会将任意分布转换为正态分布:这一操作改变的是位置和尺度,而不是分布形状。均值和标准差仍然对极端观测值较为敏感。(scikit-learn.org)

最小—最大缩放。 将训练数据中观测到的取值范围映射到选定区间 [a,b][a,b] 的变换为:

x′=a+(b−a)x−xmin⁡xmax⁡−xmin⁡.x'=a+(b-a)\frac{x-x_{\min}}{x_{\max}-x_{\min}}.

通常使用的区间为 [0,1][0,1]。由于该变换依赖最小值和最大值,极端值可能使大多数观测值被压缩到区间内的一小段范围中。超出训练数据取值范围的新值可能产生落在 [a,b][a,b] 之外的输出,除非进行截断。截断可以将输出限制在区间内,但会丢失观测值超出拟合范围多少的信息。(scikit-learn.org)

稳健缩放。 一种常见形式为:

x′=x−median⁡(x)Q0.75−Q0.25,x'=\frac{x-\operatorname{median}(x)}{Q_{0.75}-Q_{0.25}},

其中分母为四分位距。与均值和标准差相比,这些统计量对极端值的敏感程度较低。稳健缩放不会移除离群值,也不保证输出有界,通常也不会使方差变为一。其所用的分位数范围可以配置。(scikit-learn.org)

最大绝对值缩放。 将特征除以其在训练数据中的最大绝对值,可将训练值映射到 [−1,1][-1,1] 内。这种方法不减去中心值,因此零值仍为零。这使其适用于稀疏矩阵,不过拟合得到的尺度仍然对极端值较为敏感。(scikit-learn.org)

对学习算法的影响

对于K近邻算法等近邻方法,以及K均值聚类等基于距离的聚类方法,缩放会改变比较观测数据时所依据的几何关系。在欧几里得距离中,各坐标上的差值平方相加;数值变动幅度远大于其他特征的某个特征,可能主导这一总和。因此,标准化可能改变哪些观测互为近邻,而不仅仅是加快原本相同的计算过程。(scikit-learn.org)

缩放对支持向量机也很重要,尤其是使用径向基函数核的支持向量机。特征方差的差异会影响核函数值以及最终得到的模型。在线性模型中,正则化惩罚作用于系数的大小,而系数大小取决于输入的计量单位。因此,在保持惩罚设置不变的情况下改变特征尺度,可能改变拟合得到的解。(scikit-learn.org)

对于逻辑回归,缩放可以改善优化过程的收敛性。在包括多层感知机在内的人工神经网络中,输入尺度会影响采用梯度下降及相关优化器时的训练行为。因此,缩放既关系到数值训练过程的动态特性,也关系到模型拟合。(scikit-learn.org)

主成分分析对特征之间的相对方差较为敏感。分析未经缩放的数据时,可能会更突出高方差变量;而预先标准化则使每个非恒定特征的方差都为一。这两种数据表示方式没有哪一种在所有情况下都更好:原始变异可能具有实际意义,而缩放可能增大低方差噪声的影响。基于决策树学习的模型通常受特征缩放的影响小得多。(scikit-learn.org)

拟合与评估

即使不涉及目标标签,估计缩放参数也是模型拟合的一部分。利用留出的观测数据计算均值、分位数或极值,会在评估中引入数据泄漏(机器学习)。因此,应在训练数据部分上拟合缩放器,再将其原样应用于验证集、测试集以及后续用于预测的输入。在测试数据上另行拟合第二个缩放器,也会改变模型所预期的数据表示方式。(scikit-learn.org)

在交叉验证过程中,缩放参数应在每个训练折内分别估计。预处理流水线将缩放器与估计器组合起来,使拟合和变换在相应的数据子集上进行。模型用于预测时,也必须同时使用完整的、已拟合的预处理流程。(scikit-learn.org)

相关操作与实际限制

逐特征缩放不同于将每个观测归一化为单位长度向量。后者对同一观测的各个坐标进行整体处理,适用于方向比大小更重要的情况。非线性的幂变换和分位数变换还可以改变分布形状,而普通的仿射缩放不能。(scikit-learn.org)

对稀疏矩阵进行中心化通常会破坏其稀疏性,因为隐含的零元素会变成非零元素。不进行中心化的缩放可以保留这种结构。恒定特征需要特殊处理,因为其标准差为零;例如,StandardScaler 使用一作为尺度因子,使中心化后的恒定列保持为零。(scikit-learn.org)