Inferring Causal Phenotype Networks from Segregating Populat

Similar documents
Causal Network Models for Correlated Quantitative Traits. outline

Causal Graphical Models in Systems Genetics

Causal Model Selection Hypothesis Tests in Systems Genetics

Quantile-based permutation thresholds for QTL hotspot analysis: a tutorial

Quantile based Permutation Thresholds for QTL Hotspots. Brian S Yandell and Elias Chaibub Neto 17 March 2012

Mapping multiple QTL in experimental crosses

Introduction to QTL mapping in model organisms

TECHNICAL REPORT NO December 1, 2008

Causal Graphical Models in Quantitative Genetics and Genomics

NIH Public Access Author Manuscript Ann Appl Stat. Author manuscript; available in PMC 2011 January 7.

Learning in Bayesian Networks

Introduction to QTL mapping in model organisms

Learning With Bayesian Networks. Markus Kalisch ETH Zürich

arxiv: v1 [stat.ap] 7 Oct 2010

Supplementary Materials to Learning Sparse Causal Gaussian Networks With Experimental Intervention: Regularization and Coordinate Descent

Inferring Genetic Architecture of Complex Biological Processes

TECHNICAL REPORT NO April 22, Causal Model Selection Tests in Systems Genetics 1

Mapping multiple QTL in experimental crosses

An Introduction to Reversible Jump MCMC for Bayesian Networks, with Application

R/qtl workshop. (part 2) Karl Broman. Biostatistics and Medical Informatics University of Wisconsin Madison. kbroman.org

COMP538: Introduction to Bayesian Networks

Causality in Econometrics (3)

Computational Genomics. Systems biology. Putting it together: Data integration using graphical models

Respecting Markov Equivalence in Computing Posterior Probabilities of Causal Graphical Features

Multiple QTL mapping

Introduction to Probabilistic Graphical Models

Bayesian Networks: Construction, Inference, Learning and Causal Interpretation. Volker Tresp Summer 2014

Introduction to QTL mapping in model organisms

Abstract. Three Methods and Their Limitations. N-1 Experiments Suffice to Determine the Causal Relations Among N Variables

Statistical issues in QTL mapping in mice

Causal Model Selection Hypothesis Tests. in Systems Genetics

Graphical models and causality: Directed acyclic graphs (DAGs) and conditional (in)dependence

QTL Model Search. Brian S. Yandell, UW-Madison January 2017

Automatic Causal Discovery

Overview. 1. Terms and Definitions. 2. Model Identification. 3. Path Coefficients

Towards an extension of the PC algorithm to local context-specific independencies detection

Arrowhead completeness from minimal conditional independencies

Identifiability assumptions for directed graphical models with feedback

25 : Graphical induced structured input/output models

A graph contains a set of nodes (vertices) connected by links (edges or arcs)

Directed and Undirected Graphical Models

A CAUSAL GENE NETWORK WITH GENETIC VARIATIONS INCORPORATING BIOLOGICAL KNOWLEDGE AND LATENT VARIABLES. By Jee Young Moon

Directed acyclic graphs and the use of linear mixed models

6.047 / Computational Biology: Genomes, Networks, Evolution Fall 2008

Bayesian Networks: Construction, Inference, Learning and Causal Interpretation. Volker Tresp Summer 2016

Use of hidden Markov models for QTL mapping

11 The Max-Product Algorithm

Supplementary material to Structure Learning of Linear Gaussian Structural Equation Models with Weak Edges

Graphical Model Selection

CPSC 540: Machine Learning

Gene mapping in model organisms

Probabilistic Graphical Models (I)

Lecture 11: Multiple trait models for QTL analysis

Chris Bishop s PRML Ch. 8: Graphical Models

Lecture 4 October 18th

25 : Graphical induced structured input/output models

Using background knowledge for the estimation of total causal e ects

Bayesian Networks to design optimal experiments. Davide De March

Gaussian Graphical Models and Graphical Lasso

Learning Multivariate Regression Chain Graphs under Faithfulness

CSC 412 (Lecture 4): Undirected Graphical Models

