Page 146 - 《软件学报》2026年第2期
P. 146
王浩天 等: 扩散模型引导的根因分析 625
{ }
其中, Pa j ⊆ X 1 ,...,X d \X j 表示 X j 的直接原因集合 (即对应因果图中的父节点变量), U j 代表了每个变量 X j 对应
{ } d
)
的外源噪声变量. f = f j j=1 代表了因果结构方程的集合 ( f j : R | Pa j| +1 → R ; P N 是噪声变量 U j 的联合分布. 按照以
往的惯例, 本文假设系统运维者对于系统本身的观察是充分的, 即不存在未观测的混杂变量 (马尔可夫假设), 因此
U j 之间彼此独立. 此外, 对每个变量 , 从其父节点变量集合 Pa(X i ) 到 X i 构建有向边可以得到对应的因果图 G. 鉴
X i
于马尔可夫假设, 可以立刻得到构建出来的图 G 一定是有向无环图.
2.2 数据分布和结构因果模型的映射
X
最后, 每个结构因果模型 M 定义了变量 上的唯一分布 P X [12] , 并且由于噪声变量的彼此独立性 (即马尔可
夫假设), P X 可以被进一步分解为如下形式:
∏ d ( )
P(X) = P X j |Pa j (1)
j=1
)
(
其中, P X j |Pa j 又被称为 X j 对应的因果机制. 然而, 鉴于广义的 SCM 存在两个不同的结构方程对应同一个数据
分布这一反例现象的存在 [12] , 需要对 SCM 本身添加一定的、合理的约束才能够进行相关因果统计量的识别和分
析 [20,28,29] . 本工作将考虑一种被广泛采纳并且使用的 SCM 模型, 即加性噪声模型 (additive noise model, ANM).
定义 1. 加性噪声模型. 加性噪声模型是满足如下表达的 SCM 模型:
)
(
X j = f j Pa j +U j , ∀j ∈ [d].
基于对 f j 和 U j 进一步的一些参数化假设, ANM 对应的有向无环图可以通过观测数据进行识别. 例如, 当满
足可信赖假设, 且 f j 是线性的, U j 是非高斯噪声时, 通常可以识别到对应的 DAG [28] . 又例如, 当 f j 是线性且每个
分量是三次可微分的, 那么潜在的 DAG 同样可以被识别 [31,32] .
针对加性噪声模型的进一步解释: 加性噪声模型在因果推断领域是一种较为通用的非线性 SCM 假设 [20,28,29,33] .
这一假设放松了经典统计学中, 关于线性因果模型假设所带来的约束. 而外源噪声项以加性的形式引入这一假设,
同样带来了一定的限制. 但是值得注意的是, 这并非意味着加性模型不允许噪声项的非线性组合. 换言之, 诸多例
( )
如对等式两边取对数等的操作可以将加性噪声模型变换为 f j Pa j 和 U j 的非线性组合. 本文的后续实验将从加性
噪声分别满足和不满足的角度进行进一步经验性的论证.
2.3 异常建模: 软干预和因果机制的变化
最后, 本文通过干预的形式为异常发生这一现象进行建模. 遵循之前的文献和研究经验, 不同场景下异常的发
生可以被定义为不同的干预类型, 例如污水排放系统中的外源噪声干预 [10] 或者云服务器系统中的软干预 [3] . 本文
X j 的因果机制被改变, 而剩余变量节点的因果机制保持
采用软干预这一概念来建模异常行为, 即被干预节点变量
n n,i m n c c,i m c m c 分别表示
不变. 具体来说, 本文用 X = {X } 和 X = {X } 表示异常发生前和异常发生后的数据, 其中 m n 和
i=1 i=1
c
c,i m c
正常数据和异常数据的样本量. 基于上述概念, 本文将异常发生后的数据, 即 X = {X } , 对应的分布刻画如下:
i=1
∏ ( ) ∏ ( ) ∏ ( )
n
c
c
c
P (X) = P X j |Pa j = P X j |Pa j P X j |Pa j ,
j∈[d] j∈Inv j<Inv
c
n
其中, Inv 表示被干预的节点变量集合. 此外, 令 G 和 G 分别表示干预后和干预前的因果图. 从上述分布可以看
( ) ( )
c n
出, 异常发生前和异常发生后的数据分布发生变化的部分仅落在被干预节点的因果机制, 即 P X j |Pa j , P X j |Pa j
对所有 Inv 中的节点成立. 在本文中, 有的时候会交替使用异常发生前 (观测数据) 和异常发生后 (干预数据) 这两
组概念. 基于上述背景知识, 下面给出软干预和根因分析的形式化定义.
(
)
定义 2. 软干预. 某个节点变量 X j 被软干预, 指的是其给定 Pa j 的条件分布在干预前后发生了变化: P X j |Pa j ,
c
( )
n
P X j |Pa j .
定义 3. 根因分析. 给定异常发生前和异常发生后的数据, 即 X = {X } 和 X = {X } , 根因分析旨在识别集
n
c
n,i m n
c,i m c
i=1 i=1
{
)
(
}
)
(
Inv = X j |P X j |Pa j , P X j |Pa j , j ∈ [d] .
n
c
合
为了方便阅读, 我们将本文涉及的相关重要符号说明以表 1 的形式进行梳理.
进而, 结合本文对根因分析问题的定义, 这里对 SCM 做出参数化的一些假设和限制, 以确保可识别性的成立.
假设 1. 非线性可微 SCM. 本文假设, 对于 SCM 中的每个结构函数 f j , 其满足如下两个性质:

