Abstract. The behaviour ethics of organization is based on Man, Machine, Material, Data and Information. In the past, the first three were considered but recently other two i.e. data and information are implemented. Furthermore, being autonomously maintained, data can change in time and even change its basic structure, making it difficult for representation of systems to accommodate these changes. Graph databases are able to represent any kind of information, naturally accommodate the change in data and they also make easier for machine learning, bioinformatics, web data mining, and social networking to use the stored information. Graph Mining is the process of extracting subgraphs from graph database or database of graphs. Existing methods generally classified on basis of searching methods, i.e. depth first search and breath first search. In this paper, instead of directly applying any Frequent Subgraph Mining (FSM) algorithm, we first divided the large graph database into smaller parts, and then apply optimized FSM algorithm parallel to achieve the faster result in effective way than previous exiting one. In this paper, we implement geometric parallel graph partitioning algorithm as it does not seem to affect initial distribution of graph and compute in faster way. The partition generated can be used to reallocate graph before performing parallel multilevel or spectral partitioning. After partition is performed, we use a filtration technique to reduce the number of candidate subgraphs by reducing the overall time complexity by 20% to 25% experimentally.
Graph database are becoming more demanding in the field of commercial, research, and government organizations as they use graphs to model social networking, protein interaction, chemical structures and a variety of other system. Everything is possible due to a pictorial way of representing complex relationship between entities. Graph mining is central and well studies problem in graph, and plays important role in index selection, graph clustering, database design, modelling of user profile. As a consequence, several graph mining algorithms have been developed. Some of them rely on the principles from inductive logic programming and describe the graph structure by logical expressions. Most of the algorithms are used for finding Frequent Subgraph Mining (FSM) where both are sequential and non-sequential in very large graph database or database of set of small graphs. There is more challenging job to store and query in a single large graph database by using relational model. Using graph database it is easier to make connection between data in form of relationships which makes processing is faster. It is very important to analyze the data and extract desired information from a large graph database. Frequent Subgraph Mining (FSM) algorithm plays an important role in graph mining field. Generally Frequent Subgraph Mining (FSM) is classified into subparts. First is the graph transaction-based Frequent Subgraph Mining (FSM) which comprises a collection of small size or medium size graph called transaction i.e. a graph database. Second is the single graph-based Frequent Subgraph Mining (FSM) which comprises a very large graph.
Mining frequent subgraphs in a single large graph database is more complicated and computationally demanding because multiple instances of identical subgraphs may chunk to overlap. For these reasons, in this paper we first divided single large graph database into smaller ones, then in parallel we apply optimised GRAMI algorithm. Generally a single large graph database have increased a lot, migrating from gigabyte to terabyte, and up to peta bytes. But some of Frequent Subgraph Mining (FSM) algorithm source data may not fit on a single machine hard drive. For these reasons we divided large graph into smaller subgraphs and then implemented Frequent Subgraph Mining (FSM) which solves storage problem as well as executed faster way .
The rest of paper is organised as follows: Section2 contains preliminary information, section3 represents surveys on the related word, section briefly explain the geometric graph partition algorithm, section5 details optimized graph mining algorithm, and section6 show experimental analysis.
In this section, we present some basic notations and definitions
Definition 1 (Graph): A Graph G= (V, E) is a collection objects where V is set of vertices, and E ⊆ V×V is set of edges.
Definition 2 (Labelled Graph) : A labelled Graph G =(V,E,L,l) consists of a set of nodes V, a set of edges E i.e. E ⊆V×V and a labelling function that assigns label from set L to the vertex from set V i.e. l: V U E →L.
Definition 3 (Subgraph) : A Graph S=(Vs,Es,Ls,l) is a subgraph of a graph G=(V,E,L,l) iff Vs ⊆V,Es ⊆ E, and
Ls(u) =L(u) ∀ u є Vs U Es.
Definition 4 (Subgraph Isomorphism) :Let S=(Vs,Es,Ls,l)is a subgraph of a graph G=(V,E,L,l). A subgraph isomorphism of S to G is an bijective function f: Vs → V satisfying (a) Ls(v) =L(f(v)) ∀v є Vs and (b) (f(u),f(v)) є E and Ls(u,v) = L(f(u),f(v)) ∀ (u,v) є Es.
Definition 5 (Anti_monotone): Anti_monotone property states that for every graph G,A and B ,where A is a subgraph of B and G is input graph, the support of subgraph B in G should never be greater than support of subgraph A in G.
Definition 6 (Overlap of two or more isomorphism): An overlap of two or more isomorphism e.g. e1 and e2 of a subgraph S occurs when e1(Vs)∩e2 (Vs) ≠φ. .To solve this problem only one out of all overlapping isomorphism should be counted. Therefore, the overlap graph (or instance graph) of the subgraph is generated and in different literatures different types of anti monotone support matrices are used.
Definition 7 Constraint Satisfaction Problem (CSP)
Let S(Vs,Es,Ls) be a subgraph of a graph G(V,E,L) . The subgraph S to graph G CSP  is a CSP(X, D,C) where:
X contains a variable xv for every node v є Vs
D is set of domains for each variable xv є X. Each domain is a subset of V.
Set C contains the following constraint:
xv ≠xv’ , for all distinct variable xv ,xv’ є X.
L(xv) =Ls(V) , for every variable xv є X
L(xv,xv’)=Ls(v.v’) , for all xv,xv є X such that (u,v’)є Es.
3 Related Work
There are so many research works going on frequent subgraphs mining which broadly come under two categories i.e. a single large graph database or database of set of small graphs. Candidate Generation techniques can be broadly classified into two main categories, Apriori based approach (uses Breath First Search), and Pattern –growth approaches (uses Depth First Search).
Fengcai Qiao et al. has introduced SSIGRAM(Spark based Single Graph Mining), a Spark based parallel frequent subgraph mining algorithm in a single large graph, which conducts in parallel subgraph extension and support counting respectively, focusing on the two core steps with high computational complexity in frequent subgraph mining. They also provide a heuristic search strategy and optimization technique i.e. load balancing, pre-search pruning, top-down pruning for support computing operation. The main limitation is that it can’t fit to mine frequent subgraph on single uncertain graph.
Although the support count is very common in Graph Mining. N.Vandik et al. derived necessary measure admissibility based on operations on instance graphs, which are developed and proved. An intuitive measure (size of maximum independent set) was presented and shown to be admissible.
The gSpan algorithm is used for finding frequent subgraphs corresponding to geometric subgraph in a large collection of geometric graph. It builds a new lexicographic order among graphs, and maps each graph to a unique minimum DFS code as its canonical label. Based on this lexico-graphic order, gSpan adopts the depth-first search strategy to mine frequent connected subgraphs efficiently. J. Huan et al. proposed a disk-based approach where SPIN algorithm used. MARGIN introduced maximal frequent sungraphs. CloseGraph algorithms generate closed frequent patterns.
The subgraph support calculation in a single large graph database is a challenging job. Jiang C et. al. give an idea of subgraph support with overlap graphs. They argued that MIS support is sometimes too restrictive and suggested an alternatives definition (HO-support), which allows embedding to overlap in certain harmless ways. Only harmful overlaps, which have the effect that the resulting support violates the anti-monotone condition, to prevent that both of two overlapping embedding are counted for support of a subgraph.
4 Geometric Graph Partition
The Graph partitioning is the process of dividing a large graph database into smaller clocks or pieces by cutting either vertex or edge. Generally, Graph Partitioning (GP) algorithm broadly classified into three categories i.e. Static Graph partition, Parallel Graph partition, Dynamic Graph partition. Fuduccia et al. derived method for static graph partition by a multilevel approach to computing as eigenvector needed for a spectral partition algorithm. The two essential parts of multilevel approach are coarsening strategy and local improvement method. The main limitation is that it does not provide a good quality of input graph. Dynamic Graph Partition can’t do in a single memory as they frequently change the number of vertices node in a graph. Since we are concentrating on a single large graph, in this paper we considered Parallel Graph Partition approach which provides high quality of input graph with less edge cut. Yu Charlie Hu et al. derived the parallel graph partitioning by geometric, Fengcai et al. derived same by spectral whereas Karypis et al. derived same by multilevel concepts. In this paper, we considered Geometric Graph Partitioning algorithm as it easily parallelize than spectral and multilevel partition.
The Geometric Graph Partition algorithm based on geometric structure of a mesh that can be used for a data-parallel formulation which helps to apply frequent subgraph mining algorithm simultaneously. The geometric information not only provides guaranteed quality of partition algorithm but also provide efficient algorithm design and implementation.
The Geometric Parallel Partitioning can be done by either two-way partition or multi-way partition. In case of
two-way partition a mesh M is divided into approximately equal size of two sub mesh where as k-way partition of mesh is divided into approximate equal size of the k sub meshes. In this paper, we used k-way partitioning by recursively implementing two-way partition method. Let M =(A,x,y,z) be a well-shaped mesh in graph of n vertices and e edges. Here, we assume that a mesh M is given by its geometric structure xyz together with its combinatorial structure A, where xyz is an array of coordinates of the mesh vertices and A is an array of vertex pair that represents the edges among mesh vertices. For any positive integer k, the recursive application of geometric partitioning algorithm find a k-way partitioning which cuts O (K 1/d n 1-1/d) edges. The 2-way partition can’t be directly translated into a data-parallel formulation for multi-way partitioning. For this reason we need to use global array structure to express concurrent partitioning of sub meshes.
5 Frequent Subgraph Mining
Generally Frequent subgraph Mining(FSM)algorithm consist of two steps : (a) Candidate Generation (b) Support Calculation. In this paper, we apply first geometric graph parallel partitioning algorithm into a single large graph which is able to execute the Candidate Generation simultaneously with a given minimum support value, that leads to faster result compared to previous one.
During Candidate Generation, a pair of k-subgraphs are merged to form a candidate (k+1)- subgraph by either vertex growing or edge growing approach. In this paper we use edge growing approach. First we calculate all nodes in the individual graph with support value (σ) equal or greater than the user defined support value (τ) i.e. min-sup( σ ≥ τ ). Second, the subgraph is extended to form a new graph, by adding new edge and then calculate its support value. If its value is greater or equal to min-sup (τ) ,then add to the F ,otherwise discard it on the basis of anti-monotone property, We have to repeat the second step until no more frequent subgraph exist. There is a chance of repeated edges in two or more subgraph which is overcome by filtration method. It is so called as it filters out some infrequent subgraph without needing to calculate their support. The upper-bound (us) support of a subgraph is maximum possible value of the support any subgraph can have. If upper-bound (us) comes out to be less than min-sup, the sub-graph is discarded.
6 Performance Analysis
In this section, we experiment, evaluate our framework and compare with both non-optimized FSM and optimized FSM. The Geometric Partitioning algorithm provides strong good quality of partitioning in certain class of graphs, such as planar graphs, bounded genus graphs, bounded forbidden minor graphs, nearest neighbour graphs and well-shaped meshes. The algorithm decompose the single large graph database into smaller set of approximately equal size .Then we use the pattern growth for candidate generation. The support for each candidate is evaluated by Minimum Number of node Image support(or MNI–support).We consider MNI- support measure as it avoids the costly maximum independent set computations needed for both MIS_ support and HO-support. All the experiments are performed on Windows 8.1 machine with AMD A4-1250 AU with Radon 3.0 GHZ. with 6.00 GB.
Datasets. We experiment on EU email communication network and Enron email communication network by applying different values of min-sup. The main characteristics of datasets are summarized in table 1.
Table 1: Datasets and their characteristics
SL.NO Dataset #Nodes #Edges Density
1 EU email communication network 265214 420045 Dense
2 Enron email communication network 36692 183831 Medium
EU email communication network
The network was generated using email data from a large European research institution. Nodes represent individual persons and the edge between two persons represent are directed and denote that at least one email as been sent from one email has been sent from one person to the other. All edges are simple: even is a person has sent multiple emails to another person, the two persons will be connected only by a single edge in that direction. Given a set of email messages, each node corresponds to an email address. We create a directed edge between nodes i and j, if i sent at least one message to j. There are total number of nodes 265214 and directed edges 420045.
Enron email communication network
It covers all the email communication within a dataset of around half million emails. This data was originally made public, and posted to the web, by the Federal Energy Regulatory Commission during its investigation. Nodes of the network are email addresses and if an address i sent at least one email to address j, the graph contains an undirected edge from i to j. Note that non-Enron email addresses act as sinks and sources in the network as we only observe their communication with the Enron email addresses. There are total number of nodes 36692 and undirected edges 183831.
7 Conclusion and Future Work
Herein we have implemented optimized FSM algorithm (filtration method) parallel to get result faster way than traditional one. We also compare with both optimized FSM and non-optimized FSM in time complexity manner. There are so many fields from bioinformatics to social network study where we can use this algorithm depending on size of input graph database. We further planning to work on dynamic implementation of optimized FSM algorithm so that we can use in real world applications and scalable graphs by help of distributed memory system.
This essay has been submitted by a student. This is not an example of the work written by our professional essay writers. You can order our professional work here.