SPARSE MODEL BUILDING FROM GENOME-WIDE VARIATION WITH GRAPHICAL MODELS

Linkage analysis and QTL mapping in autotetraploid species. Christine Hackett Biomathematics and Statistics Scotland Dundee DD2 5DA

Calculation of IBD probabilities

Causal Discovery by Computer

arxiv: v1 [stat.ml] 23 Oct 2016

An Introduction to the spls Package, Version 1.0

Inferring the Causal Decomposition under the Presence of Deterministic Relations.

Summary of the Bayes Net Formalism. David Danks Institute for Human & Machine Cognition

Statistical Approaches to Learning and Discovery

Counterfactual Reasoning in Algorithmic Fairness

An Algorithm for Bayesian Variable Selection in High-dimensional Generalized Linear Models

Causal Discovery. Richard Scheines. Peter Spirtes, Clark Glymour, and many others. Dept. of Philosophy & CALD Carnegie Mellon

Learning causal network structure from multiple (in)dependence models

GRAPHICAL MODELS FOR HIGH DIMENSIONAL GENOMIC DATA. Min Jin Ha

BTRY 7210: Topics in Quantitative Genomics and Genetics

Markov properties for directed graphs

Machine Learning 4771

Causal Structure Learning and Inference: A Selective Review

27: Case study with popular GM III. 1 Introduction: Gene association mapping for complex diseases 1

Predicting causal effects in large-scale systems from observational data

Probabilistic Graphical Models

Probabilistic Graphical Models

Bayes Networks. CS540 Bryan R Gibson University of Wisconsin-Madison. Slides adapted from those used by Prof. Jerry Zhu, CS540-1

Calculation of IBD probabilities

Linear Regression (1/1/17)

Probabilistic Graphical Models

Bayesian Networks BY: MOHAMAD ALSABBAGH

Gene Regulatory Networks II Computa.onal Genomics Seyoung Kim

A Decision Theoretic View on Choosing Heuristics for Discovery of Graphical Models

arxiv: v3 [stat.me] 10 Mar 2016

PCA and admixture models

When Should We Use Linear Fixed Effects Regression Models for Causal Inference with Panel Data?

Protein Complex Identification by Supervised Graph Clustering

Representation of undirected GM. Kayhan Batmanghelich

Cheng-Ruei Lee 1 *, Jill T. Anderson 2, Thomas Mitchell-Olds 1,3. Abstract. Introduction

Learning the Structure of Linear Latent Variable Models

Final Examination CS 540-2: Introduction to Artificial Intelligence

10708 Graphical Models: Homework 2

Recall from last time. Lecture 3: Conditional independence and graph structure. Example: A Bayesian (belief) network.

Transcription:

Inferring Causal Phenotype Networks from Segregating Populations Elias Chaibub Neto chaibub@stat.wisc.edu Statistics Department, University of Wisconsin - Madison July 15, 2008

Overview Introduction Description of the approach PC algorithm. QDG algorithm. Remarks Performance on simulations. Real data example. Future work.

Introduction Our objective is to learn metabolic pathways from data. We represent these pathways by directed networks composed by transcripts, metabolites and clinical traits. These phenotypes are quantitative in nature, and can be analyzed using quantitative genetics techniques.

Introduction In particular, we use Quantitative Trait Loci (QTL) mapping methods to identify genomic regions affecting the phenotypes. Since variations in the genotypes (QTLs) cause variations in the phenotypes, but not the other way around, we can unambiguously determine the causal direction QTL phenotype Knowing that a QTL causally affects a phenotype will allow us to infer causal direction between phenotypes.

Introduction We assume that a set of QTLs associated with the phenotypes has been previously determined. We assume linear relationships between phenotypes and between phenotypes and QTLs.

Introduction Our procedure is composed of two parts: 1. First we infer the skeleton of the causal model (phenotype network) using the PC-algorithm. 2. Orient the edges in the skeleton using the QDG algorithm.

PC algorithm Causal discovery algorithm developed by Spirtes et al 1993. It is composed of two parts: 1. Infers the skeleton of the causal model. 2. Partially orient the graph (orient some but not all edges). We are only interested in the first part (the PC skeleton algorithm ). We do not use the PC algorithm to edge orientation (we use the QDG algorithm instead).

