异常值检测方法概述

2025年3月17日 | 阅读 10 分钟

异常值检测是指识别明显偏离其他数据点的数据点的过程。在数据挖掘中,统计方法、基于邻近度的方法和基于模型的方法是检测异常值的三种主要方法。基于统计的方法依赖于均值和方差,基于邻近度的方法依赖于基于密度或距离的度量,而基于模型的方法则假设特定的分布或模型。所采用的方法取决于数据集和所针对的异常值类型。

异常值有哪些类型?

异常值检测,也称为异常检测,是数据挖掘中一项重要的工作。它解释了如何识别数据集中与替代记录显著不同的信息元素。

异常值在数据分析中可能带来问题,因为它们会扭曲结果并误导统计模型。数据集中可能包含各种异常值。以下是一些最常见的异常值类型:

全局异常值:被归类为全局异常值的数据点是那些明显偏离数据集其余部分的数据点。它们通常是测量误差、不正确的数据输入或罕见事件的结果。

集体异常值:它们可能指向数据或子组的独特潜在分布。

异常值引起的问题

异常值在数据挖掘中可能导致几个问题,包括:

扭曲的统计分析:异常值对均值、方差和其他统计参数的显著影响可能导致不准确的结论和有偏差的统计分析。

误导性可视化:图表和直方图可能因异常值而扭曲,从而难以辨别信息中的模式和关系。

模型准确性降低:统计模型和设备研究算法无法适应异常值的意外值,因为它们旨在处理大部分数据。因此,异常值有可能降低这些风格的准确性。

箱形图

箱形图,有时称为盒须图,有助于定位数据集中的异常值。为了显示数据集的分布,箱形图显示了中位数、四分位数和异常值。事实的中间50%由中位数显示,它显示为容器中心的一条线。晶须从箱形延伸到不被视为异常值的最低和最高值。

您可以通过将异常值绘制为超出晶须的突出点来找到数据集中的异常值。如果这些变量超出箱形图外1.5倍四分位数范围(IQR),则通常被视为异常值。此技术有助于可视化任何特征的异常值。例如,在下图中,蓝色和黄色的点将被视为异常值。

Overview of outlier detection methods

距离均值法

识别数据集中异常值的另一种方法是距离均值法。在多元分析中,它有助于发现异常值。通过此过程,计算每个事实元素与数据集均值的距离,并将结果与阈值进行比较。偏离阈值超过均值的事实点称为异常值。

阈值可以使用标准差的倍数或距离分布的特定百分位数来找到。

异常值检测方法的挑战

在数据分析中寻找异常值是一项艰巨的任务。其中存在许多困难。主要障碍包括:

选择最佳行动方案:由于信息挖掘中存在多种异常值识别算法,因此很难决定哪种异常值识别策略最适合特定数据集和研究目标。例如,某些策略可能对某些类型的数据(例如连续变量或特定变量)表现更好,而其他技术可能更适合小型或大型数据集。

特定于应用的异常值识别:用于异常值检测的数据挖掘技术必须针对每个独特的应用和领域进行定制。

例如,异常值的概念可以应用于交易场景,以及医学中的罕见疾病和金融欺诈的识别。

在寻找异常值时处理噪声:异常值和噪声不是一回事。因此,当使用信息挖掘算法进行异常值检测时,数据中的噪声可能导致假阳性或假阴性。

可解释性:在事实挖掘中使用异常值识别方法时,尤其是在复杂或高维数据集的情况下,结果可能难以理解。例如,在过度维度的空间中,识别或表征异常值簇可能很困难。

处理维度过多的记录:识别高维统计数据中的异常值是一项具有挑战性的任务,因为传统方法可能效果不佳或可能受到“维度诅咒”的阻碍。例如,“基于距离的异常值检测策略”可能会随着记录挖掘中维度范围的增加而变得不可靠。其他异常值检测技术也可能需要使用功能选择策略或广泛的处理资源。

异常值检测应用

异常值检测在众多行业中有无数用途。一些更流行的用途是:

修改质量:异常值检测用于制造和生产中,以识别有缺陷的物品,例如损坏的系统或故障部件。

网络安全:异常值检测可用于识别异常或可疑的社区站点访问趋势,以及入侵尝试或恶意软件感染。

异常值有哪些不同类型?

与机器学习模型相关的异常值分为三类。异常数据如何被看待以及数据点与其余数据集合的区别,区分了每种类型。由于每种类型都有独特的模式可供查找,因此类型是在进行异常值分析时需要考虑的关键因素。

异常值的三种主要类型是:

  • 点异常值
  • 上下文异常值
  • 集体异常值

什么是点异常值?

单个统计数据中消失在整体数据集多样性之外的一个方面被称为点异常值。异常值将显著偏离数据集中可能存在的任何可识别的模式、风格或分组,作为一个额外的信息元素。点异常值通常是测量或数据输入错误的结果。

例如,如果在输入患者数据时发生测量错误,则卫生部门的数据中可能存在异常。在测量患者身高时遗漏一位数字将导致数据集中出现一个明显的点异常值。如今,视觉上定位这种异常通常不太困难。当数据集以二维或三维显示时,可能会看到因子异常值,即与数据集其余部分显著不同的统计因子。

什么是上下文异常值?

上下文异常值是指仅在特定上下文中显著偏离数据集的数据点。数据集的上下文可能随季节变化或响应更广泛的经济模式或行为。当数据集的上下文发生变化时,明显的上下文异常值将变得显而易见。这可能包括经济变化、季节性天气模式、重大节假日期间消费者行为的变化,或者仅仅是时间。因此,在某些情况下,上下文异常值可能看起来是一个典型的数据点。

例如,给定一个包含英国多个季节和年份历史温度的数据集。在冬天,中午低于零的温度可能被认为是正常的。然而,如果这个读数是在七月中旬的热浪中取得的,它将被视为上下文异常。信息被置于影响数据集的更广泛趋势的上下文中。

什么是集体异常值?

一组明显偏离数据集其余部分模式的数据点称为集体异常值。集体异常值可能包含单独的数据点,这些数据点看起来不像点异常值或上下文异常值。当数据点作为一个集合查看时,会发现异常模式。

因此,集体异常值可能最难定位。在机器学习中,集体异常值在概念漂移监控中起着关键作用。一系列数据点偏离了模型的预测行为。

一个例子可能是时间序列,它绘制了电子邮件营销列表的订阅者和退订者,以显示每日或季节性变化。如果订阅者数量几周没有变化,则可能被视为集体异常值。由于个人用户取消订阅和新用户订阅是常见的,因此静态总数将被视为异常。

当单独考虑时,每个数据点都落在数据的预期范围内,因此不被视为上下文异常值或点异常值。然而,当数据被视为一个序列时,其行为被标记为异常。当发现集体异常值时,可以调查任何过程范围的错误。

机器学习异常值检测涉及什么?

异常值的识别是在创建算法和实施机器学习模型时需要考虑的关键因素。确保高质量数据需要识别训练数据集中的异常值。大量可靠数据对于机器学习算法识别模式和识别趋势是必不可少的。在大多数情况下,具有高质量训练数据的机器学习模型更准确。

在为监督机器学习模型准备和标记训练数据时,数据科学家可能会发现并消除异常值。对于用于对未标记数据集进行分类的无监督机器学习模型,可能会在过程后期发现异常值。这可能导致机器学习开发过程需要更多时间和资源。

此外,异常值检测对于机器学习模型的持续维护和监控也至关重要。机器学习模型在实施后必须持续观察,以确保其准确性。预测模型中反复出现的异常值或异常数据增加可能表明概念漂移。确定异常值是否表示模型的结构性问题是一项具有挑战性的任务。在这种情况下,可以重新训练或重新校准模型以提高其效率。

机器学习算法的预期目的通常包括异常值检测以及训练和监控。通过使用异常值检测,旨在对数据进行分类或发现模式的算法也可以用于突出异常。

机器学习在银行中用于检测欺诈性购买的应用就是一个很好的例子。该模型将使用异常值检测技术来发现偏离典型账户行为的活动。此数据可用于将问题升级以获得人工帮助并启动账户冻结。

两种异常值检测方法

有适用于各种任务和文件类型的机器学习算法。异常值的类型和潜在异常值将因模型而异,无论是训练用于根据过去的营销活动预测营销支出,还是将照片分类为集群。为了帮助阐明异常值如何被发现和分类的基本原理,有两种通用的异常值检测技术。

异常值检测技术主要有两种:

  • 利用数据点密度和距离检测异常值。
  • 构建模型来预测数据点的分布,并识别低于用户指定截止值的异常值。

为什么我们需要异常值分析?

数据和分析在日常企业管理和决策中变得越来越重要。为了评估企业绩效,组织使用他们定义和跟踪的关键绩效指标。确保有利的用户体验统计数据、推动销售决策、实现高价值营销活动以及保持产品质量都依赖于数据集的监控。对数据质量的信任至关重要,因为数据驱动的决策在许多公司中变得越来越重要。为了保持这种信任,异常值分析至关重要。

异常值会扭曲从数据集中得出的预测和趋势,从而对判断的准确性和质量产生不利影响。通过主动监控和异常值检测,可以防止机器学习模型中的概念漂移并识别数据集中的缺陷。

异常值的主要原因是什么?

除了数据处理和收集中的特定错误外,数据集本身中未识别的特征也可能是异常值的来源。通过使用异常值分析来确定异常值的原因,企业可以解决数据中的潜在问题。

为了训练机器学习算法和模型,各种形式的机器学习依赖于各种类型的数据。异常值通常是人为错误的结果,尤其是在监督机器学习需要标记和准备数据时。然而,所有类型的数据集和机器学习用例中都可能存在由测量或数据提取错误引起的异常值。

在机器学习中,异常值的常见原因包括:

  • 在输入或标记数据时发生人为错误。
  • 数据收集或测量过程中发生的错误。
  • 提取、处理或操作数据时发生的错误。
  • 用于评估异常值识别技术的人工异常值。
  • 并非错误的自然发生的异常;这些有时被称为数据集新颖性。

结论

总而言之,异常值识别是机器学习和数据分析的重要组成部分,在许多领域都有应用。数据的特征和研究的特定目标将决定哪种异常值检测技术最适合。每种技术都有优缺点,因此为了获得可靠的结果,可能需要结合策略或模型集成。

如果关于数据分布的基本假设是正确的,那么 Z-Score 和 IQR 等传统统计技术是简单有效的。数据点之间的空间关系可用于使用 KNN 和到质心的距离等基于距离的技术来识别异常值。DBSCAN 和 LOF 等基于密度的技术可以成功识别具有不同数据密度区域中的异常值。

在数据挖掘中,异常值识别技术有多种形式,从箱形图和 IQR 等简单方法到机器学习和统计模型等更复杂的方法。在数据挖掘中,数据的类型、研究目的和应用上下文都会影响合适异常值识别技术的选择。考虑异常值检测所涉及的困难至关重要,包括识别定义异常值的参数、管理噪声和可解释性问题以及处理高维数据。

用于异常值识别的数据挖掘技术可以提供有关数据的深刻信息,例如识别不寻常或罕见的模式、发现异常和欺诈、增强网络安全和网络安全以及优化质量控制和预测性维护。