quartz/content/math/statistic/anomaly_detection/IQR.md
2024-10-10 10:39:11 +08:00

2.0 KiB
Raw Blame History

title tags date
Interquartile Range
math
statistics
anomaly
2024-10-08

What is IQR

Interquartile Range, IQR, 即四分位距。 基于IQR进行anomaly detection常用于检测非正太分布数据中的异常值它通过数据的四分位数Q1和Q3来识别和去除异常值Z-score方法更适合处理有偏或非正态分布的数据。

  • 第一四分位数Q1下四分位数表示数据中最小25%的点所在位置。
  • 第三四分位数Q3上四分位数表示数据中最大25%的点所在位置。
  • 四分位距IQR是Q3与Q1之间的差值计算公式为

IQR = Q3 - Q1

Algorithm Detail

  1. 排序数据

    • 将数据从小到大排序。
  2. 计算四分位数

    • Q1找到排序后数据中第25%的位置。
    • Q3找到排序后数据中第75%的位置。
  3. 计算四分位距

    • IQR = Q3 - Q1表示数据中间部分的扩展范围。
  4. 设定上下限

    • 定义下限上限,用于判断异常值。
    • 下限 = Q1 - 1.5 × IQR
    • 上限 = Q3 + 1.5 × IQR
    • 1.5倍IQR是一个常用的经验值可以调整为其他倍数如2倍或3倍取决于具体应用场景。
  5. 检测异常值

    • 任何小于下限或大于上限的数据点被认为是异常值。

Pros and Cons

优点:

  • 不依赖数据分布IQR算法不需要假设数据为正态分布适合处理有偏分布或非对称分布的数据。
  • 对极端值不敏感与Z-score不同IQR不受极端值的影响因为它依赖于中位数和四分位数而非均值和标准差。

缺点:

  • 对大规模数据集处理效率较低在大型数据集中计算四分位数和IQR可能会比较耗时。
  • 对数据边界的敏感性虽然IQR能有效识别极端的异常值但对于靠近上下界的边缘数据可能会过度标记为异常。