Step 1 (PC skeleton algorithm) Suppose the true network describing the causal relationships between six transcripts is y 1 y 2 y 6 y 3 y 5 y 4 The PC-algorithm starts with the complete undirected graph y 1 y 2 y 6 y 3 y 5 y 4 and progressively eliminates edges based on conditional independence tests.

Step 1 (PC skeleton algorithm) Suppose the true network describing the causal relationships between six transcripts is y 1 y 2 y 6 y 3 y 5 y 4 The PC-algorithm starts with the complete undirected graph y 1 y 2 y 6 y 3 y 5 y 4 and progressively eliminates edges based on conditional independence tests.

Step 1 (PC skeleton algorithm) The algorithm performs several rounds of conditional independence tests of increasing order. It starts with all zero order tests, then performs all first order, second order... Notation: independence. We read i j k as i is conditionally independent from j given k. Remark: in the Gaussian case zero partial correlation implies conditional independence, thus i j k cor(i, j k) = 0 drop (i, j) edge

Example (order 0) y 1 y 2 y 6 y 3 y 5 y 4 1 2 vs 1 2

Example (order 0) y 1 y 2 y 6 y 3 y 5 y 4 y 6 y 1 y 2 y 5 y 4 y 3 direct effect of y 1 on y 2 1 2 vs 1 2 1 2 keep edge and move to next one

Example (order 0) y 1 y 2 y 6 y 3 y 5 y 4 1 3 vs 1 3

Example (order 0) y 1 y 2 y 6 y 3 y 5 y 4 y 1 y 2 y 6 y 3 y 5 y 4 indirect effect of y 1 on y 3 1 3 vs 1 3 1 3 keep edge and move to next one

Example (order 0) y 1 y 2 y 6 y 3 y 5 y 4 After all zero order conditional independence tests.

Example (order 0) y 1 y 2 y 6 y 3 y 5 y 4 The algorithm then moves to first order conditional independence tests. After all zero order conditional independence tests.

Example (order 1) For example, For any edge (i, j) the algorithm tests whether for all i j k k A(i) \ j where A(i) represent the set of nodes adjacent to node i. y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 2 = {3, 4, 5, 6} and the algorithm tests whether 1 2 3 1 2 4 1 2 5 1 2 6

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 2 = {2, 4, 5, 6} 1 3 2 vs 1 3 2

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 2 = {2, 4, 5, 6} 1 3 2 vs 1 3 2 y 1 X y 2 X y 6 y 3 y 5 y 4 y 2 d-separates y 1 from y 3 1 3 2

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 2 = {2, 4, 5, 6} 1 3 2 vs 1 3 2 y 1 X y 2 X y 6 y 3 y 5 y 4 y 2 d-separates y 1 from y 3 1 3 2 drop edge move to next edge

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 2 vs 1 4 2

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 2 vs 1 4 2 y 1 X y 2 X X y 6 X X y 3 y 5 y 4 1 4 2 keep edge move to next conditioning set

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 5 vs 1 4 5

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 5 vs 1 4 5 y 1 y 2 X X y 6 X y 3 X y 5 X y 4 1 4 5 keep edge move to next conditioning set

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 6 vs 1 4 6

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 6 vs 1 4 6 y 1 y 2 X X y 3 y 5 y 4 y 6 X 1 4 6 keep edge move to next edge

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 After all first order conditional independence tests.

Example (order 1) y 1 y 2 y 6 y 3 y 5 y 4 The algorithm then moves to second order conditional independence tests. After all first order conditional independence tests.

Example (order 2) For example, For any edge (i, j) the algorithm tests whether i j k, l. y 1 y 2 y 6 y 3 y 5 y 4 for all (k, l) A(i) \ j A(1) \ 2 = {4, 5, 6} and the algorithm tests whether 1 2 4, 5 1 2 4, 6 1 2 5, 6

Example (order 2) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 2, 5 vs 1 4 2, 5

