统计异常值根因识别新方法

本文介绍了一种基于信息论和因果模型的全新方法,能够量化识别统计异常值的根本原因。该方法通过概率校准构建IT异常评分,利用反事实分析和Shapley值解决变量排序依赖问题,可应用于分布式系统性能分析等实际场景。

机器学习新方法识别统计异常值根本原因

异常值是指系统偏离常规行为的罕见观测值,常见于医学、金融等实际应用场景。与普通事件相比,异常值更需要得到合理解释。在近期召开的国际机器学习会议(ICML)上,研究人员提出了一种识别异常值根本原因的新方法。

定义量化因果贡献

该方法首次对"根本原因"进行了形式化定义,提出了量化因果贡献的概念。每个根本原因对观测异常值的贡献程度得以精确描述,这甚至涉及到哲学领域关于"实际原因"的持续争论。

基于图形因果模型的方法

该方法基于图灵奖得主Judea Pearl开发的图形因果模型框架,包含两个关键组成部分:

  • 因果图:以可视化方式表示观测变量间的因果关系,箭头从原因节点指向结果节点
  • 因果机制:描述每个节点值如何从其父节点(直接原因)的值生成

信息论异常评分

研究团队引入了信息论(IT)异常评分,通过概率校准对现有异常评分进行标准化处理。该评分基于尾概率概念(随机变量超过阈值的概率),受到香农信息论中随机事件信息量定义的启发。观测事件比目标事件更极端的可能性越低,该事件携带的信息越多,IT异常评分越高。

反事实分析

通过提出反事实问题:“如果该变量的因果机制正常,该事件是否不会成为异常值?“来归因异常事件。这需要功能因果模型(FCM)作为变量的因果机制。

在FCM中,每个变量Xj是其观测父节点PAj和未观测噪声变量Nj的函数。通过随机分配正常确定性机制给Xj,可以解释为对观测变量的干预。

消除排序依赖性

为避免变量排序带来的任意性,该方法采用所有排序的平均贡献,这也是博弈论中Shapley值方法的核心思想。Shapley贡献总和等于异常事件的IT异常评分。

实际应用示例

以零售网站分布式Web服务为例:

  • 通过反转依赖图中的箭头获得服务的延迟因果图
  • 从观测延迟的训练样本中学习因果机制
  • 将特定客户的缓慢加载时间归因于Web服务中最可能的根本原因

该方法已在Python DoWhy库的"gcm"包中实现,并提供示例笔记本供快速入门。

相关研究领域:机器学习 标签:因果推断、因果分析、ICML

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计