Yu Y., Chen J., Gao T. and Yu M. DAG-GNN: DAG structure learning with graph neural networks. In International Conference on Machine Learning (ICML), 2019.
概
有向无环图 + GNN + VAE.
主要内容
先前已经有工作(NOTEARS)讨论了如何处理线性SEM模型
X=ATX+Z,
A∈Rm×m为加权的邻接矩阵, m代表了有向无环图中变量的数目, Z是独立的noise. 需要特别说明的是, 在本文中, 作者假设每一个结点变量Xi并非传统的标量而是一个向量 (个人觉得这是很有意思的点, 有点胶囊的感觉), 故X∈Rm×d, 这里Xi为X的第i行.
本文在此基础上更进一步, 考虑非线性的情况:
g(X)=ATg(X)+f1(Z),
如果g可逆, 则可以进一步表示为
X=f2((I−AT)−1f1(Z)).
为了满足这一模型, 作者套用VAE, 进而最大化ELBO:
LELBO=Eqϕ(Z|X)[logpθ(X|Z)]−DKL(qϕ(Z|X)∥p(Z)),
整个VAE的流程是这样的:

-
encoder:
MZ,logSZ=f4((I−AT)f3(X)),Z∼N(MZ,S2Z).
-
decoder
MX,SX=f2((I−AT)−1f1(Z)),ˆX∼N(MX,S2X).
注: 因为每个结点变量都不是标量, 所以考虑上面的流程还是把X,Z拉成向量md再看会比较清楚.
此时
DKL(qϕ(Z|X)∥p(Z))=12m∑i=1d∑j=1{[SZ]2ij+[MZ]2ij−2log[SZ]ij−1}.
仅最大化ELBO是不够的, 因为这并不能保证A反应有向无环图, 所以我们需要增加条件
h(A)=tr[(I+αA∘A)m]=m,
具体推导看NOTEARS, 这里α=cm, c>0是一个超参数, 这个原因是
(1+α|λ|)m≤ec|λ|,
所以合适的c能够让条件更加稳定.
最后目标可以总结为:
minϕ,θ,A−LELBOs.t.h(A)=0.
同样的, 作者采用了augmented Lagrangian来求解
(Ak,ϕk,θk)=argminA,ϕ,θ−LELBO+λh(A)+c2|h(A)|2,λk+1=λk+ckh(Ak),ck+1={ηck,if|h(Ak)|>γ|h(Ak−1)|,ck,otherwise.
这里η>1,γ<1, 作者选择η=10,γ=1/4.
注: c逐渐增大的原因是, 显然当c=+∞的时候, h(A)必须为0.
注: 作者关于图神经网络的部分似乎就集中在X的模型上, 关于图神经网络不是很懂, 就不写了.
代码
原文代码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2019-05-30 matplotlib 高阶之patheffect (阴影,强调)