Example (order 2) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 2, 5 vs 1 4 2, 5 y 1 X y 2 X X y 6 X X y 3 X y 5 X y 4 (y 2, y 5 ) d-separate y 1 from y 4 1 4 2, 5

Example (order 2) y 1 y 2 y 6 y 3 y 5 y 4 A(1) \ 4 = {2, 5, 6} 1 4 2, 5 vs 1 4 2, 5 y 1 X y 2 X X y 6 X X y 3 X y 5 X y 4 (y 2, y 5 ) d-separate y 1 from y 4 1 4 2, 5 drop edge move to next edge

Example (order 2) y 1 y 2 y 6 y 3 y 5 y 4 After all second order conditional independence tests. The algorithm than moves to third order, fourth order... It stops when for each pair (i, j) the cardinality of A(i) \ j is smaller then the order of the algorithm.

Edge orientation Consider two traits y 1 and y 2. Our problem is to decide between models: M 1 : y 1 y 2 M2 : y 1 y 2 Problem: the above models are likelihood equivalent, f (y 1 )f (y 2 y 1 ) = f (y 1, y 2 ) = f (y 2 )f (y 1 y 2 ).

Edge orientation However, models q 11 y. 1 q 1k q 21 y 2. q 2l q 11 q 21 y. 1 y 2. q 1k q 2l are not likelihood equivalent because f (q 1 )f (y 1 q 1 )f (y 2 y 1, q 2 )f (q 2 ) f (q 2 )f (y 2 q 2 )f (y 1 y 2, q 1 )f (q 1 )

Edge orientation We perform model selection using a direction LOD score { n i=1 LOD = log f (y } 1i q 1i )f (y 2i y 1i, q 2i ) 10 n i=1 f (y 2i q 2i )f (y 1i y 2i, q 1i ) where f () represents the predictive density, that is, the sampling model with parameters replaced by the corresponding maximum likelihood estimates.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

QDG algorithm QDG stands for QTL-directed dependency graph. The QDG algorithm is composed of 7 steps: 1. Get the causal skeleton (with the PC skeleton algorithm). 2. Use QTLs to orient the edges in the skeleton. 3. Choose a random ordering of edges, and 4. Recompute orientations incorporating causal phenotypes in the models (update the causal model according to changes in directions). 5. Repeat 4 iteratively until no more edges change direction (the resulting graph is one solution). 6. Repeat steps 3, 4, and 5 many times and store all different solutions. 7. Score all solutions and select the graph with best score.

Step 2 Now suppose that for each transcript we have a set of e-qtls q 6 q 1 q 2 y 1 y 2 y 6 y 3 y 5 q 5 y 4 q 4 q 3 Given the QTLs we can distinguish causal direction: q 1 q 1 q 5 q 5 y 1 y 1 y 5 y 5. y 2 y 2 y 6 y 6 q 2 q 2 q 6 q 6

Step 2 Now suppose that for each transcript we have a set of e-qtls q 6 q 1 q 2 y 1 y 2 y 6 y 3 y 5 q 5 y 4 q 4 q 3 Given the QTLs we can distinguish causal direction: q 1 q 1 q 5 q 5 y 1 y 1 y 5 y 5. y 2 y 2 y 6 y 6 q 2 q 2 q 6 q 6

Steps 2 and 3 First estimate of the causal model (DG 0 ) q 6 q 1 q 2 y 1 y 2 y 6 y 3 y 5 q 5 y 4 q 4 (using only QTLs to infer causal direction) q 3 In step 3 we randomly choose an ordering of all edges in DG 0. Say, y 2 y 1 y 2 y 3 y 2 y 4 y 1 y 3 y 5 y 6 y 4 y 6 y 2 y 2 y 4 y 5 y 6 y 5 In step 4 we recompute the directions including other transcripts as covariates in the models (following the above ordering).

Steps 2 and 3 First estimate of the causal model (DG 0 ) q 6 q 1 q 2 y 1 y 2 y 6 y 3 y 5 q 5 y 4 q 4 (using only QTLs to infer causal direction) q 3 In step 3 we randomly choose an ordering of all edges in DG 0. Say, y 2 y 1 y 2 y 3 y 2 y 4 y 1 y 3 y 5 y 6 y 4 y 6 y 2 y 2 y 4 y 5 y 6 y 5 In step 4 we recompute the directions including other transcripts as covariates in the models (following the above ordering).

