Learning Polytrees with Constant Number of Roots from Data
Jan Manuch1,2, Javad Safaei1, Ladislav Stacho2
1. University of British Columbia, Department of Computer Science 2. Simon Fraser University, Department of Mathematics
Learning Polytrees with Constant Number of Roots from Data Jan - - PowerPoint PPT Presentation
Learning Polytrees with Constant Number of Roots from Data Jan Manuch 1,2 , Javad Safaei 1 , Ladislav Stacho 2 1. University of British Columbia, Department of Computer Science 2. Simon Fraser University, Department of Mathematics
Jan Manuch1,2, Javad Safaei1, Ladislav Stacho2
1. University of British Columbia, Department of Computer Science 2. Simon Fraser University, Department of Mathematics
Acyclic Graph or DAG) given a dataset that optimizes an
▫ Bayesian Score ▫ Maximum Likelihood (ML) Score
Bayesian DAGs is NP-complete. Similarly, learning minimal ML DAGs is NP-complete.
edges.
(Dj, 1 ≤ j ≤ m).
n of features (Xi, 1 ≤ i ≤ n).
values val(Xi)={v1, v2, … , vmi }.
, .
Vector X1 X2 X3 X4
1 1 1 2 1 1 3 1 1 4 1 1 5 1 1 1 1 6 1 1 7 1 1 1 8 1 1 1 9 1 1 10 1 1 1 11 1 1 1 12 1 1 13 14 1 1 15 16 1 1
polynomial and can be computed in ( + log ) .
1. Compute mutual information of every two vertices 2. Find the MST (maximum spanning tree) using MI as weights 3. Pick any vertex as the root and orient the edges (it can be shown that the choice does not affect ML score)
loops.
data is NP-complete.
given a DAG
= ( = ,|!" = #,)
where !" is a set of all parent nodes of in , and #, all of their values in vector
.
is also called factorized form of distribution with respect to .
= ' = ∑ 〈, = ' 〉
+
: ℓ
1. Generate a set of merging edges respecting Proposition 2. 2. For each selection of merging edges, run MST algorithm but we do not allow components contain more than one merging node. 3. Pick any orientation of undirected edges that does not introduce any new merging node (ok by Proposition 1).
Example
◮ Pick a selection of merging edges (n = 7, k = 3)
Example
◮ Run modified MST algorithm
Example
◮ Run modified MST algorithm
Example
◮ Run modified MST algorithm
Example
◮ Run modified MST algorithm
Example
◮ Run modified MST algorithm
Example
◮ Run modified MST algorithm
Example
◮ Orient edges in components containing merging nodes
(merging nodes is the root)
Example
◮ Orient edges in other components (roots in each component
can be picked arbitrarily)
@ ABC @ ADC ABCADC⋯CAFG@:@ G@ :
@ AHC
G@ :
G@ :
for each spends + + time for edge completion,
the total complexity of our algorithm is M N0O>@P .
that by removing 4 arcs transform to directed forests, and provided an algorithm for learning k-branching working in time M(N0O>CQ)
polytrees with up to 4 + 1 roots. Our algorithm is by (L) factor faster than the algorithm of Gasper and et al. [5].
▫ 803 peptides that are phosphorylated by protein kinase PKC ▫ 1000 randomly selected peptides that are phosphorylated by some kinase
Algorithm Peptides of PKC 1000 Random Peptides Score Time # Trees tested Score Time # Trees tested MST(1 root) = tree
0.15 1
0.04 1
Heuristic: MST+(2 roots)
1.07 9
1.13 8
MST+(3 roots)
2.86 23
2.77 18
Exact: 2 roots
27.47 252
35.98 252
3 roots
2551.50 23184
3235.38 23184
expected and they are more convergent.
positions in the peptides in 3D structure, then we could get some information about 3D structure of the peptides:
Tree- Structure learned by MST Tree-Structure learned by 3- root polytree
Learning from data, pp. 121–130. Springer (1996)
dependence trees. IEEE Transactions on Information Theory 14(3), 462– 467 (1968)
Intelligence, pp. 134–141 (1999)
Uncertainty in Artificial Intelligence (UAI). pp. 220–227 (1990)
finding optimal polytrees. In: Twenty-Sixth AAAI Conference on Artificial Intelligence (2012)