扩散模型引导的根因分析:一种不依赖因果发现的高效新范式
一、 研究团队与发表信息
本研究由国防科技大学计算机学院的王浩天、王尚文(通信作者)、靳若春、黄万荣、杨文婧、王戟,以及海军工程大学信息安全系的周学广共同完成。该研究成果以论文形式发表于《软件学报》(Journal of Software)2026年第37卷第2期。
二、 学术背景与研究目标
本研究属于人工智能、机器学习和复杂系统运维交叉领域,具体聚焦于根因分析这一关键任务。根因分析旨在从系统异常前后的数据中,定位引发复杂系统故障的根本原因,对于保障云服务、工业系统等大型复杂系统的可靠运行至关重要。
当前,基于因果关系的根因分析方法被认为是实现精准定位的最优选择之一。这类方法通常建立在结构因果模型(Structural Causal Model, SCM)之上。然而,主流方法普遍采用“因果发现-根因定位”的两阶段框架:首先需要从数据中学习因果图结构,再基于学到的因果图进行根因推断。这种框架存在两个固有缺陷:1) 目标不一致:根因分析的目标是识别被干预的变量子集,而因果发现的目标是识别完整的因果图(边集合),前者并非必须依赖后者;2) 误差传播:根因定位的准确性严重依赖于上游因果发现的效果,而因果发现任务本身在高维复杂数据上仍面临稳定性、可验证性等挑战。
近期,基于得分函数的干预识别方法受到关注,它通过对比干预前后数据分布得分函数导数的方差来直接识别被干预变量,有望绕过因果发现步骤。但现有方法(如iSCAN)在估计得分函数时,通常采用基于核方法的斯坦估计,其计算复杂度随样本量呈平方增长,且难以对真实世界的高维复杂非线性数据分布进行有效建模。
鉴于此,本研究提出了一种名为DERCA的根因分析新策略。其核心目标是:探索并实现一种不依赖因果发现、且能高效处理大规模复杂非线性数据的端到端根因分析新范式。研究旨在利用近年来在数据生成领域取得突破的扩散模型来克服得分函数估计的瓶颈,从而直接、精准地识别根因变量集合。
三、 研究方法与详细工作流程
本研究提出的DERCA方法(扩散模型引导的根因分析)及其优化版本ODRCA,其核心工作流程可概括为以下几个关键步骤:
第一步:理论基础构建与问题形式化。 研究首先将系统异常建模为对结构因果模型的软干预,即异常发生后,部分变量的因果机制(给定父变量下的条件分布)发生改变,而因果图结构保持不变。根因分析的目标即是从异常前后的观测数据中,识别出这些被干预的变量集合。研究基于加性噪声模型这一广泛使用的SCM假设,推导出关键理论:在混合分布(正常与异常数据的加权融合)中,一个变量得分函数一阶导数的方差若大于零,则该变量既是干预前因果图的叶节点,也是干预后因果图的叶节点,并且它属于根因(被干预)集合。这为不依赖因果图而直接识别根因变量提供了理论依据。
第二步:基于扩散模型的得分函数高效估计。 这是本研究的核心创新点。传统方法估计数据分布的得分函数及其高阶导数(海森矩阵)非常困难。本研究巧妙地利用去噪扩散概率模型(Denoising Diffusion Probabilistic Model, DDPM)或去噪扩散隐式模型(Denoising Diffusion Implicit Model, DDIM)的特性。扩散模型在训练过程中,其优化目标本质上是在匹配数据分布的得分函数。因此,研究通过训练扩散模型来拟合正常数据、异常数据以及两者混合数据的分布。一旦模型训练完成,即可通过该模型在推理阶段高效地估计出对应数据分布的得分函数及其雅可比矩阵(对应海森矩阵的对角线元素),从而绕过复杂的解析估计。这一步骤将得分函数估计的复杂度从传统方法的O(n²)降低到了O(n)(n为样本量),使其能够处理海量数据。
第三步:迭代剪枝与根因识别算法。 基于估计出的得分函数雅可比矩阵,研究设计了一个迭代算法来识别根因。算法包含两个核心判定原则,在一个循环中交替执行: 1. 共同叶节点定位:在每个迭代轮次中,计算当前剩余变量集合在正常和异常数据下得分函数一阶导的方差。将两者方差之和最小的变量判定为当前因果图中的“共同叶节点”(即在干预前后因果图中均为叶节点的变量)。 2. 根因判定与剪枝:对于识别出的共同叶节点,检查其在混合数据分布下得分函数一阶导的方差。若该方差大于预设阈值(理论推导中应为>0,实践中设为一个小的正数阈值t),则判定该变量为根因变量,并将其加入结果集;否则,仅将其视为普通叶节点。无论是否被判定为根因,都将该叶节点从当前变量集合中“剪枝”移除。 算法重复以上步骤,直至所有变量被处理完毕,最终输出的集合即为识别出的根因变量集合。
第四步:高效剪枝策略(ODRCA算法)。 在基础算法(DARCA)中,每次剪枝后都需要在剩余变量构成的新数据集上重新训练扩散模型以估计新的得分函数,计算开销巨大。为此,本研究提出了一个关键的理论贡献(定理1):剪枝前后数据分布的得分函数之差,可以通过剪枝前分布的得分函数及其海森矩阵精确计算出来。基于此定理,研究提出了优化算法ODRCA。该算法只需在最初的全变量数据集上训练一次扩散模型,后续每次剪枝后,无需重新训练模型,而是通过公式(4)直接更新得分函数和海森矩阵的估计。这极大地提升了算法效率,使其真正具备了处理高维问题的实用性。
第五步:实验验证与评估。 研究通过仿真数据和真实数据集全面验证所提方法的有效性、高效性和鲁棒性。 * 仿真实验:在两种典型的因果图结构(Erdős–Rényi图和Scale-Free图)上生成数据,并设置不同的节点数、图稀疏度和噪声分布(高斯、均匀、拉普拉斯)。将DERCA/ODRCA与三类基线方法对比:1) 基于相关性的方法(ϵ-diagnosis);2) 基于因果发现的两阶段方法(CIRCA, ψ-PC, Mulan, UT-IGSP);3) 无需因果发现的干预检测方法(iSCAN, LinearEst)。 * 真实数据实验:在两个著名的工业数据集上进行测试:SWaT(水处理测试平台)和WADI(水分配网络)。这些数据集包含系统正常运行和遭受攻击/故障时的传感器数据,提供了真实的根因分析场景。 * 评估指标:采用F1分数衡量根因集合识别的准确率。在开放环境(真实根因数量未知)下,采用Precision@K(推荐的前K个最可能根因的精度)进行评估。同时,记录各方法的运行时间以评估效率。
四、 主要研究结果
实验结果表明,本研究提出的方法在多个维度上表现出显著优势:
精准的根因识别能力(RQ1):在仿真数据上,ODRCA方法在大多数设置下(不同图结构、稀疏度、噪声类型)的F1分数均达到或接近最优水平,显著优于基于相关性的方法和部分基于因果发现的方法。这验证了所提理论框架和算法在准确识别根因变量集合方面的有效性。特别是在非线性、非高斯噪声的数据设置下,ODRCA的表现明显优于基于线性假设的方法(LinearEst),也优于依赖核估计的iSCAN方法,证明了扩散模型在建模复杂数据分布上的优势。
卓越的计算效率(RQ2):运行时间分析显示,ODRCA方法的效率远高于需要重复进行条件独立性检验或图搜索的因果发现方法(如ψ-PC、UT-IGSP),也显著优于计算复杂度为O(n²)的iSCAN方法。ODRCA的时间消耗主要与样本量n呈线性关系,与变量维度d的三次方相关,这使其能够扩展到大规模真实数据集。在SWaT和WADI数据集上的实验证实了其处理真实海量数据的可行性。
开放环境下的稳健表现(RQ3):在真实数据集上,当根因数量未知时,ODRCA方法在Precision@K指标上表现优异。例如,当推荐最可能的K个根因时(K=1,3,5,7,10),ODRCA的精度 consistently较高,表明其排序结果可靠,能够为运维人员提供高质量的候选根因列表。
对模型假设的鲁棒性(RQ4):尽管理论推导基于加性噪声模型,但实验在非加性噪声设置下(通过数据变换模拟)进行测试,ODRCA方法仍保持了较好的性能。这表明该方法在实际应用中对模型假设的违反具有一定的鲁棒性。
消融实验验证:研究通过消融实验证实了扩散模型引导的关键作用。对比使用传统核方法估计得分函数的版本,基于扩散模型的版本在精度和效率上均有大幅提升,凸显了采用先进生成模型解决传统估计难题的价值。
五、 研究结论与价值
本研究成功提出并验证了一种全新的根因分析范式——扩散模型引导的根因分析。其主要结论与价值体现在:
六、 研究亮点
七、 其他有价值内容
论文还对相关工作进行了系统的梳理,清晰划分了根因分析(分为基于先验知识的领域分析法和基于因果发现的两阶段法)和干预识别(基于约束的方法、基于特定统计量的方法)两大研究方向,并指出了各自局限,从而凸显了本研究的出发点和贡献所在。此外,论文详细阐述了结构因果模型、软干预、得分函数、扩散模型等背景知识,使得工作自成体系,便于读者理解。