Steps 4 and 5 (first iteration) q 6 q 1 q 2 y 1 y 2 y 6 y 5 q 5 y 4 q 4 y 3 q 3 y 1 q 2 y 2 y 3 q 3 y 1 q 2 y 2 y 3 q 3

Steps 4 and 5 (first iteration) q 6 q 1 q 2 y 1 y 2 y 6 y 5 q 5 ok y 3 y 4 q 4 q 3 y 1 q 2 y 2 y 3 q 3 y 1 q 2 y 2 y 3 q 3

Steps 4 and 5 (first iteration) q 6 y 6 q 1 q 2 y 1 y 2 y 3 y 5 q 5 y 4 q 4 q 3 y 2 y 5 q 6 y 6 y 1 q 1 y 2 y 5 q 6 y 6 y 1 q 1

Steps 4 and 5 (first iteration) q 6 q 1 q 2 y 1 y 2 flip y 6 y 3 y 5 q 5 y 4 q 4 q 3 y 2 y 5 q 6 y 6 y 1 q 1 y 2 y 5 q 6 y 6 y 1 q 1

Steps 4 and 5 (first iteration) q 1 q 2 y 1 y 2 y 3 q 6 y 6 y 5 q 5 y 4 q 4 q 3 y 2 y 5 q 6 y 6 y 1 q 1 y 2 y 5 q 6 y 6 y 1 q 1

Steps 4 and 5 (first iteration) q 6 q 1 q 2 y 1 y 2 y 6 y 3 y 5 q 5 y 4 q 4 q 3 y 4 y 1 q 5 y 5 y 2 y 4 y 1 q 2 q 5 y 5 y 2 q 2

Steps 4 and 5 (first iteration) q 6 q 1 q 2 y 1 y 2 y 6 ok y 3 y 5 q 5 y 4 q 4 q 3 y 4 y 1 q 5 y 5 y 2 y 4 y 1 q 2 q 5 y 5 y 2 q 2

Steps 4 and 5 (first iteration) And so on until the algorithm recheck the directions for all remaining ordered edges. y 1 y 3 y 2 y 2 y 5 y 4 y 2 y 4 y 6 y 4 y 6 y 5

Steps 4 and 5 (first iteration) Suppose the updated causal model after the first iteration (DG 1 ) is q 6 q 1 q 2 y 1 y 2 y 6 y 3 y 5 q 5 y 4 q 4 q 3 Since some arrows changed direction (DG 1 DG 0 ), the algorithm goes for another round of re-computations.

Steps 4 and 5 (second iteration) q 6 q 1 q 2 y 1 y 2 ok y 6 y 3 y 5 q 5 y 4 q 4 q 3 y 1 q 2 y 2 y 3 q 3 y 1 q 2 y 2 y 3 q 3

Steps 4 and 5 (second iteration) q 6 y 6 q 1 q 2 y 1 y 2 ok y 3 y 5 q 5 y 4 q 4 q 3 y 2 q 6 y 6 y 1 q 1 y 2 q 6 y 6 y 1 q 1

Steps 4 and 5 (second iteration) q 6 q 1 q 2 y 1 y 2 y 6 ok y 3 y 5 q 5 y 4 q 4 q 3 y 6 y 1 q 5 y 5 y 2 q 5 y 6 y 5 y 1 y 2 q 2 q 2

Steps 4 and 5 (second iteration) And so on... If no further arrows change direction, the algorithm converged to a solution.

Steps 6 and 7 Different random orderings (step 3) can result in different solutions. Step 6: repeat Steps 3 to 5 many times and store all different solutions. Step 7: score all solutions and select the graph with best score (maximized log-likelihood or BIC).

Steps 6 and 7 Different random orderings (step 3) can result in different solutions. Step 6: repeat Steps 3 to 5 many times and store all different solutions. Step 7: score all solutions and select the graph with best score (maximized log-likelihood or BIC).

