更新于 2026年8月21日

异常值#


术语解释#

在机器学习中,异常值(Outlier),也常被称为离群点或异常样本,是指那些在数据集中显著偏离其它(大多数样本)观测值的样本点,它可能来源于数据错误,也可能是真实但罕见的现象。异常值会干扰模型训练,因此通常需要识别并通过删除、截断(Clipping)或数据变换等方法进行处理。

例如在聚类算法(如 DBSCAN)中,异常点被定义为密度低且相对孤立的样本点。具体而言,如果一个样本点对于其它任何样本点来说均不满足“直接可达”的条件(即不在任何核心样本的半径范围内),则该点被判定为异常点。 相关内容可参见「11.10 基于密度的聚类算法:DBSCAN 原理与应用」

DBSCAN 聚类中的异常样本点
例如图中的白色样本点可以被认为是异常点

在支持向量机(SVM)中,异常值通常表现为那些不满足严格间隔约束条件的点,其函数间隔可能小于1,甚至被错误地划分到了另一类样本的区域中。相关内容可参见「10.7 SVM优化问题:目标函数与约束条件解析」

支持向量机中的异常样本点
例如图中的 $x^{(5)}$ 样本点便可以被认为是异常点

影响#

异常值对某些算法(如硬间隔 SVM)极其敏感,如果训练集中加入一个异常点,决策边界可能会为了拟合该点而发生剧烈摆动,导致分类间隔变得极其狭窄,从而大幅降低模型的泛化能力。

支持向量机中的异常样本点
图 10-9 SVM软间隔与硬间隔

在图10-9中,实线为相应的决策面,黑色方块和黑色圆点分别为两个类别的样本。在图10-9(a)中,通过SVM建模得到的决策面已经完美地将两种类别的样本点进行了区分,但是,如果此时训练样本中加入一个异常点,并且继续用SVM建模求解,则将会得到图10-9(b)中所示的分类决策面。可以发现,虽然此时决策面也成功地区分开了每个样本点,但是相较于图10-9(a)中的决策面却发生了剧烈的摆动,决策面到支持向量的距离也变得十分狭窄。 相关内容可参见「10.4 SVM软间隔原理:噪声样本与惩罚因子C」

异常值往往被视为训练集中的“噪声”,如果模型过于复杂,试图拟合每一个样本点(包括异常点),就会产生过拟合现象。相关内容可参见「4.3 过拟合处理方法:常见原因、表现与正则化实战」

总结就是,异常值是数据集中的“少数派”。虽然它们可能由数据采集误差(噪声)产生,也可能代表了真实的特殊情况,但其存在往往会挑战模型的稳定性。选择具有鲁棒性的算法(如 DBSCAN)或引入惩罚机制是处理异常值的常用手段。

阅读 --

4.3 过拟合

在这节中,我们首先介绍了什么是拟合,进而介绍了拟合后带来的3种状态,即欠拟合、恰拟合与过拟合,其中恰拟合的模型是我们最终所需要的结果。接着,我们介绍了解决欠拟合与过拟合的几种方法,其中解决过拟合的两种具体方法将在后续的内容中分别进行介绍。

10.7 SVM优化问题

经过前面几节内容的介绍,我们已经知道了支持向量机背后的原理。为了求解SVM中的目标函数,我们还在前面两节内容中陆续介绍了拉格朗日乘数法和对偶性问题。接下来,将开始正式介绍SVM的求解过程。同时,为了便于各位读者循序渐进地了解整个求解过程,下 …

11.10 基于密度的聚类算法

在前面几节内容中,我们陆续介绍了3种常见聚类算法的原理与实现过程,包括原始的Kmeans聚类算法、Kmeans++聚类算法以及基于特征权重的加权Kmeans聚类算法 ,并且这3种都算是基于Kmeans框架下的聚类算法,也就是说它们本质上解决 …

10.4 SVM中的软间隔

在前面几节内容中,我们分别介绍了什么是支持向量机及如何通过sklearn来完成整个SVM的建模过程,然后还介绍了什么是线性不可分与核函数的用法。在接下来的这节内容中,我们将继续介绍SVM中的软间隔及其在sklearn中的示例用法。