DIGDAG, a first algorithm to mine closed frequent embedded sub-DAGs
Systems Pharmacology Research Institute, GNI Ltd Abstract
gorithms, which discover induced patterns based only onparent-descendant relationship, are not adapted to analyze Although tree and graph mining have attracted a lot of this data. Algorithms discovering embedded patterns, based attention, there are nearly no algorithms devoted to DAG- on the ancestor-descendant relationships, are needed for this mining, whereas many applications are in dire need of such algorithms. We present in this paper DIGDAG, the first al- In this paper, we present DIGDAG, the first algorithm gorithm capable of mining closed frequent embedded sub- capable of mining closed frequent embedded sub-DAGs DAGs. This algorithm combines efficient closed frequent (c.f.e.-DAGs) in DAG data. The input data are DAGs where itemset algorithms with novel techniques in order to scale all the labels must be distinct. This assumption of distinct labels has long lead to think that the solution to this problemwas trivial. However, we will show that naive approachesare unable to provide results on real data and this motivates 1. Introduction
the more elaborate method used in DIGDAG. Experimentswill show that DIGDAG significantly improves a naive ap-proach both in term of memory consumption and in term of A growing percentage of the data available today is semi- structured data, i.e. data that can be represented as a la- The paper is organized as follows: Section 2 gives the beled graph. This kind of data can be found in various do- necessary definitions, Section 3 presents the DIGDAG algo- mains such as bioinformatics, chemistry or computer net- rithm, Section 4 shows some preliminary experiments, and works. To analyze this data, there is an important need Section 5 concludes the paper and gives perspectives for fu- of specific data mining algorithms, especially for the dis- covery of frequent patterns. In the recent years, the re-search community has produced numerous algorithms tofind frequent patterns in general graphs [5] and in trees 2. Definitions and data-mining problem
[2, 7, 10]. However, there are nearly no algorithms for find-ing frequent patterns in data structured as DAGs. This is A labeled graph is a tuple G = (V, E, ϕ), where V is
a problem to be explored, as a lot of interesting data ex- the set of vertices, E ⊆ V × V is the set of edges, and ϕ : hibit this structure. An important body of this data is the V → L is a labeling function with L a finite set of labels.
result of Bayesian networks based algorithms. This is for For an edge (u, v) ∈ E, u is the parent of v and v is the
example the case of most current studies about gene in- child of u. If there is a set of vertices {u1, ., un} ⊆ V such
teraction networks [4]. Such data exhibit large structural that (u1, u2) ∈ E,.,(un−1, un) ∈ E, {u1, ., un} is called variations, meaning that ancestor-descendant relationships a path, u1 is an ancestor of un and un is a descendant of
are more often preserved than parent-child relationships.
u1. There is a cycle in the graph if a path can be found from
Hence current DAG mining [1] and graph mining [5, 9] al- a vertex to itself. An edge (u, v) ∈ E of the graph is said to be a transitive edge if besides the edge (u, v), there also
tices must be introduced as input data. For each DAG D we exists another path from u to v in G. A labeled DAG is a
already have its set of edges ED. We define the saturated set E+ = {(u, v) | u is an ancestor of v in D} containing Let P1 = (V1, E1, ϕ1) and P2 = (V2, E2, ϕ2) be two all the ancestor-descendant edges of a DAG D. Each input DAGs. P1 is an embedded sub-DAG of P2, written P1 ⊑
DAG D ∈ D will be represented by its E+ set. The set P2, if there exists an injective homomorphism µ : P1 → P2 D+ = {E+ | D ∈ D} regroups all the saturated versions such as: 1) for two vertices u ∈ V1 and v ∈ V2 such that v = µ(u), ϕ2(v) = ϕ1(u) holds and 2) for (u, v) ∈ E1, Now the question is how to correctly use a closed fre- µ(u) is an ancestor of µ(v) in P2. In short, the homomor- quent itemset mining algorithm to discover the sets of edges phism must preserve the labels and the ancestor relation- of the c.f.e.-DAGs. Briefly stated, it can be summed up as a ship. If in 2), the homomorphism only preserves the parent relationship (i.e. the condition becomes: for (u, v) ∈ E1,µ(u) is a parent of µ(v) in P 1. Using D+ as input, apply a closed frequent itemset 2 ), then P1 is an induced sub-
mining algorithm to discover closed frequent ancestor- 2. Note that an induced sub-DAG is also an em- bedded sub-DAG, but not the opposite.
Let D = {D1, ., Dn} be a set of labeled DAGs and 2. Process the closed frequent ancestor-descendant edge ε ≥ 0 be an absolute frequency threshold. A DAG P is a frequent embedded (induced) sub-DAG of D if it is em-
bedded (induced) in at least ε DAGs of D. The set of DAGs
Both of these two steps seem quite straightforward and of D in which P is embedded (induced) is called the tidlist
very easy to implement, i.e., step 1 should be the simple of P , denoted tidlist(P ). The support of P is defined by
application of any well known closed frequent itemset min- ing algorithm, and step 2 should only be connecting the A frequent embedded (induced) sub-DAG P of D is edges together to discover the c.f.e.-DAGs. However this closed if it is maximal for its support, i.e. if there is no fre-
simplicity is only apparent, and in practice numerous prob- quent embedded (induced) sub-DAG P ′ of D such that P is lems arise, which prevent any “naive” approach to success.
embedded (induced) into P ′ and tidlist(P ) = tidlist(P ′).
The main of these problems is that step 1 doesn’t scale up The exact data mining problem at hand is to find closed to complex data. We have tried to analyze real data made of frequent embedded sub-DAGs (c.f.e.-DAGs) in a collection 100 DAGs, each having 300 vertices, coming from a bioin- of DAG data, where for each input DAG all its labels are formatics problem. The closed frequent itemset algorithm was the FIMI 2003 winner, LCM2 [8]. This algorithm usesa lot of techniques to reduce the size of the dataset in mem- 3. Algorithm
ory. But even on a machine with 8 GB of RAM, the algo-rithm could not complete due to memory saturation. This is due to two reasons. First, the item space is the space of allthe ancestor-descendant edges, which is huge. This is diffi- cult for any closed frequent itemset mining algorithm. But rithm for discovering c.f.e.-DAGs in DAG data where for the main reason lies in the very nature of the closed frequent each input DAG, all the labels are distinct. The fact that ancestor-descendant edge sets researched. In the ideal case, all the labels are distinct in the input DAGs is convenient ancestor-descendant edges are regrouped together because because it means that there are no ambiguities, i.e., if two they belong to the same c.f.e.-DAG. But two c.f.e.-DAGs edges (A, B) and (B, C) are found to appear frequently to- can also appear frequently together in any D ∈ D, in this case all their ancestor-descendant edges will be regrouped pattern A → B → C is necessarily frequent and appears in in the same closed frequent ancestor-descendant edge set.
So in facts, the closed frequent itemset algorithm does not 1, ., Dp}. This can be further extended, and any c.f.e.- DAG P is uniquely defined by its set of edges E look for the c.f.e.-DAGs, but it looks for all the closed fre- This means that instead of mining directly c.f.e.-DAGs, quent sets of c.f.e.-DAGs. This problem is much more diffi- the c.f.e.-DAGs are mined by deriving closed frequent sets cult than the original problem, and in complex real data the of edges. Though there are no algorithms to mine c.f.e.- sheer number of possible c.f.e.-DAGs combinations gives DAGs, a lot of closed frequent itemset mining algorithms, too many results for an efficient handling in memory.
capable of mining efficiently sets of any kind of items [6, 8], In the following, we will explain the methods we devel- can then be used to mine the c.f.e.-DAGs.
oped to avoid these problems in the DIGDAG algorithm1.
As we are interested in finding closed frequent embedded 1NB: We will always refer to the vertices of the DAGs simply by their sub-DAGs, the ancestor-descendant relations among ver- 3.2. Item space reduction using the tiles Our solution to this combinatorial problem is to make computations where the item space is reduced to small sub- Experiments show that the successful use of the sets of the whole tile set T . The ideas are that each c.f.e.- ancestor-descendant edges as items for a closed frequent DAG is likely to contain only a few tiles of T , and that two itemset algorithm is not easy on real data, because the item disconnected c.f.e.-DAGs that appear frequently in the same space they make is too big for efficient handling. Our so- input DAGs will necessarily contain different tiles (thanks lution to reduce the item space size is to use instead spe- to the distinct labels hypothesis). A further observation is cial groups of ancestor-descendant edges named tiles as that given D a c.f.e.-DAG and l a vertex of D, let Tl be the items. The tiles are the closed frequent sets of ancestor- biggest tile included in D whose root is l. Then the leaves descendant edges that share the same initial label, like of Tl represent all the descendants of l in D. Let l′ be one {(a, b1), ., (a, bk)} (a, b1, ., bk ∈ L) for example. They of these descendants, then the set of all the vertices of Tl′ , can be represented as depth 1 trees. Lets T denote the set the biggest tile of root l′ included in D, will be included in of all tiles. Figure 1 shows a simple example of tile discov- ery. The input DAGs are D1 and D2. For each label a ma- We have used this monotonic property to create an sim- trix is constructed, whose lines are the vertices of the given ple heuristic method grouping the tiles based on their labels.
label and whose columns indicate the labels of the descen- The result is a set of tile groups T G, satisfying the following dants of these vertices. For example for label A there are two lines corresponding to the vertices A1 and A6. A1 has{C, D, E} as descendants, whereas A Property 1 For any c.f.e.-DAG D, there exists a tile group
as descendants. Applying a closed frequent itemset mining T G ∈ T G such that T G contains all the tiles contained in algorithm on this matrix gives the tiles whose root has the given label, as shown on the right of the figure. Note that in Property 2 For all T G ∈ T G, T G is unlikely to contain
the figure, matrices for labels A, B and D only are shown, the tiles of two c.f.e.-DAGs D1 and D2 that appear fre- other labels, having no descendants, do not produce tiles.
quently in the same DAGs, even if this can happen in rare For each tile group T G ∈ T G we perform a closed fre- quent itemset algorithm on DT i , i.e. DT i reduced to the tiles of T G. A closed frequent tileset obtained here corre- spond to the tiles of an ancestor-descendant relationship sat- urated c.f.e.-DAG. Even if a closed frequent tileset contains multiple c.f.e.-DAGs, a simple safety check is performed to further decompose it into each of the c.f.e.-DAGs it con- 3.4. Discovering the c.f.e.-DAGs from their Having determined each tileset that corresponds exactly Figure 1: Example of tile discovery, frequency threshold to the tiles of an ancestor-descendant relationship saturated ε = 2. Vertex identifiers are subscripts of vertex labels.
c.f.e.-DAG D+, we know that for each c.f.e.-DAG D wehave all its ancestor-descendant edges, i.e. we have E+.
3.3. Further item space reduction by tiles ing to find the non-saturated c.f.e.-DAGs, which are the ex-pected final result. For this we distinguish the edges of a The input DAGs can be represented by the tiles they con- c.f.e.-DAG into two categories, i.e., the direct edges and the tain. When, for each DAG D ∈ D, T iD is the set of tiles in- transitive edges. An edge (u, v) is a direct edge if the only cluded in D, the new input data is DT i = {T iD | D ∈ D}.
way from u to v in the c.f.e.-DAG is the edge (u, v). And Applying a closed frequent itemset mining algorithm on edge (u, v) is a transitive edge if it is not a direct edge, i.e.
DT i gives closed frequent tilesets, from which the c.f.e.- if from u to v there are several paths. These are shown in DAGs can be deduced. However in this case also the results are closed frequent sets of c.f.e.-DAGs, which are too nu-merous for successful computation in complex cases.
We have presented in Section 3 a naive method for ex- tracting closed frequent embedded DAGs, and claimed that this method was not efficient enough for real data analy-sis. We have implemented this method in a way very simi- Figure 2: Simple example of directs and transitive edges lar to DIGDAG, and show the performance difference withDIGDAG in Figures 3 and 4.
The direct edges of the c.f.e.-DAGs are easily found from the saturated c.f.e.-DAGs. The transitive edges are the tricky part. For every transitive edge of each saturated c.f.e.- DAG D+, we check if the transitive edge is actually con- tained in all the input DAGs containing D+. This check is efficiently done by applying a closed frequent itemset min- ing algorithm to the edge sets of all the input DAGs contain-ing D+. An edge of each closed frequent edges set found here represents a transitive edge of a non saturated c.f.e.- DAG in the case where the edge is not a direct edge of D+.
We have proved the following property.
Figure 3: Naive vs DIGDAG, computation time Property 3 The set of DAGs found by DIGDAG is the sound
and complete set of the c.f.e.-DAGs.