Steps 6 and 7 Different random orderings (step 3) can result in different solutions. Step 6: repeat Steps 3 to 5 many times and store all different solutions. Step 7: score all solutions and select the graph with best score (maximized log-likelihood or BIC).

Sparsity assumption The PC skeleton algorithm and QDG algorithm perform well in sparse graphs.

Directing edges without QTLs In general we need to have at least one QTL per pair of phenotypes to infer causal direction. In some situations, however, we may be able to infer causal direction for a pair of phenotypes without QTLs. Eg. q 1 y 1 y 2 y 3 y 1 y 2? y 3 y 1 y 2 y 3 since f (y 1 ) f (y 2 y 1 ) f (y 3 y 2 ) f (y 1 ) f (y 2 y 1, y 3 ) f (y 3 ). So both QTLs and phenotypes play important roles in the orientation process.

Directing edges without QTLs In general we need to have at least one QTL per pair of phenotypes to infer causal direction. In some situations, however, we may be able to infer causal direction for a pair of phenotypes without QTLs. Eg. q 1 y 1 y 2 y 3 y 1 y 2? y 3 y 1 y 2 y 3 since f (y 1 ) f (y 2 y 1 ) f (y 3 y 2 ) f (y 1 ) f (y 2 y 1, y 3 ) f (y 3 ). So both QTLs and phenotypes play important roles in the orientation process.

Directing edges without QTLs In general we need to have at least one QTL per pair of phenotypes to infer causal direction. In some situations, however, we may be able to infer causal direction for a pair of phenotypes without QTLs. Eg. q 1 y 1 y 2 y 3 y 1 y 2? y 3 y 1 y 2 y 3 since f (y 1 ) f (y 2 y 1 ) f (y 3 y 2 ) f (y 1 ) f (y 2 y 1, y 3 ) f (y 3 ). So both QTLs and phenotypes play important roles in the orientation process.

Unresolvable situation We cannot infer direction when the phenotypes have exactly same set of QTLs and causal phenotypes q y 1 y 2 y 3 q y 1 y 2 y 3 since f (y 1 y 3, q) f (y 2 y 1, y 3, q) = f (y 1 y 2, y 3, q) f (y 2 y 3, q)

Reducing graph space The QDG algorithm drastically reduces the number of graphs that need to be scored. 1. The maximum number of graphs is 2 k models, where k is the number of edges in the skeleton. 2. The number of solutions of the QDG algorithm is generally much smaller than 2 k.

Cyclic networks Cycles are a common feature of biological networks (homeostatic mechanisms). The PC skeleton algorithm assumes an acyclic causal graph, and cycles may lead to spurious edges. E.g. 1 2 4 3 1 2 4 3 1 3 1 3 2 1 3 2, 4 2 4 2 4 3 2 4 1, 3

Cyclic networks Cycles are a common feature of biological networks (homeostatic mechanisms). The PC skeleton algorithm assumes an acyclic causal graph, and cycles may lead to spurious edges. E.g. 1 2 4 3 1 2 4 3 1 3 1 3 2 1 3 2, 4 2 4 2 4 3 2 4 1, 3

Cyclic networks Our simulations showed good performance with toy cyclic graphs, though. (a) 1 2 3 4 5 (b) 1 2 3 6 4 5 6 (c) 1 4 2 3 5 6 The spurious edges in graph (c) were detected at low rates. QDG approach cannot detect reciprocal interactions. In graph (c) it orients the edge 2 5 in the direction with higher strength.

Cyclic networks Our simulations showed good performance with toy cyclic graphs, though. (a) 1 2 3 4 5 (b) 1 2 3 6 4 5 6 (c) 1 4 2 3 5 6 The spurious edges in graph (c) were detected at low rates. QDG approach cannot detect reciprocal interactions. In graph (c) it orients the edge 2 5 in the direction with higher strength.

Cyclic networks Our simulations showed good performance with toy cyclic graphs, though. (a) 1 2 3 4 5 (b) 1 2 3 6 4 5 6 (c) 1 4 2 3 5 6 The spurious edges in graph (c) were detected at low rates. QDG approach cannot detect reciprocal interactions. In graph (c) it orients the edge 2 5 in the direction with higher strength.

