Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Survey on Frequent Pattern Mining on Graph Data - Slides


Published on

Published in: Technology
  • hi I download your slides but there was problem in that .
    my mail is
    Are you sure you want to  Yes  No
    Your message goes here

Survey on Frequent Pattern Mining on Graph Data - Slides

  1. 1. Sriskandarajah Suhothayan Kasun Gajasinghe Isuru Loku Narangoda Subash Chaturanga
  2. 2. Outline <ul><li>Introduction </li></ul><ul><li>Basic principles </li></ul><ul><li>Solution patterns </li></ul>
  3. 3. Introduction <ul><li>Graphs can be seen in everywhere. </li></ul><ul><li>In computer science, graph is viewed as an abstract data structure which represents relationships among data. </li></ul>
  4. 4. Graph based data mining <ul><li>Graph based data mining is finding out useful and understandable patterns from graph representation of data. </li></ul><ul><li>The main subject area of graph based data mining is identifying the frequently occurring subgraph patterns. </li></ul>
  5. 5. Approaches <ul><li>In the recent past a significant work has been done in this subject area to develop algorithms to mine graph data efficiently. </li></ul><ul><li>In this paper we are discussing about such several well known algorithms under following categories. </li></ul><ul><ul><li>Mathematical Graph Theory Based Approaches </li></ul></ul><ul><ul><li>Greedy Search Based Approaches </li></ul></ul><ul><ul><li>Inductive Logic Programming Approach </li></ul></ul><ul><ul><li>Inductive Database Based Approaches </li></ul></ul>
  6. 6. Applications <ul><li>BioInformatics </li></ul><ul><ul><li>mine biochemical structures </li></ul></ul><ul><ul><li>finding out biological conserved sub networks </li></ul></ul><ul><li>Chemical compound analysis </li></ul><ul><li>Web browsing pattern analysis </li></ul><ul><li>intrusion network analysis </li></ul><ul><li>mining communication networks </li></ul>
  7. 7. Basic Principles <ul><li>Subgraph categories </li></ul><ul><ul><li>general subgraphs </li></ul></ul><ul><ul><li>induced subgraphs </li></ul></ul><ul><ul><li>connected subgraphs </li></ul></ul><ul><li>Subgraph Isomorphism Problem </li></ul><ul><li>This finds whether there exists a one-to-one mapping from a set of vertices to another set. </li></ul>
  8. 8. Basic Principles <ul><li>Graph Invariants </li></ul><ul><li>Quantities to characterize the topological structure of a graph </li></ul><ul><ul><li>number vertices, </li></ul></ul><ul><ul><li>degree of each vertex </li></ul></ul><ul><ul><li>number of edges connected to the vertex </li></ul></ul>
  9. 9. Solution Approaches direct Categorization Completeness complete search heuristic search Subgraph isomorphism matching problem Indirect (solves the subgraph similarity problem)
  10. 10. Solution Approaches <ul><li>Greedy search </li></ul><ul><li>Inductive logic programming (ILP) </li></ul><ul><li>Inductive database </li></ul><ul><li>Complete level-wise search </li></ul><ul><li>Support Vector Machine (SVM) </li></ul>
  11. 11. Greedy search <ul><li>The conventional solution </li></ul><ul><li>Categorized into </li></ul><ul><li>Depth-First search (DFS) and </li></ul><ul><li>Breadth-First Search (BFS) </li></ul><ul><li>Beam search </li></ul><ul><ul><li>The disadvantage: as the search proceeds it prunes the branches which do not fit to the maximum branch number limit </li></ul></ul>
  12. 12. Inductive logic programming (ILP) <ul><li>Induction? </li></ul><ul><li>combination of the 'abduction' (guessing) to select some hypotheses and the 'justification' to seek those hypotheses to justify the observed facts. </li></ul>
  13. 13. Inductive logic programming (ILP) <ul><li>positive examples </li></ul><ul><ul><li>+ negative examples => hypothesis </li></ul></ul><ul><ul><li>+ background knowledge </li></ul></ul><ul><li>background knowledge </li></ul><ul><ul><li>to control the search process (prune some search paths) </li></ul></ul><ul><ul><li>introduce predetermined subgraph patterns </li></ul></ul><ul><ul><li>ILP can be in any of four categories </li></ul></ul>
  14. 14. Inductive database <ul><li>Subgraphs and relations among subgraphs are pre-generated sad stored in an inductive database </li></ul><ul><li>Advantage: fast operation as the basic patterns </li></ul><ul><li>Disadvantage: large amount of computation and memory utilization </li></ul>
  15. 15. Complete level-wise search <ul><li>It's Complete and Direct </li></ul><ul><li>Here data are not sets of items </li></ul><ul><li>Rather graphs having the combinations of a vertex set V(G) and an edge set E(G) which include topological information. </li></ul><ul><li>Extended approach of Apriori algorithm is used </li></ul>
  16. 16. Support Vector Machine (SVM) <ul><li>Used for classification and regression analysis </li></ul><ul><li>A non-probabilistic binary linear classifier </li></ul><ul><li>SVN is a heuristic search and an indirect method in terms of subgraph isomorphism problem. </li></ul>
  17. 17. Categorization <ul><li>Mathematical Graph Theory Based Approaches </li></ul><ul><li>Greedy Search Based Approaches </li></ul><ul><li>Inductive Logic Programming Approach </li></ul><ul><li>Inductive Database Based Approaches </li></ul><ul><li>Kernel Function Based Approaches </li></ul>
  18. 18. Greedy Search Based Approaches <ul><li>Use heuristics to evaluate the solution. </li></ul><ul><li>Two major works </li></ul><ul><li>SUBDUE </li></ul><ul><li>GBI </li></ul>
  19. 19. Graph Based Induction (GBI) <ul><li>Has two methods </li></ul><ul><ul><li>one for chunking and the other for extracting patters. </li></ul></ul><ul><li>Can arrive at local minimum solutions; using pair wise chunking at each step by the opportunistic beam search. </li></ul><ul><li>Ability to reconstruct the original graph as and when needed </li></ul><ul><li>The advantage of GBI is that it can handle both directed and undirected labelled graph even with closed paths which includes closed edges. </li></ul><ul><li>Use empirical graph size definition, limitation in continuously compressing the graph, graph never becomes a single vertex. </li></ul><ul><li>Extract substructures and construct a classifier. </li></ul>
  20. 20. SUBDUE <ul><li>A graph-based relational learning system </li></ul><ul><li>Compress the graphs based on Minimum Description Length (MDL) principle </li></ul><ul><li>Not face high computational complexity (uses computationally constrained beam search) </li></ul><ul><li>Miss some optimum sub graphs </li></ul><ul><li>fewer number of highly interesting patterns; than generating a large number of patterns from which interesting patterns need to be identified. </li></ul><ul><li>Runtime much larger than gSpan and FSG: non-linear with the dataset size (because of the implementation of graph isomorphism problem) </li></ul>
  21. 21. Mathematical Approaches <ul><li>Apriori-based methods </li></ul><ul><ul><li>AGM </li></ul></ul><ul><ul><li>FSG </li></ul></ul><ul><li>Pattern Growth methods </li></ul><ul><ul><li>gSpan </li></ul></ul>
  22. 22. Apriori-based Approach <ul><li>AGM </li></ul><ul><ul><li>Used to mine “frequent induced subgraphs” </li></ul></ul><ul><ul><li>Works with both directed and undirected graphs </li></ul></ul><ul><ul><li>Importantly, this algorithm is not limited to the connected graphs. It also supports isolated graphs. </li></ul></ul>
  23. 23. <ul><li>AGM </li></ul><ul><li>Breadth first search. Create new candidates for level k+1 by joining two graphs at level k. </li></ul><ul><li>AGM generates new graphs by adding a new node: </li></ul><ul><li>And then proceeds as per Apriori... </li></ul>
  24. 24. <ul><li>FSG </li></ul><ul><ul><li>FSG works better on graph data sets with more edge and vertex labels </li></ul></ul><ul><ul><li>This is an optimized algorithm of AGM with added techniques for efficiency. </li></ul></ul><ul><ul><li>FSG increases the efficiency of the candidate generation of frequent subgraphs by introducing the Transaction ID (TID) method. </li></ul></ul><ul><ul><li>efficient candidate subgraph generation algorithms. </li></ul></ul>
  25. 25. <ul><li>FSG </li></ul><ul><ul><li>FSG is a apriori-based and therefore uses level-wise algorithm </li></ul></ul><ul><ul><li>Faces two challenges: </li></ul></ul><ul><ul><ul><ul><ul><li>candidate generation: the generation of size subgraph candidates is more complicated and costly </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>pruning false positives: subgraph isomorphism test is an NP-complete problem </li></ul></ul></ul></ul></ul>
  26. 26. <ul><li>gSpan </li></ul><ul><ul><li>Uses Depth-First-Search (DFS) </li></ul></ul><ul><ul><li>can be used to find frequent sub graphs one by one from small to large ones. </li></ul></ul><ul><ul><li>Advantages </li></ul></ul><ul><ul><ul><li>No candidate generation and false test </li></ul></ul></ul><ul><ul><ul><li>Better saving of space by DFS. </li></ul></ul></ul>Pattern growth mathod
  28. 28. Another three approaches to mine graph based data. <ul><ul><li>Inductive Logic Programming approach </li></ul></ul><ul><ul><li>Inductive database approach </li></ul></ul><ul><ul><li>Kernel function based approach </li></ul></ul>
  29. 29. ILP approach. ILP systems constructs predictive model for a given data set by searching large space of candidate hypothesis. <ul><ul><li>WARMR – proposed in 1998. Combination of Apriori-like level wise search and IPL method. </li></ul></ul><ul><ul><li>But have a high computational complexity. </li></ul></ul><ul><ul><li>FARMER – proposed in 2011. Runs two orders of magnitude than WARMER. </li></ul></ul>
  30. 30. Inductive DB approach. Databases which are capable of handling patterns within data. Quite different from from typical data bases. Uses interactive querying process to mine data in these data bases. <ul><ul><li>MolFea is an effort related to this area. Has a better computational efficiency which mines linear fragments in chemical compounds.. </li></ul></ul><ul><ul><li>Also this performs a complete search of the paths in graph data. </li></ul></ul>
  31. 31. Kernel Function based approach This “kernel” function basically defines similarity between two graphs The paper consists of two efforts done based on this approach, which classifies the graphs in to binary classes by SVM (Support Vector - Machine).