DAG-GNN: DAG Structure Learning with Graph Neural Networks

Authors: Yue Yu, Jie Chen, Tian Gao, Mo Yu

ICML 2019 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental In this section, we present a comprehensive set of experiments to demonstrate the effectiveness of the proposed method DAG-GNN. In Section 4.1, we compare with DAGNOTEARS, the method proposed by Zheng et al. (2018) based on linear SEM, on synthetic data sets generated by sampling generalized linear models, with an emphasis on nonlinear data and vector-valued data (d > 1). In Section 4.2, we showcase the capability of our model with discrete data, often seen in benchmark data sets with ground truths for assessing quality. To further illustrate the usefulness of the proposed method, in Section 4.3 we apply DAG-GNN on a protein data set for the discovery of consensus protein signaling network, as well as a knowledge base data set for learning causal relations.
Researcher Affiliation Collaboration 1Lehigh University 2MIT-IBM Watson AI Lab 3IBM Research. Correspondence to: Yue Yu <yuy214@lehigh.edu>, Jie Chen <chenjie@us.ibm.com>.
Pseudocode No The paper describes the 'Training' algorithm in Section 3.8 in prose, but it does not provide structured pseudocode or an algorithm block with step-by-step formatting.
Open Source Code Yes The code is available at https:// github.com/fishmoon1234/DAG-GNN.
Open Datasets Yes We demonstrate the use of DAG-GNN on three discrete benchmark data sets: Child, Alarm, and Pigs (Tsamardinos et al., 2006). For comparison is the state-of-the-art exact DAG solver GOPNILP (Cussens et al., 2016), which is based on a constrained integer programming formulation. We use 1000 samples for learning.
Dataset Splits No The paper mentions sample sizes used for learning (e.g., '1000 samples for learning', 'n = 5000'), but it does not specify explicit training/validation/test dataset splits or proportions.
Hardware Specification No The paper does not provide specific hardware details such as GPU models, CPU types, or memory specifications used for running the experiments. It only mentions the software framework (PyTorch).
Software Dependencies No The paper states 'Our implementation is based on Py Torch (Paszke et al., 2017)' and 'We use Adam (Kingma & Ba, 2015)', which are software components. However, it does not provide specific version numbers for PyTorch or any other libraries, which is required for reproducible software dependencies.
Experiment Setup Yes Our implementation is based on Py Torch (Paszke et al., 2017). We use Adam (Kingma & Ba, 2015) to solve the subproblems (14). To avoid overparameterization, we parameterize the variational posterior q(Z|X) as a factored Gaussian with constant unit variance, and similarly for the likelihood p(X|Z). When extracting the DAG, we use a thresholding value 0.3, following the recommendation of Zheng et al. (2018). For benchmark and application data sets, we include a Huber-norm regularization of A in the objective function to encourage more rapid convergence.