Deep End-to-end Causal Inference
文章目录
优势:DECI结合了Causal Discovery 和 ATE estimation
一、介绍
DECI的主要贡献有:
- 提供了一个基于深度学习的端到端因果推断的框架,且能同时进行因果发现和因果推断
- 提供了DECI的理论分析
- 将DECI扩展应用于真实数据
- 通过大量实验洞察端到端因果推断(ECI)的效果
二、Related Work
1. Causal Discovery
现有的通过观测数据进行因果发现的算法主要可以分为以下三类:
- Constraint-based causal discovery methods
- Score-based causal discovery methods
- Functional causal models
最近,DAGs with NO TEARS论文中,将DAG结构框架学习转化为一个连续优化任务。[某论文]使用非线性函数逼近器(如神经网络)来构建已连接变量之间的关系。DECI结合了这类方法与标准的因果假设,还扩展了funtion methods用于处理混合类型变量和数据缺失。
除了functional causal models,其余算法往往不能得出变量之间的函数关系,因此我们需要依靠不同的模型(具有潜在不兼容的假设或输入的模型)来进行因果推断。此外,基于约束和基于分数的方法通常会返回PAG或CPDAG。对于以上两个问题,在这种情况下DECI会返回DAG的分布。
2. Causal Inference
因果推断可以分为两个步骤,identification 和 estimation。(简单介绍两个步骤)
三、DECI
1. DECI and Causal Discovery
DECI基于 ANM SEM,采用贝叶斯方法进行因果发现。接下来,我们来看Causal Discovery部分的结构设计。
首先,我们将观测变量
O
O
O 和因果图
G
G
G 的联合分布写为,
p
θ
(
x
1
,
.
.
.
,
x
N
,
G
)
=
p
(
G
)
∏
n
p
θ
(
x
n
∣
G
)
p_\theta(x^1,...,x^N,G)=p(G)\prod_np_\theta(x^n|G)
pθ(x1,...,xN,G)=p(G)n∏pθ(xn∣G)
其中
θ
\theta
θ 为我们需要拟合的加性噪声模型的参数。模型拟合完成后,我们用后验分布
p
θ
(
G
∣
x
1
,
.
.
.
,
x
N
)
p_\theta(G|x^1,...,x^N)
pθ(G∣x1,...,xN) 表示对于因果图结构的置信度。
接下来,引入No Tears中提出的对于DAG的惩罚项,
h
(
G
)
=
t
r
(
e
G
⨀
G
)
−
D
h(G)=tr(e^{G\bigodot G})-D
h(G)=tr(eG⨀G)−D
将图的先验概率
p
(
G
)
p(G)
p(G) 定义为,
p
(
G
)
∝
e
x
p
(
−
λ
s
∣
∣
G
∣
∣
F
2
−
ρ
h
(
G
)
2
−
α
h
(
G
)
)
p(G) \propto exp(-\lambda_s||G||_F^2-\rho h(G)^2-\alpha h(G))
p(G)∝exp(−λs∣∣G∣∣F2−ρh(G)2−αh(G))
用G的F范数保证图的稀疏性。用
α
\alpha
α 和
ρ
\rho
ρ 作为DAG惩罚项的权重,按照增广拉格朗日法的流程,
α
\alpha
α 和
ρ
\rho
ρ 会逐步增大,从而确保迭代收敛时只保留DAG。
F 范数:即矩阵所有元素的平方和的算术平方根。
结构方程模型的似然函数
根据加性噪声模型的假设,噪声z可以表示为
z
=
g
G
(
x
;
θ
)
=
x
−
f
G
(
x
;
θ
)
z=g_G(x;\theta)=x-f_G(x;\theta)
z=gG(x;θ)=x−fG(x;θ) ,假设我们有
z
i
z_i
zi 的分布函数
p
z
i
p_{z_i}
pzi ,那么观测变量的似然函数就可以表示成
p
θ
(
x
n
∣
G
)
=
p
Z
(
g
G
(
x
n
;
θ
)
)
=
∏
i
=
1
D
p
z
i
(
g
G
(
x
n
;
θ
)
)
p_\theta (x^n|G)=p_Z(g_G(x^n;\theta))=\prod_{i=1}^{D}p_{z_i}(g_G(x^n;\theta))
pθ(xn∣G)=pZ(gG(xn;θ))=i=1∏Dpzi(gG(xn;θ))
对于加性噪声模型中的 f(G) ,本文采用了一种较为灵活的表达方式
f
i
(
x
)
=
ξ
i
(
∑
j
=
1
d
G
j
,
i
l
j
(
x
j
)
)
f_i(x)=\xi_i\begin{pmatrix} \sum_{j=1}^d G_{j,i}\ l_j(x_j) \end{pmatrix}
fi(x)=ξi(∑j=1dGj,i lj(xj))
其中
ξ
和
l
\xi 和l
ξ和l 是多层感知机函数。
外部噪声模型 p z p_z pz 的选择
- 假设高斯噪声分布,其中方差可学习
- 流模型
p z i ( z i ) = N ( κ i − 1 ( z i ) ∣ 0 , 1 ) ∣ ∂ κ i − 1 ( z i ) ∂ z i ∣ p_{z_i}(z_i)=\mathcal{N}(\kappa_i^{-1}(z_i)|0,1) \bigg |\frac{\partial \kappa_i^{-1}(z_i)}{\partial z_i} \bigg| pzi(zi)=N(κi−1(zi)∣0,1) ∂zi∂κi−1(zi)
看不懂,双射??
训练与推导
该模型存在两处难点。1. G的真实后验分布是未知的;2. 由于最大似然依赖于对G的结构的假设,它还无法直接用来拟合模型参数。因此,我们引入一个变分分布 q ϕ ( G ) q_\phi(G) qϕ(G)来近似后验分布 p θ ( G ∣ x 1 , . . . , x N ) p_\theta(G|x^1,...,x^N) pθ(G∣x1,...,xN) ,从而构建证据下界
变分贝叶斯推断
由于最大似然估计的目标为 p θ ( x ) p_\theta(x) pθ(x) ,难以直接优化,需要引入G,构建ELBO
E L B O ( θ , ϕ ) = E q ϕ ( G ) [ l o g p ( G ) ∏ n p θ ( x n ∣ G ) ] + H ( q ϕ ) ≤ l o g p θ ( X 1 , . . . , x N ) ELBO(\theta, \phi)=E_{q_\phi(G)} \Big [log\ p(G) \prod_n p_{\theta}(x^n|G)\Big]+H(q_\phi ) \leq log \ p_\theta(X^1, ...,x^N) ELBO(θ,ϕ)=Eqϕ(G)[log p(G)n∏pθ(xn∣G)]+H(qϕ)≤log pθ(X1,...,xN)
(ELBO公式推导需要用到Jesen不等式)
采用EM算法的思路,分别优化 ϕ \phi ϕ 和 θ \theta θ
(未完待续)