返回

异常值侦测:基于统计学的利器

人工智能

现代数据科学仰赖完善的异常值侦测技术,从中识别出不符合常态的数值,进而排除其对后续分析的影响。本文将透过深入浅出的讲解和实际案例,为您剖析基于统计学的异常值侦测算法,助您掌握此项关键技术。

异常值侦测的目标与思路

异常值,顾名思义,是指与正常数据显著不同的数值,可能是错误测量、人为失误或潜在异常现象的征兆。异常值侦测旨在识别这些离群值,将其从数据集中剔除,以确保后续分析结果的准确性和可靠性。

统计学异常值侦测算法的基本思路,在于假设数据服从特定的分布(例如正态分布),然后根据分布的特性来判定哪些数值属于异常值。常见的方法包括标准方差、四分位数和混合模型等算法。

标准方差异常检测算法

标准方差算法是基于正态分布的异常值侦测方法。它使用数据的均值和标准差作为基准,判定哪些数值距离均值超过一定倍数的标准差,即为异常值。具体而言,该算法将数据点的标准分数计算为:

z = (x - μ) / σ

其中,x 为数据点,μ 为均值,σ 为标准差。根据正态分布特性,当 z 值大于 3 时,表示数据点落在均值正负三个标准差之外,一般被视为异常值。

四分位数异常检测算法(箱线图)

四分位数异常值侦测算法利用四分位数(Q1、Q2、Q3)来划分数据分布。首先,将数据按照从小到大的顺序排列,然后:

  • Q1:数据分布下四分之一的分界点
  • Q2:数据分布的中位数
  • Q3:数据分布上四分之一的分界点

异常值的判定方法为:

  • 小于 Q1 - 1.5 * (Q3 - Q1) 的数据点视为异常值。
  • 大于 Q3 + 1.5 * (Q3 - Q1) 的数据点视为异常值。

一种可调优的异常数据检测算法

以下是一种综合上述算法优点的可调优异常值侦测算法:

  1. 首先,对数据进行正态分布检验。如果数据不符合正态分布,则使用四分位数算法。
  2. 如果数据符合正态分布,则计算数据点的标准分数 z 值。
  3. 设置异常值判定阈值 z。默认情况下,z > 3 为异常值。
  4. 用户可以根据实际情况调整 z 阈值,以提高或降低异常值检测的灵敏度。

实际案例

案例:航空公司维护日志数据分析

一家航空公司需要对飞机维护日志数据进行异常值侦测,以识别潜在的维护问题。数据包含飞机的飞行时间、燃料消耗和引擎温度等参数。

解决方案:

  1. 使用四分位数算法识别飞行时间异常值。
  2. 使用标准方差算法识别燃料消耗异常值。
  3. 使用可调优算法识别引擎温度异常值,并根据实际情况调整 z 阈值。

结果:

异常值侦测算法成功识别了数据中的异常数据点,包括过长的飞行时间、异常高的燃料消耗和不正常的引擎温度。这些异常值被排除在后续分析之外,确保了维护计划的准确性,保障了飞机的安全运行。

总结

基于统计学的异常值侦测算法是数据科学中不可或缺的技术,它能帮助我们有效识别异常值,从而提升数据分析的准确性和可信度。本文所介绍的标准方差、四分位数和可调优算法,为不同类型的数据提供了全面的异常值侦测方案。掌握这些算法,将赋能您充分挖掘数据的价值,为决策提供坚实的依据。