DAGs with NO TEARS: Continuous Optimization for Structure Learning
DAGs with NO TEARS: Continuous Optimization for Structure Learning
概
有向图可以用邻接矩阵\(A \in \{0, 1\}^{d \times d}\)来表示, 其中\(A_{ij} = 1\) 表示 node \(i\) 指向 node \(j\). 进一步的, 我们想要表示有向无环图(DAG), 则\(A\)需要满足额外的性质, 保证无环.
现在的问题是, 有一堆观测数据\(X \in \mathbb{R}^{n \times d}\), 如何通过这些数据推测其(特征之间的)关系, 即对应的\(A\).
主要内容
首先, 假设特征之间满足一个线性关系:
\]
其中
\]
\(z\)为随机的噪声.
通过\(W\)可以推出相应的\(A=\mathcal{A}(W)\), 即
\]
故我们目标通常是:
\mathrm{s.t.} \quad \mathcal{A}(W) \in \mathbb{D},
\]
其中\(\mathbb{D}\)表示有向无环图.
进一步地, 因为我们希望\(W\)是一个系数的矩阵(否则断然不是DAG), 故
\]
并
\mathrm{s.t.} \quad \mathcal{A}(W) \in \mathbb{D}.
\]
显然现在的关键是如何处理\(\mathcal{A}(W) \in \mathbb{D}\)这个条件, 以前的方法通常需要复杂的运算, 本文提出一种等价的条件
\]
满足
- \(h(W)= 0\)当且仅当\(\mathcal{A}(W) \in \mathbb{D}\);
- \(h(W)\)越小, 说明\(\mathcal{A}(W)\)越接近无环图;
- \(h(W)\)是一个光滑函数;
- \(h(W)\)便于求导.
显然1是期望的, 2可以用于判断所得的\(W\)的优劣, 3, 4便于我们用数值方法求解.
等价条件的推导
\(\mathrm{tr}(I-W)^{-1} = d\)
Proposition 1: 假设\(W \in \mathbb{R}_+^{d \times d}\) 且 \(\|W\| < 1\), 则\(\mathcal{A}(W)\)能够表示有向无环图当且仅当
\]
proof:
\(A = \mathcal{A}(W)\)能够表示有向无环图, 当且仅当
\]
\(\Rightarrow\)
由于\(\|W\| < 1\)(最大奇异值小于1), 故
\]
\(\Leftarrow\)
\(\mathrm{tr}(W^k) \ge 0\), 故
\]
当且仅当
\]
注: \(\|W\| < 1\)这个条件并不容易满足.
\(\mathrm{tr}(e^W)=d\)
注: \(e^A = I + \sum_{k=1} \frac{A^k}{k!}\).
Proposition 2: 假设\(W \in \mathbb{R}_+^{d \times d}\), 则\(\mathcal{A}(W)\)能够表示有向无环图当且仅当
\]
proof:
证明是类似的.
注: 此时对\(W\)的最大奇异值没有要求.
\(\mathrm{tr}(W^k) = 0\)
这部分的证明可能应该归属于DAG-GNN.
Proposition 3: 假设\(W \in \mathbb{R}_+^{d \times d}\) , 则\(\mathcal{A}(W)\)能够表示有向无环图当且仅当
\]
proof:
\(\Rightarrow\)是显然的, 证明\(\Rightarrow\)只需说明
\]
假设\(W\)的特征多项式为\(p(\lambda) = \sum_{k=0}^d \beta_k \lambda^k, \beta_d=1\), 则有
\]
进一步有
\]
由归纳假设可知结论成立.
Corollary 1: 假设\(W \in \mathbb{R}_+^{d \times d}\) , 则\(\mathcal{A}(W)\)能够表示有向无环图当且仅当
\]
\(\mathrm{tr}(e^{W \circ W}) =d\)
注: \(\circ\) 表示哈达玛积, 即对应元素相乘.
上面依然要求\(W\)各元素大于0, 一个好的办法是:
Theorem 1: 一个矩阵\(W \in \mathbb{R}^{d \times d}\), 则\(\mathcal{A}(W)\) 能表示有向无环图当且仅当
\]
proof:
\(\mathcal{A}(W)=\mathcal{A}(W \circ W)\).
\(\mathrm{tr}(I + W \circ W)^d =d\)
Theorem 2: 一个矩阵\(W \in \mathbb{R}^{d \times d}\), 则\(\mathcal{A}(W)\) 能表示有向无环图当且仅当
\]
注: \(W \circ W\)前面加个系数也是没关系的.
性质的推导
故, 此时我们只需设置
\]
显然满足1,2,3, 接下来我们推导其梯度
\mathrm{d}h(W)
&= \mathrm{d}\: \mathrm{tr} (e^{W\circ W}) \\
&= \mathrm{tr} (\mathrm{d}e^{W\circ W}) \\
&= \mathrm{tr} (\mathrm{d}\sum_{k=1} \frac{M^k}{k!}) \\
&=\sum_{k=1} \mathrm{tr} ( \frac{\mathrm{d}M^k}{k!}) \\
&=\sum_{k=0} \mathrm{tr} ( \frac{M^k \mathrm{d}M}{k!}) \\
&= \mathrm{tr}(e^{W\circ W} \cdot \mathrm{d}(W\circ W)) \\
&= \mathrm{tr}(e^{W\circ W} \cdot (2W \circ \mathrm{d} W)) \\
&= \mathrm{tr}(e^{W\circ W} \circ 2W^T \cdot \mathrm{d} W) \\
\end{array}
\]
故
\]
注: 其中\(M =W \circ W\).
求解
利用augmented Lagrangian转换为(这一块不是很懂, 但只是数值求解的东西, 不影响理解)
\]
具体求解算法如下:
代码
DAGs with NO TEARS: Continuous Optimization for Structure Learning的更多相关文章
- DAG-GNN: DAG Structure Learning with Graph Neural Networks
目录 概 主要内容 代码 Yu Y., Chen J., Gao T. and Yu M. DAG-GNN: DAG structure learning with graph neural netw ...
- Masked Gradient-Based Causal Structure Learning
目录 概 主要内容 最终的目标 代码 Ng I., Fang Z., Zhu S., Chen Z. and Wang J. Masked Gradient-Based Causal Structur ...
- Gradient-based Hyperparameter Optimization through Reversible Learning
目录 概 主要内容 算法 finite precision arithmic 实验 Maclaurin D, Duvenaud D, Adams R P, et al. Gradient-based ...
- 论文解读(SUBLIME)《Towards Unsupervised Deep Graph Structure Learning》
论文信息 论文标题:Towards Unsupervised Deep Graph Structure Learning论文作者:Yixin Liu, Yu Zheng, Daokun Zhang, ...
- 机器学习 —— 概率图模型(Homework: Structure Learning)
概率图的学习真的要接近尾声了啊,了解的越多越发感受到它的强大.这周的作业本质上是data mining.从数据中学习PGM的结构和参数,完全使用数据驱动 —— No structure, No par ...
- Federated Optimization: Distributed Machine Learning for On-Device Intelligence
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:1610.02527v1 [cs.LG] 8 Oct 2016 坐标下降法:https://blog.csdn.net/qq_ ...
- A novel multi-swarm particle swarm optimization with dynamic learning strategy(一种新颖的具有动态学习策略的多种群粒子群优化算法)
1.核心 在每个子种群的粒子被划分为普通粒子(ordinary particles)和交流粒子(communication particles),在每次迭代过程中,不同的粒子执行不同的进化操作.普通粒 ...
- ADAM : A METHOD FOR STOCHASTIC OPTIMIZATION
目录 概 主要内容 算法 选择合适的参数 一些别的优化算法 AdaMax 理论 代码 Kingma D P, Ba J. Adam: A Method for Stochastic Optimizat ...
- Loss Landscape Sightseeing with Multi-Point Optimization
目录 概 主要内容 代码 Skorokhodov I, Burtsev M. Loss Landscape Sightseeing with Multi-Point Optimization.[J]. ...
随机推荐
- 面向Web应用的并发压力测试工具——Locust实用攻略
1. 概述 该方案写作目的在于描述一个基于Locust实现的压力测试,文中详细地描述了如何利用locustfile.py文件定义期望达成的测试用例,并利用Locust对目标站点进行并发压力测试. 特别 ...
- Spark集群环境搭建——部署Spark集群
在前面我们已经准备了三台服务器,并做好初始化,配置好jdk与免密登录等.并且已经安装好了hadoop集群. 如果还没有配置好的,参考我前面两篇博客: Spark集群环境搭建--服务器环境初始化:htt ...
- 容器之分类与各种测试(四)——map
map和set的区别在于,前者key和value是分开的,前者的key不会重复,value可以重复:后者的key即为value,后者的value不允许重复.还有,map在插入时可以使用 [ ]进行(看 ...
- node环境变量配置
1.Node.js 官方网站下载:https://nodejs.org/en/ 2.打开安装,傻瓜式下一步即可,然后配置环境变量 3.因为在执行例如npm install webpack -g等命令全 ...
- entfrm-boot开发平台功能介绍【entfrm开源模块化无代码开发平台】
简介 entfrm开发平台,是一个以模块化为核心的无代码开发平台,是一个集PC和APP快速开发.系统管理.运维监控.开发工具.OAuth2授权.可视化数据源管理与数据构建.API动态生成与统计.工作流 ...
- Shell脚本实现根据文件的修改时间来分类文件
#!/bin/bash # exctute # ./mod.sh file_type input_folder output_folder # ./mod.sh *.txt /tmp /data/ # ...
- centos 7 zookeeper 单体和集群搭建
1.操作相关命令 1.0 安装命令 wget :下载解压包 tar -xzvf :解压 1.1 创建节点 create / node : 创建一个名字为node的 空节点 creat ...
- html如何让input number类型的标签不产生上下加减的按钮(转)
添加css代码: <style> input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { -webkit- ...
- Python——连接数据库操作
一.数据库基础用法 要先配置环境变量,然后cmd安装:pip install pymysql 1.连接MySQL,并创建wzg库 #引入decimal模块 import pymysql #连接数据库 ...
- pycharm的破解和基本使用
pycharm的破解 pycharm的账号注册 在完成安装后打开pycharm软件,需要选择购买或是使用.点击试用,选择进入官网注册账号. 进入官网后选择邮箱登录,输入自己的邮箱,点击sign up ...