4. Experiments
This section is divided into two parts. First, we show that the techniques used in the DIGDAG algorithm drastically reduce computation time and memory usage over the naive method of the beginning of Section 3. Then, we give an application example with the analysis of the action of the The dataset used is a real world dataset of gene network DAGs, as outputted by the algorithm of [4] when analyzing microarray data from [3]. This algorithm models gene net-works with Bayesian networks. From the input microarray Figure 3 shows the difference in computation time.
data, a greedy search is performed, whose results are local DIGDAG is at least two orders of magnitude faster than the optima, the candidate gene networks. They are of mixed naive method: the improvement made is significant. As a quality: they contain both correct and incorrect parts. The consequence, DIGDAG can find results quickly for low sup- goal of our data mining algorithm is to extract closed fre- port values, while the naive method’s computation time ex- quent gene networks patterns from the candidate gene net- ceeds the allocated 2 hours for support values below 30%.
works, which should be more credible and more easy to an- The memory consumption difference is shown on Fig- alyze than the whole candidate networks.
ure 4. For each program we give two values, as reported To keep reasonable runtimes for all algorithms, we used by the Linux memusage command: the heap total, which a simplified dataset reduced to 100 candidate gene networks corresponds to the total amount of memory allocated, and of 50 genes. The DAGs of this dataset have in average the heap peak, which corresponds to the maximum amount 284.5 ancestor-descendant edges, with a maximum of 352 of system memory used by the program during its execu- tion. Due to problems with the memusage command, this The machine used is a Xeon 2.8 GHz with 8 Gb of RAM experiment was made with a machine different from the pre- running under Linux. The implementations of DIGDAG and vious one, a dual-core Xeon at 2.2 GHz with 4 Gb of RAM of the naive algorithm are our own C++ implementation, us- running under Linux. The naive method saturates the avail- ing inside the LCM2 closed frequent itemset mining algo- able memory for support values under 35%. For the lowest support value, the figure shows that the naive method con- 3∼uno/codes.htm sumes much more memory than DIGDAG: for support value 35%, the heap peak of DIGDAG is three orders of magni- 5. Conclusion and future works
tude lower than the heap peak of the naive method. Since asupport value of 65%, the heap peak of the naive method is We have presented in this paper the DIGDAG algorithm, even higher than the heap total of DIGDAG. These results the first algorithm capable of mining c.f.e.-DAGs. Our first shows that DIGDAG is much less prone to saturating the experiments on real data have shown that this algorithm ex- system’s memory during computation. This is very impor- hibited much better mining performances than a naive ap- tant; as if the memory is saturated the program will not give proach for the task at hand, and can allow to find interesting any results, and computation time will have been wasted.
From these experiments, we can see that the improve- As a topic for future research, we would like to be able ments made by DIGDAG over the naive method are indeed to handle even more complex data (more vertices and more efficient at reducing the memory consumption of the pro- input DAGs) through the use of parallelism. We would also gram. These improvements also allow an important gain in like to research what modifications would be needed for DIGDAG to handle general graphs instead of DAGs.
Acknowledgements: This research was, in part, sup-
ported by Function and Induction project of ROIS/TRIC.
In the previous dataset, the 50 genes have not been cho- References
sen at random, they have been carefully selected as beingthe most probably affected by the terbinafine drug, in order [1] Y.-L. Chen, H.-P. Kao, and M.-T. Ko. Mining dag patterns from dag databases. In Web-Age Information Management(WAIM), Dalian, China, 2004.
[2] Y. Chi, Y. Yang, Y. Xia, and R. R. Muntz.
iner: Mining both closed and maximal frequent subtrees. In ERG6S-adenosyl-methionine delta-24-sterol-c-methyltransferase The Eighth Pacific-Asia Conference on Knowledge Discov-ery and Data Mining (PAKDD’04), 2004.
[3] T. R. Hughes, M. J. Marton, A. R. Jones, C. J. Roberts, R. Stoughton, C. D. Armour, H. A. Bennett, E. Coffey, H. Dai, Y. D. He, M. J. Kidd, A. M. King, M. R. Meyer, D. Slade, P. Y. Lum, S. B. Stepaniants, D. D. Shoemaker, D. Gachotte, K. Chakraburtty, J. Simon, M. Bard, and S. H.
Friend. Functional discovery via a compendium of expres- sion profiles. Cell, 102(1):109–126, July 2000.
[4] S. Imoto, T. Goto, and S. Miyano. Estimation of genetic networks and functional structures between genes by using bayesian network and nonparametric regression. In Pacific Symposium on Biocomputing, pages 175–186, 2002.
[5] A. Inokuchi, T. Washio, and H. Motoda. Complete mining of frequent patterns from graphs: Mining graph data. Machine Learning, 50(3):321–354, 2003.
[6] N. Pasquier, Y. Bastide, R. Taouil, and L. Lakhal.
3-hydroxy-3-methylglutaryl- coenzyme A reductase 1 covering frequent closed itemsets for association rules. InDatabase Theory - ICDT ’99, 7th International Conference, Figure 5: A significative c.f.e.-DAG.
[7] A. Termier, M. Rousset, and M. Sebag. Dryade : a new approach for discovering closed frequent trees in heteroge- One of the c.f.e.-DAGs found is shown on Figure 5. This neous tree databases. In International Conference on Data gene network clearly shows relations of the gene ERG1 (the Mining ICDM’04, Brighton, England, pages 543–546, 2004.
[8] T. Uno, M. Kiyomi, and H. Arimura. Lcm v.2: Efficient real target of terbinafine) with the genes ERG6, 11, 13, 25 mining algorithms for frequent/closed/maximal itemsets. In and 26 from the steroid metabolism, and HMG1 and 2 from 2nd Workshop on Frequent Itemset Mining Implementations the lipid metabolism. This suggests that terbinafine works on steroid metabolism or lipid metabolism related genes, which is consistent with existent knowledge about this drug.
graph patterns. In KDD, pages 286–295, 2003.
Our c.f.e.-DAG proposes a precise interaction structure be- Fundamenta Informaticae, 65(1-2):33–52, tween these genes, which could serve as a basis to design


GENERAL OVERVIEW OF THE GROUP HISTORY AND DEVELOPMENT Mr. Lok, the founder of the Group, commenced his career in the development of system softwarein the 1980s and was subsequently engaged in the development and sale of customized systemsoftware in Hong Kong. In 1986, recognising the huge market potential for enterprise applicationsoftware, he started to concentrate his efforts on the deve

Microsoft word - damien-program notes.doc

Damien – Program Notes Father Damien Born Joseph de Veusters in 1840 in a small hamlet called Tremeloo in Belgium, the man whowas to serve the Settlement on Moloka’i chose the religious name of Damien upon entering thepriesthood in the missionary order of the Society of the Sacred Hearts of Jesus and Mary. Taking the place of his brother, a priest who had suffered a bout of typhus,

Copyright © 2010-2014 Metabolize Drugs Pdf