什么是异常值检测?
异常值是指与其余对象显著不同的数据对象,就好像它是由不同的机制产生的。为了演示内容,可以将非异常值数据对象定义为“正常”或预期数据。通常,可以将异常值定义为“异常”数据。
异常值是无法在一个给定的类别或集群中组合的数据成分。这些数据对象的行为与其他数据对象的通常行为存在差异。这种数据的分析对于挖掘知识可能非常重要。
异常值引人注目,因为它们被怀疑并非由与其余数据相同的结构产生。因此,在异常值检测中,必须解释为什么所识别的异常值是由不同的机制产生的。
单类分类被称为异常值(或新颖性)检测,因为学习算法可用于区分关于训练记录分布的正常和异常数据。
例如,通过观察新内容不断涌现的社交媒体网站,新颖性检测可以迅速识别新的主题和趋势。新颖的主题最初可能表现为异常值。
异常值检测和新颖性检测在建模和检测方法上有一些相似之处。但两者之间的一个关键区别在于,在新颖性检测中,一旦确认了新的主题,它们通常会被整合到一般行为模型中,以便后续实例不再被视为异常值。
单类分类的一种通用统计方法是将异常值识别为与给定百分比 p 的训练信息的距离 d 超过一定距离的实例。此外,可以通过将包括高斯分布在内的统计分布拟合到训练信息来计算目标类的概率密度;一些具有低概率值的测试实例可能表现为异常值。
可以通过围绕焦点数据拟合边界并将落在边界外部的示例视为异常值,将多类分类器调整到单类位置。可以通过固定当前多类分类器(包括支持向量机)的内部工作来创建边界。
这些方法很大程度上依赖于一个参数,该参数决定目标信息有多少可能被定义为异常值。如果选择过于保守,焦点类中的数据将被错误地丢弃。如果选择过于宽松,模型将过拟合并拒绝过多的合法记录。拒绝率通常无法在测试期间修改,因为需要在训练时选择适当的参数值。
广告