Unique graph instead of an equivalence class Two DAGs are Markov equivalent iff they have the same skeleton and the same set of v-structures. For example y 1 y 2 y 3 y 3 y 2 y 1 y 2 y 1 y 3 The three graphs have the same skeleton, y 1 same set of v-structures (none). y 2 y 3, and the The graphs will also be likelihood equivalent if we assume a linear regression with Gaussian errors.

Unique graph instead of an equivalence class q 1 q 2 q 3 q 1 q 2 q 3 q 1 q 2 q 3 y 1 y 2 y 3 y 1 y 2 y 3 y 1 y 2 y 3 Same skeleton, but different sets of v-structures y 1 q 2 y 2 y 2 q 3 y 3 q 2 y 3 y 2 q 1 y 2 y 1 y 2 q 3 y 3 q 1 y 2 y 1

Simulations 6 10 21 22 24 27 38 48 89 98 100 1 16 53 43 11 61 13 34 We generated 100 data sets according to this network. 87 8 31 29 23 70 18 19 55 60 26 17 88 14 80 81 40 28 75 3 65 2 4 85 50 25 46 9 44 Parameters were chosen in a range close to values estimated from real data. 33 37 57 56 30 91 7 39 71 15 49 63 94 54 74 64 51 5 68 82 45 n 60 300 500 42 41 90 36 66 97 96 35 83 20 84 78 93 73 32 79 86 62 47 52 76 12 72 67 58 59 77 TDR 94.53 95.18 91.22 TPR 52.07 87.33 93.64 CD 83.65 98.58 99.63 100 nodes, 107 edges 99 95 69 2 or 3 QTLs per phenotype (not shown) 92 # true positives # true positives TDR =, TPR = # inferred edges # true edges CD: correct direction

Real data example D2Mit395 D9Mit20 D18Mit177 D2Mit51 D4Mit190 Slc1a2 D5Mit183 D7Mit117 Glx Ivd D9Mit182 D13Mit76 Agxt D1Mit64 Arg1 D2Mit263 D9Mit207 Pck1 D4Mit37 D10Mit233 D2Mit106 D8Mit45 D13Mit91 D2Mit411 D7Mit294 D14Mit126 We constructed a network from metabolites and transcripts involved in liver metabolism. We validated this network with in vitro experiments (Ferrara et al 2008). Four out of six predictions were confirmed.

Software and references The qdg R package is available at CRAN. References: Chaibub Neto et al 2008. Inferring causal phenotype networks from segregating populations. Genetics 179: 1089-1100. Ferrara et al 2008. Genetic networks of liver metabolism revealed by integration of metabolic and transcriptomic profiling. PLoS Genetics 4: e1000034. Spirtes et al 1993. Causation, prediction and search. MIT press.

Acknowledgements Co-authors: Alan D. Attie Brian S. Yandell Christine T. Ferrara Funding: CNPq Brazil NIH grants DK66369, DK58037 and DK06639

Permutation p-values z x (a) z brk x (b) q 1 brk y 1 y 2 brk q 2 q 1 brk y 1 y 2 brk q 2 To break the connections (brk) that affect direction of an edge, we permute the corresponding pair of nodes (and their common covariates) as a block. In panel (a) we permute (y 1, y 2, x) as a block breaking the connections with z, q 1 and q 2 ; In panel (b) we incorrectly keep z in the permutation block.

Direct versus indirect effects of a common QTL (a) (b) (c) q 1 q q 2 y 1 y 2 q 1 y 1 q q 2 y 2 q 1 y 1 q q 2 y 2 A strong QTL directly affecting an upstream trait may also be (incorrectly) detected as a QTL for a downstream phenotype. To resolve this situation we apply a generalization of Schadt et al. 2005 allowing for multiple QTLs. Model (a) supports both traits being directly affected by the common QTL q. Model (b) implies that q directly affects y 1 but should not be included as a QTL of phenotype y 2. Model (c) supports the reverse situation.