Skip to main content
NIHPA Author Manuscripts logoLink to NIHPA Author Manuscripts
. Author manuscript; available in PMC: 2024 Feb 29.
Published in final edited form as: Proc ACM SIGMOD Int Conf Manag Data. 2017 May 9;2017:391–402. doi: 10.1145/3035918.3035936

Flexible and Feasible Support Measures for Mining Frequent Patterns in Large Labeled Graphs

Jinghan Meng 1, Yi-Cheng Tu 2,*
PMCID: PMC10902833  NIHMSID: NIHMS1959080  PMID: 38425568

Abstract

In recent years, the popularity of graph databases has grown rapidly. This paper focuses on single-graph as an effective model to represent information and its related graph mining techniques. In frequent pattern mining in a single-graph setting, there are two main problems: support measure and search scheme. In this paper, we propose a novel framework for constructing support measures that brings together existing minimum-image-based and overlap-graph-based support measures. Our framework is built on the concept of occurrence / instance hypergraphs. Based on that, we present two new support measures: minimum instance (MI) measure and minimum vertex cover (MVC) measure, that combine the advantages of existing measures. In particular, we show that the existing minimum-image-based support measure is an upper bound of the MI measure, which is also linear-time computable and results in counts that are close to number of instances of a pattern. Although the MVC measure is NP-hard, it can be approximated to a constant factor in polynomial time. We also provide polynomial-time relaxations for both measures and bounding theorems for all presented support measures in the hypergraph setting. We further show that the hypergraph-based framework can unify all support measures studied in this paper. This framework is also flexible in that more variants of support measures can be defined and profiled in it.

Keywords: Data mining, graph mining, support measures, hypergraph

1. INTRODUCTION

Graphs have become increasingly important in modeling complicated structures, such as chemical compounds, bimolecular structures, social networks, aviation maps, and the Web. Recent years have witnessed intensive studies on mining graph databases for interesting patterns. Such endeavors often involve calculating the frequency of the identified patterns (i.e., subgraphs). As shown in many problems, frequent patterns are believed to reveal essential features of the system modeled. A clear definition of any frequent pattern mining problem depends on a support measure as a notion of the frequency of the patterns of interest.1 In a transaction-based frequent pattern mining setup, the development of a support measure is straightforward as we only need to count individual graphs (in a graph database) that contain the query pattern. The problem is more interesting and challenging in a single-graph setup, in which the frequent patterns are to be found in only one graph that often consists of a large number of vertices and edges.

The design of a support measure is non-trivial in the single-graph environment as the measure has to fulfill several requirements. For example, an obvious definition of support of a pattern is the number of its occurrences in the input graph (see more details in Section 2). However, this definition possesses a feature in that the support may increase when extending a pattern with more edges/vertices. It is not hard to see such feature is undesirable: when a query pattern grows, the search becomes more selective thus the support should decrease. First introduced by Vanetik et al. [16], anti-monotonicity is well accepted by the graph mining community as an essential rule for support measure design. Vanetik et al. [16] also proposed an anti-monotonic support measure called the maximum independent set based support (MIS). The MIS is built on an important concept named overlap graph, which is a graph that consists of the instances of the query pattern in the original graph (database) as vertices and the overlap of such instances as edges. The main problem of MIS is the lack of efficient algorithms – it is proved to be NP-hard. Its extensions (e.g., minimum clique partition (MCP) measure developed by Calders et al. [3]) also suffer from the same problem.

Another support measure named the mininum-image-based support (MNI) [2] is based on the technique of vertex images. Being another anti-monotonic support, MNI requires only linear time to compute. The MNI support, however, has serious drawbacks due to its lack of intuitiveness. Specifically, by ignoring the topological structure of the query pattern and partial overlap of occurrences, MNI could arbitrarily overestimate the frequency of a pattern, and this lowers its value in real applications. The overlap-graph-based support (represented by MIS) and MNI support, as well as their variants, represent the two major bodies of work in defining support measures in frequent graph mining. While both are anti-monotonic, they stand on opposite sides of the spectra of intuitiveness and efficiency. Therefore, the main objective of this study is to develop new support measures that combine the best of the two worlds: they are fast (with linear/polynomial time), avoiding the high cost of computing MIS support measure, and intuitive, without over counting patterns as in MNI-based measures.

In this paper, we first introduce the concept of occurrence/instance hypergraph, which is a graph built on the occurrences or instances of the pattern. Based on the hypergraph concept, we define two new support measures: the minimum instance (MI) measure and the minimum vertex cover (MVC) measure. For the MI support measure, we show that the existing MNI support is an upper bound for it, or in other words, it is closer to the MIS support of a pattern than the MNI. Same as MNI, the MI support is also linear-time computable. The MVC support returns frequency that is even closer to MIS. Although computing MVC measure is NP-hard, MVC enjoys a k-competitive approximate algorithm. Furthermore, we provide polynomial-time computable relaxations of both MVC and MIS measures. This makes MVC and MIS more efficient while still providing meaningful frequency values.

We further demonstrate that our new hypergraph-based method serves as a unified framework that encapsulates not only MI and MVC, but also the existing support measures including MIS and MNI. Specifically, we first show that there is a natural mapping of MNI in the hypergraph setting. As to the MIS, we show it is equivalent (in both value and computational complexity) to a support measure defined from the instance hypergraph, the maximum independent edge set support (MIES). Bounding theorems that describe the differences among all support measures included in the hypergraph-based framework are also presented.

To summarize the main findings of this paper, let us denote the values of MIS, MIES, polynomial relaxation of MIES and MVC, MVC, MI, MNI as σMIS,σMIES,νMIES, νMVC,σMVC,σMI,σMNI, respectively. The bound and computational complexity of all aforementioned support measures are as follows.

σMIS=σMIESνMIES=νMVCσMVCσMIσMNI
Measure Complexity σMIS(σMIES) NPH σMVC NPH k-approx νMIES Poly
Measure Complexity νMVC Poly σMI Linear σMNI Linear

Furthermore, we showcase the potential of the new framework as a platform for defining and profiling a wide ranges of support measures. Figure 1 is a sketch of the hypergraph framework and displays counts of support measures of a oneedge pattern in a small data graph.

Figure 1:

Figure 1:

Example showing support measures of the pattern and the hypergraph framework. In this case, we have σMIS=2σMVC=3σMI=4σMNI=5

In a nutshell, the occurrences of a pattern in a data graph are viewed as edges in hypergraph framework. From the perspective of MIS and MVC support measures, vertices in edges are treated as one set, and the cardinality of maximum independent edge set and minimum vertex cover set are used as support measure respectively. MNI and MI support measures break the edges into subedges (subsets) and then adopt subedges’ minimum distinct images count as support. In this way, MNI and MI support measures reduce computation complexity to linear time (in number of occurrences).

The rest of this paper is organized as follows: In Section 2, we formally define the problem and sketch the necessary background for the problem; In Section 3, we introduce our new support measures and study their features; In Section 4, we present a framework that unifies all support measures mentioned in this paper and discuss its potential in defining and studying a wide range of support measures; In Section 5, we present a brief review of related work; and we conclude our paper in Section 6.

2. PRELIMINARIES

In this section, we introduce basic notations to describe the problem and the necessary background.

2.1. Labeled Graphs

In this paper, we only consider the case of a labeled graph, which is simply referred to as graph hereafter. In all figures of this paper, the shade of a vertex represents its label.

Definition 1. A (undirected) labeled graph

G=VG,EG,λG

consists of a set of vertices VG, a set of edges EGVG×VG:=(u,v)u,vVG,uv and a labeling function λG:VGΣ that maps each vertex of the graph to an element of the alphabet Σ.

Definition 2. A graph S=VS,ES,λS is a subgraph of G=VG,EG,λG if VS is a subset of VG and ES is a subset of EG and for all vVS,λS(v)=λG(v).

Definition 3. A pattern P=VP,EP,λP is a labeled graph we use as a query against another graph.

Definition 4. Let P be a graph pattern, and p a subgraph of P, denoted by pP. We call p a subpattern of P, and likewise, we call P a superpattern of p.

2.2. Graph Isomorphism

Given the problem of finding pattern P in a large dataset graph G, we need techniques for determining whether P is structural identical to G or a subgraph of G, and consequently decide if pattern P appears in dataset graph G.

Definition 5. A graph G1 is isomorphic to G2 if and only if there exists is a bijection (one-to-one mapping) between the vertex sets of G1 and G2

f:VG1VG2

that preserves vertex labels and

v1,v2EG1 if and only if fv1,fv2EG2.

Generally speaking, an isomorphism is an edge-preserving bijection between the vertex sets of two graphs, say G1 and G2. In this case, one can take G1 as a copy of G2, or vise versa.

Definition 6. An automorphism of graph G is an isomorphism from G onto itself.

Definition 7. A graph G1 is subgraph isomorphic to G2 if and only if G1 is isomorphic to a subgraph of G2.

In order for us to know how many times a pattern appears in a data graph, we need to define the concept of an occurrence and an instance of the pattern in the data graph.

In this article when there is no confusion we write graph G=VG,EG,λG as G=VG,EG for simplicity.

Definition 8. Given a pattern P=VP,EP and a dataset graph G=VG,EG, an occurrence is an isomorphism f from pattern P to a subgraph of G. That is to say f is also a subgraph isomorphism from P to G.

Definition 9. Given a pattern P=VP,EP and a graph G=VG,EG, a subgraph S of G is an instance of pattern P in G when there exists an isomorphism between P and S.

Note that occurrence and instance are two different concepts. An occurrence is an isomorphism between pattern P and a subgraph of dataset graph G, while an instance is a subgraph of G that is isomorphic to pattern P. There can be multiple occurrences mapping pattern P to one instance. For example, in Figure 2 the triangle-shaped pattern has 6 occurrences f1,f2,f3,f4,f5,f6 in the data graph, while it has only one instance which is the subgraph induced by vertices 1, 2 and 3. Occurrence and instance are key components in the support measure framework we propose.

Figure 2:

Figure 2:

Example showing the triangle-shaped pattern has 6 occurrences and 1 instance in data graph. We have an MIS measure of 1 but the MNI measure equals 3 – it overestimates the count of pattern

2.3. Overlap Concepts and Support Measure

The purpose of defining support measure is to count the appearances of a pattern P in a data graph G. The definition of support measure is given below:

Definition 10. A support measure of pattern P in data graph G is a function σ:G×GR+, which maps (P,G) to a non-negative number σ(P,G).

One natural way of defining a pattern support measure is to use its occurrence count, however this measure does not satisfy the anti-monotonic property, which states that the support of a pattern must not exceed that of its subpatterns [16, 14]. A more intuitive support measure is the count of instances of the pattern in a dataset graph. This measure, however, is not anti-monotonic either [16, 14].

Anti-monotonicity is a basic requirement for support measure because most existing frequent pattern mining algorithms depend on it to safely prune a branch of infrequent patterns in the search space for efficiency. Formally, we have

Definition 11. A support measure σ of pattern P in G is anti-monotonic if for any pattern p and its superpattern P, we have σ(p,G)σ(P,G).

To address the above challenge, Vanetik et al. [16] proposed the first non-trivial anti-monotonic support measure named maximum independent set based (MIS) support. The MIS support is developed on top of the so-called overlap graph derived from the data graph. We describe the main ideas of this method as follows. First we should explain the concepts of overlap.

Definition 12. Vertex overlap: A vertex overlap of occurrences f1 and f2 of pattern P=VP,EP in data graph G=(V,E) exists if vertex sets f1VP and f2VP intersect, that is, f1VPf2VP where fiVP=fi(v):v VP,i=1,2. A vertex overlap of instances S1=VS1,ES1 and S2=VS2,ES2 of pattern P exists if vertex sets of S1 and S2 intersect, that is, VS1VS2.

Definition 13. Edge overlap: An edge overlap of occurrences f1 and f2 of pattern P=VP,EP in data graph G=(V,E) exists if edge sets of f1EP and f2EP intersect, that is, f1EPf2EP where fiEP=fi(u),fi(v) :(u,v)EP,i=1,2. An edge overlap of instances S1=VS1,ES1 and S2=VS2,ES2 of pattern P exists if edge sets of S1 and S2 intersect, that is, ES1ES2.

Definition 14. Given a pattern P=VP,EP and a dataset graph G=(V,E), an occurrence (instance) overlap graph is a graph O such that each vertex of O represents an occurrence (instance) of P in G, and two vertices u and v are adjacent if the two occurrences (instances) overlap (in sense of one type of overlap defined above).

In this article, we mainly study how occurrences overlap and we only consider overlap in vertex.

Definition 15. An independent (vertex) set of graph G=(V,E) is a subset of V, such that no two of which are adjacent.

Definition 16. Given a pattern P=VP,EP and a data graph G=(V,E), the maximum independent set based support is defined as the cardinality of maximum independent vertex set of occurrence or instance overlap graph O:

σMISP,G=maxII,

where I is an independent set of O. We use symbol || to denote the number of elements in the set.

The main drawback of the MIS support is computing efficiency - it is shown [11] that maximum independent set problem is NP-hard in number of graph vertices. Because MIS [16] is based on overlap graph, vertices represent instances of pattern in data graph. Thus computing MIS as a support measure is also NP-hard.2

Bringmann and Nijssen [6] proposed a support measure called minimum image based support (MNI). It is based on a technique different from the overlap graph. The main concept here is image, which is an existence of a vertex in the pattern (called node hereafter) in the data graph. For example, in Figure 2, node v1 in the pattern has 3 distinct images because there are occurrence map v1 to vertices 1, 2, 3 in data graph (e.g., f1v1=1,f3v1=2 and f5v1=3).

Definition 17. Given a pattern P=VP,EP, a data graph G=(V,E), if P has m occurrences f1,f2,,fm in G, the minimum image based (MNI) support of P in G is defined as

σMNI(P,G)=minvVPfi(v):i=1,2,,m.

In other words, for each node v in pattern P, MNI support identifies the count c of its unique images, here c=fiv: i=1,2,,l}. Then MNI support measure of P in G is the minimum count c among all nodes in pattern P.

MNI can be configured to allow certain level of tolerance in images [6]. Given a parameter k, a support measure can be defined based on determining where each connected subgraph containing k nodes of the pattern can be matched with each other.

Definition 18. Given a pattern P=VP,EP, a data graph G=(V,E), and a positive integer parameter k, if P has m occurrences f1,f2,,fm in G, the minimum k-image based support is defined as

σMNI(P,G,k)=minVfiV:i=1,2,,m,

where V is connected subset of VP and V=k.

The anti-monotonicity of MNI is guaranteed by taking the node in P that is mapped to the least number of unique nodes in G. The proof of anti-monotonicity of σMNI(P,G,k) is similar.

A clear advantage of MNI support over the NP-hard MIS support is computation time. The reason is that it only requires a set of images for every node in a pattern, and finding the minimum number of distinct images for each set can be done in O(n) where n is the number of occurrences of a pattern. However, MNI support has an obvious disadvantage, that is lack of intuitiveness. Let us revisit the example in Figure 2: the MIS support of the triangle-shaped pattern is 1 while MNI support is 3, because the minimum number of images of each node is 3. It does not agree with our intuition that the 6 occurrences f1,f2,f3,f4,f5,f6 of the pattern overlap and there is only one instance, which is the subgraph induced by vertices 1, 2 and 3.

The MIS and MNI supports represent the two main flavors of work in the design of support measure for frequent subgraph mining. Both are anti-monotonic yet they stand on far ends of computing efficiency and overestimation of pattern frequency. While the MIS returns the smallest count, there is no efficient algorithm to compute it [3]. The MNI requires linear time to compute but can return an arbitrarily large count for a pattern [2]. Both MIS and MNI have variants other than the basic forms mentioned in this section. We will introduce some of the variants in Section 5. Here we only emphasize that those variants do not significantly change the features of MIS and MNI.

Intuitively, the MNI support returns counts that are closer to the number of occurrences of a pattern. However, it is more natural to define support measure of a pattern according to the number of instances (note that MIS calculates the number of independent instances). Recall the case in Figure 2: the number of instance is 1, however its MNI support measure is 3, and this does not follow common sense. It is known, however, that the count of instances as a support measure is not anti-monotonic, in this paper we present two anti-monotonic support measures that achieve counts that are closer to the number of pattern instances and MIS support measure.

3. NEW SUPPORT MEASURES

In this section, we first introduce a new concept named occurrence/instance hypergraph from which our new support measures are constructed. Such a concept simplifies the problem of finding support measures with desired features. Note that this technique is different from the overlap graph used in MIS and the images of occurrences used in MNI. Instead of instances (subgraphs) and occurrences (isomorphisms), we represent a node (i.e., vertex in pattern) image as a vertex and an occurrence/instance as an edge.

Definition 19. A hypergraph H=(V,E) consists of a set V=v1,v2,,vn of n vertices and a set E=e1,e2,,em of m edges, where each edge is a non-empty subset of V. A simple hypergraph H is a hypergraph in which no edge is subset of another edge, that is, if eiej then i=j. A k-uniform hypergraph is a hypergraph such that all its edges have size k.

For discussions related to the features of relevant support measures, we also introduce the concept of dual hypergraph.

Definition 20. The dual hypergraph H*=(E,X) of H=(V,E) is a hypergraph whose vertices and edges are interchanged, so that the vertices are given by E=e1,e2,em, and the edges are given by X=X1,X2,,Xn where Xj=ei:vjei,j=1,2,,n, that is, Xj is the collection of all edges in H which contain vertex vj.

As a key technique, we show how occurrences and instances of a pattern are integrated into a hypergraph and support measures are defined within the hypergraph.

Definition 21. If pattern P=VP,EP has m occurrences fi:i=1,,m, the occurrence hypergraph of P in G is defined as HO=(V,E) where V=f1VPf2VPfmVP, and E=ei:i=1,,m, each ei=fiVP. In other words, hypergraph vertex set V is the collection of all pattern node images, and each edge ei is a collection of pattern node images mapped by occurrence fi. We also give each ei a label fi to distinguish them from each other.

Definition 22. If pattern P=VP,EP has m instances Si=VSi,ESi:i=1,,m in data graph G, the instance hypergraph of P in G is defined as HI=(V,E) where V=VS1VS2VSm and E=ei:i=1,,m, each ei=VSi. We also give each ei a label Si to distinguish them from each other.

For the following discussions, we want to emphasize that, since all edges in occurrence (instance) hypergraph are related to the same pattern, they contain the same number of vertices which means that occurrence (instance) hypergraphs are uniform hypergraphs.

Let us use Figure 3 to show how the hypergraphs are constructed: the occurrence hypergraph HO=(V,E) has vertex set V={1,2,3,4,5,6,8,9,10,11,13,15,16,17} and edge set E=e1,e2,e3,e4,e5,e6={1,2,3,4,5,6,{4,6,8},{8,9,10},{11,13,17},{11,15,16}}. Note that in occurrence (instance) hypergraph, each edge represents one occurrence (instance). In Figure 3 the instance hypergraph also has the same edge set, hence it looks like the same as occurrence hypergraph. However, in many other situations occurrence and instance hypergraph are different. For example in Figure 2, occurrence hypergraph of the triangle-shaped pattern has 6 edges because there are 6 occurrences. Although all the edges have the same vertex set {1, 2, 3}, they are considered as 6 different edges because edge labels are different. On the other hand, instance hypergraph of pattern in Figure 2 has only one edge since there is one instance. The reason why we give such labels for each edge is to save necessary information from data graph for studying various support measures.

Figure 3:

Figure 3:

Occurrence/instance hypergraph of a triangular pattern

The differences between the occurrence hypergraph and instance hypergraph are partly caused by the pattern’s topological structure, or more specifically, automorphisms. When a pattern has non-identity automorphisms, multiple occurrences project the pattern to the same subgraph of dataset graph. When pattern admits no automorphism, its occurrence and instance hypergraphs are quite similar.

As shown in Figure 3, pattern occurrences that are represented by hypergraph edges overlap in various degrees and positions. While in occurrence (instance) overlap graphs, each occurrence (instance) is converted to a vertex, if two occurrences (instances) overlap, an edge is generated between them. As a result, how occurrences (instances) overlap is not fully taken into consideration. For example, in Figure 3, e3 and e2 overlap on two vertices but e3 and e4 overlap on one vertex. We argue that a hypergraph framework keeps more such information and offers more insight and flexibility for further investigation, compared to overlap graph based support measure such as MIS [16].

In summary, the hypergraph is a suitable topological representation of pattern occurrences (instances) for investigating support measures. More details will follow in the next sections.

3.1. Minimum Instance Support Measure

As described above, the MNI support measure is insensitive to structures of subgraph patterns. To address this problem of the MNI support, we take the structure of the given pattern into consideration and define a new support measure. Let us explain the main idea by using the example shown in Figure 4.

Figure 4:

Figure 4:

MNI vs MI Support Measure

We can see three pattern nodes v1,v2, and v3, each has two images {1, 4},{2, 3}, and {3, 2}, hence the MNI support of measure of this pattern is 2. However, it misses the fact that the two occurrences overlap on vertices 2 and 3. Apparently the two nodes v2 and v3 are symmetric in a subpattern, meaning there is automorphism on the subpattern that maps one to the other. Hence v2,v3 can be considered as a set v2,v3, which has one image {2, 3} as set. This observation leads to the idea of defining a new support measure which takes advantage of patterns’ topological structure and reduces overestimation of MNI.

Before defining the new support measure, let us first introduce supportive concepts.

Definition 23. Given a pattern P=VP,EP, a data graph G=(V,E), if P has m occurrences f1,f2,,fm in G, we define coarse-grained node subset W as a subset of VP. The coarse-grained node subset image count is defined as

c(W)=fi(W):i=1,2,,m.

In Figure 4, if coarse-grained node subset W is v2,v3, then its coarse-grained node subset image count c(W)=|{{2,3},{3,2}}|=1. For node subset M=v2,c(M)=|{{2},{3}}|=2.

Inspired by our observation, the pattern nodes that are symmetric to each other should be included in the node subsets, hence we introduce the definition of transitive node subset as follows.

Definition 24. A pair of vertices u and v in graph G is transitive if there is at least one automorphism f of G such that f(u)=v.

Note that in this definition, u and v can be equal.

Theorem 1. For vertices u,v and w in graph G, if the pair of u,v and the pair v,w are both transitive, the pair of u,w is transitive.

Proof. Since the pair of u,v and the pair v,w are both transitive in G, there are two automorphisms f and g of G such that f(u)=v and g(v)=w. Hence the composition of f and g, denoted as fg, is also an automorphism of G and fg(u)=w, which states that the pair u,w is also transitive in G. □

Definition 25. The transitive node subset T in pattern P=VP,EP is a subset of VP such that any pair of vertices in T is transitive in P.

The transitive node subset is a special case of coarse-grained node subset, we shall show that MNI and MI measures can be connected by using these concepts.

Now we are ready to define new support measure of pattern P using the definition of coarse-grained node subset image count.

Definition 26. Given a pattern P=VP,EP, a data graph G=(V,E), let T be a transitive node subset in a subgraph of pattern P, the collection of all such T is denoted as 𝒯={T}. The minimum instance based support (MI) of P in G is defined as

σMI(P,G)=min T𝒯c(T).

As for the example in Figure 4, pattern has coarse-grained node subsets v1,v2,v3 and v1,v2, hence σMI(P,G)=1. Now let us study the main properties of the MI support.

Theorem 2. The MI support measure is anti-monotonic.

Proof. Given pattern p=Vp,Ep and its superpattern P=VP,EP in data graph G, we assume that p has m occurrences f1,f2,,fm in G and P has l occurrences f1,f2,,fl in G.

First, we have σMI(p,G)=minT𝒯c(T) and σMI(P,G)=minT𝒯c(T). It is obvious that 𝒯𝒯 by definition. In the next step, we shall prove that for each T𝒯 its image count c(T) under the mappings f1,f2,,fm is greater than or equal to its image count c(T) under the mappings f1,f2,,fl. This is true because any fi is an extension of some fi which implies fi(T)=fi(T),T𝒯. Therefore minT𝒯c(T)minT𝒯c(T)minT𝒯c(T).

Hence we have σMI(p,G)σMI(P,G). □

Figure 5 shows the anti-monotonicity of MI support measure via an illustrative example.

Figure 5:

Figure 5:

An example showing occurrences of a pattern while being extended to a superpattern

Theorem 3. The MI support measure is linear-time computable.

Proof. Given σMI(p,G)=minT𝒯c(T), and there are a fixed number of T for pattern P, it is obvious that calculating c(T) costs O(n) time where n is the number of occurrences. Hence, σMI is linear-time computable. □

Theorem 4. Given a pattern P and data graph G, we have

σMI(P,G)σMNI(P,G).

Proof. Let 𝒲={v}:vVP we can rewrite MNI support measure as σMNI(P,G)=minW𝒲c(W).

Since 𝒲𝒯, we have σMI(P,G)=minT𝒯c(T)minW𝒲c(W)=σMNI(P,G). □

In practice, there will be many cases in which MI measure is strictly smaller than the MNI measure. As in Figure 4, when considering additional coarse-grained node subsets, minimum count among all of them will decrease. In such a way, we can obtain support count MI that is closer to the number of instances compared with MNI.

In summary, we show that MI support is anti-monotonic, can be computed in linear time, and returns frequency that is bounded by MNI.

3.2. Minimum Vertex Cover Support Measure

The purpose of developing MI is to achieve reasonable count by avoiding overestimation by MNI. However, MI cannot handle the type of overlap shown in Figure 6. Although the number of independent instances is only 2 (e.g., {1,5} and {4,8} are independent), we still get MI=MNI=4. Moreover, there are merely three possible coarse-grained node subsets v1,v2,v1,v2, their images counts are 4, 4, and 7. Hence any variant of MI will not help either.

Figure 6:

Figure 6:

MNI measure can over-estimate count of patterns as it ignores partial overlap

It seems that for some data graphs (e.g., Figure 6) the partial overlaps among pattern nodes matter, hence dividing node set in subsets and using their individual minimum image count is not plausible in this case. We opt to treat all pattern nodes as one set, that is, we do not break edges in occurrence (instance) hypergraph. Hence every node image in each occurrence (instance) can be chosen to represent this occurrence (instance). We seek a small number of node images that together represent all occurrences (instances). Intuitively we want to find an ultimate version of minimum image count, which uses representative node image instead of minimum count of single node images and obtains counts closer to MIS.

Now we introduce a support measure that is even smaller than MI but requires more time to compute. The central idea is related to the well-known vertex cover problem.

Definition 27. A vertex cover of hypergraph H=(V,E) is a subset of V that intersects with every edge of H. A minimum vertex cover is a vertex cover with the smallest cardinality.

Under the occurrence/instance hypergraph framework, we can transform the minimum vertex cover to a support measure that gives reasonable count of occurrences/instances.

Definition 28. Given pattern P in data graph G, and its occurrence (instance) hypergraph H=(V,E). The minimum vertex cover based (MVC) support of P in G is defined as

σMVC(P,G)=minC|C|,

where C is a vertex cover of H.

In other words, MVC is defined as the cardinality of a smallest vertex cover set in the occurrence (instance) hypergraph of P in G. For example, in Figure 6, edges in the occurrence hypergraph are {{1, 5},{1, 6},{1, 7},{1, 8},{2, 8},{3, 8}, {4, 8}}, and the vertex set {1, 8} is a minimum vertex cover, hence σMVC=2.

The properties of MVC are discussed below.

Theorem 5. The MVC support is anti-monotonic.

Proof. We shall show that for a pattern p and its superpattern P in graph G, we have σMVC(p,G)σMVC(P,G).

Let f1,f2,,fm and f1,f2,,fm denote the set of all occurrences of patterns p and P respectively. Let Hp and HP be occurrence hypergraphs of p and P respectively. Assume that C is a minimum vertex cover of Hp, it intersects with every edge fiVp. Because any occurrence f of pattern P in G must be an extension of an occurrence fi of pattern p in G, we obtain that fiVpfVP. If C intersects with fiVp, it must intersect with fVP. Hence a minimum vertex cover C of Hp contains a vertex cover of HP. Therefore the cardinality of C is greater or equal to that of minimum vertex cover of HP, that is, σMVC(p,G)σMVC(P,G). □

Let us refer to Figure 5 for an illustrative example of the anti-monotonicity of σMVC: when the pattern v1,v2,v3 is extended to include v4, the MVC support is still 1. For example, vertex set {1} is a minimum vertex cover, and it still intersects with each extended hypergraph edges hence it is a vertex cover of supperpattern’s occurrence hypergraph.

Theorem 6. Given a pattern P and data graph G, we have

σMVC(P,G)σMI(P,G).

Proof. Assume that pattern P=VP,EP has m occurrences f1,f2,,fm. Since σMI(P,G)=minT𝒯c(T), there must be one coarse-grained node subset that achieves this minimum count σMI. We denote this node subset as T, and its images as fi(T),i=1,2,,m. Because fi(T)fiVP, a minimum vertex cover C of fi(T) : i=1,2,,m} is also a vertex cover of fiVP:i= 1,2,,m}. Therefore we get σMVC(P,G)|C|. In the next step, we will show that |C|fi(T):i=1,2,,m.

If T contains only one vertex, then |C|=fiT:i=1,2,,m}. If T contains two or more vertices, we can assume that C=u1,u2,ul, where uifi(T),i=1,2,,l. Obviously we have C=fiT:i=1,2,,lfi(T):i=1,2,,m=c(T)=σMI(P,G).

Hence σMVC(P,G)σMI(P,G). □

Now we see that MVC is anti-monotonic, and is bounded by MI. In Section 4.4, we shall further show that the MVC measure is actually close to the MIS. As to the computing efficiency, MVC is unfortunately NP-hard – this is easy to prove as it essentially involves solving the minimum vertex cover problem in the occurrence hypergraph. Luckily, in a k-uniform hypergraph, MVC is k-approximable, by choosing a maximal set of independent edges, and picking all vertices in them. The best approximate algorithms achieve a factor k-o(1) approximation under polynomial time [7]. In summary, MVC returns smaller counts but requires more time to compute as compared to MI.

4. THE HYPERGRAPH FRAMEWORK

A very interesting result of our work is that existing categories of support measures (i.e., MNI and MIS), although constructed from different techniques, can also be incorporated into the new hypergraph settings. Therefore, we have a unified framework that encapsulates all major support measures mentioned in this paper.

4.1. MNI in Hypergraph Framework

We first show that the MNI support can be easily related to the occurrence hypergraph and the new MI support measure. In the hypergraph setting, MNI and its variant with parameter k reduce the pattern to subsets containing one or k pattern nodes. By revisiting the concept of coarse-grained node subset defined in Section 3.1, we see how σMNI(P,G) and its parameterized version σMNI(P,G,k) can be interpreted in terms of such concepts.

In a pattern P=VP,EP, if we let 𝒲={v}:vVP, we can rewrite MNI support measure as

σMNI(P,G)=minW𝒲c(W).

Similarly, we let 𝒲k=V : connected VVP,V=k, then σMNI(P,G,k) can be interpreted as

σMNI(P,G,k)=minV𝒲kcV.

The above definitions show connections among σMNI(P,G), σMNI(P,G,k), and the new support measure σMI(P,G). Figure 7 displays how MNI and MI fit in hypergraph framework. Note that MI is not simply a transformation from graph pattern to a hypergraph version. For example, in Figure 7, if we disconnect v3 with v2 and then connect it with v1, the pair v2 and v3 is still in a transitive node subset while it is no longer connected by one edge in pattern graph. Hypergraph edges are used to capture desired and essential features of pattern graph. From this point of view, hypergraph is indeed a suitable and flexible framework for support measures.

Figure 7:

Figure 7:

The MNI and MI’s view of pattern in hypergraph framework

4.2. MIS in Hypergraph Framework

We now show that, MIS, which is defined based on overlap graphs, can also be mapped to the hypergraph framework. For that, we shall introduce a new measure in hypergraph setting and show it is equivalent to MIS.

Definition 29. Given a pattern P in data graph G and its occurrence (instance) hypergraph H=(V,E), the maximum independent edge set (MIES) support measure is defined as

σMIES(H)=maxEE,

where E is an independent edge set of H.

The overlap graph approach is similar in nature to how dual hypergraph is built. According to the definition of dual hypergraph, all edges in H are vertices in dual H*, and they are also vertices in overlap graph. If two edges ei,ej in H overlap on vertex v then ei,ej are contained in edge Xv in dual H*, while ei,ej forms an edge in overlap graph. Actually, each edge in dual H* is equivalent to a clique in the overlap graph. If H* is a simple hypergraph, then it is the same as the overlap hypergraph introduced in [18]. The example in Figure 8 shows how similar dual hypergraph and overlap graph are to each other.

Figure 8:

Figure 8:

The instance hypergraph and its dual for a small pattern in a data graph

Within the hypergraph framework, we shall show that the MIS is equivalent to MIES, and the latter is also anti-monotonic. To achieve such analysis, an integer programming formulation can be developed. Such formulation also shows relationship between MIES and MVC, and serves as relaxation for reducing computing costs of expensive measures such as MIES and MVC (see Section 4.3).

Let us start with MVC by assuming that hypergraph H=(V,E) consists of a set V=v1,v2,,vn of n vertices and a set E=e1,e2,,em of m edges. We have a variable x(v) for each vertex vV indicating whether v is chosen in the vertex cover or not. The constraints state that in each hypergraph edge e at least one vertex should be chosen and the object is to minimize that number of such chosen vertices. Now we can write:

minvVx(v) (1)
subject toveix(v)1ix(v){0,1}v.

By definition the dual hypergraph H* of H is a hypergraph whose vertices and edges are interchanged, so that the vertices are given by ei:i=1,2,,m and the edges are X=X1,X2,,Xn where Xj is the collection of all edges in H which contain vertex vj. Let variable y(e) indicate whether e is in the independent set or not. The constraints state that in each edge X only one vertex be chosen and the object is to maximize that number of independent vertices. Therefore the dual of minimum vertex cover problem in H is maximum independent vertex set problem in H*, which can be formulated as:

max  eEy(e) (2)
subject toeXiy(e)1iy(e){0,1}e.

With above formulations, we can show the MIS support measure is equivalent in size to MIES.

Theorem 7. Given pattern P in data graph G, and its occurrence (instance) hypergraph H=(V,E), we have

σMIES(P,G)=σMIS(P,G).

Proof. The problem of finding maximum independent edge set in occurrence hypergraph H is equivalent to finding maximum independent vertex set in dual hypergraph H* with vertices corresponding to edges in H and vice versa. Although the dual hypergraph and overlap graph can be different in their forms, we can show that their sizes of maximum independent vertex set are the same. We use the linear programming techniques to show this equivalence.

In dual hypergraph H*, MIES is equal to the solution of maximum optimization problem (Eq. (2)), while overlap graph based MIS is equal to the solution of problem: maxeEy(e) subject to yej+yek1, if ej and ek overlap, ye0,1,e. Figure 8 shows an illustrative example of this.

We shall show that the constraints of the two maximum optimization problems are equivalent, therefore their solution values shall be the same. Furthermore, because any edge (two vertices) in overlap graph is contained in a dual hypergraph edge, we only need to show that for Xi with size larger that one, the equalities max eXiy(e) subject to y(e){0,1},e is equivalent to yej+yek1 for any ej,ekXi,1jkn, where yej,yek are restricted to {0, 1}.

It is obvious that eXiy(e)1 implies yej+yek1 for any ej,ekXi,1jkn because every y(e),eXi is non-negative. Hence, we need to prove that yej+yek1 for any ej,ekXi,1jkn implies eXiy(e)1.

Assume that yej+yek1 for any ej,ekXi,1jkn and y(e){0,1},eXi. If there exits an eXi-ej,ek, then there must be two more edges e,ej and e,ek in overlap graph because all e,ei,ek overlap at vertex i. Therefore we should have y(e)+yej1,y(e)+yek1,yej+yek1 and y(e),yej,yek{0,1}, which implies yej+yek+y(e)1. Similarly we can add all other eXi into this equality so that we have eXiy(e) 1. In the end, we obtain σMIES(P,G)=σMIS(P,G). □

We take Figure 8 as an example, in which the MIS support in overlap graph is 2. Taking a close look, for example, e1,e3 forms a maximum independent set. The MIES in instance hypergraph is also 2.

Theorem 8. The MIES measure is anti-monotonic.

Proof. Since MIES is equivalent to anti-monotonic MIS, it is also anti-monotonic. □

4.3. Polynomial Time Relaxation

The relaxation technique transforms an NP-hard optimization problem into a related problem that is solvable in polynomial time. In addition the solution obtained from relaxation gives information about the solution to the original problem. For example, the solution for a linear programming gives a upper (lower) bound on the optimal solution to the original maximization (minimization) problem.

In Section 4.2, we have presented the integer programming transformation of the problems. Based on that, we are ready to relax the integrability conditions of minimum vertex cover problem to obtain linear programming problem and formally define the relaxed versions of the MVC and MIES measures. We shall also show that they are both anti-monotonic.

Definition 30. Given a pattern P in a data graph G, and its occurrence (instance) hypergraph H=(V,E), where V=v1,v2,,vn and E=e1,e2,,em, the polynomial-time MVC support measure of pattern P in graph G is defined as

νMVC(P,G)=minvVx(v) (3)
subject toveix(v)1i0x(v)1v.

Likewise, we relax the integrability conditions of maximum independent edge set problem to obtain a linear programming formulation and another polynomial-time support.

Definition 31. Given a pattern P in a data graph G, and its occurrence (instance) hypergraph H=(V,E), where V=v1,v2,,vn and E=e1,e2,,em, dual hypergraph H*=(E,X),X=X1,X2,,Xn, the polynomial-time MIES support measure of pattern P in graph G is defined as

νMIES(P,G)=maxeEy(e) (4)
subject toeXiy(e)1i0y(e)1e.

Theorem 9. The polynomial-time MVC support measure is anti-monotonic.

Proof. We shall show that νMVC(p,G)νMVC(P,G) for any pattern p and its superpattern P in data graph G. Let us assume that the occurrence hypergraphs of p and P in G are Hp=(V,E) and HP=V,E respectively.

Our approach is that: we use a solution x*=νMVC(p,G) to the LP (3) to construct another function x** such that x*x**νMVC(P,G), in this way we can prove that νMVC(p,G)νMVC(P,G).

Let νMVC(p,G)=ΣvVx*(v) be a solution to the LP (3) associated with Hp, where vex*(v)1 for any eE  and 0x*(v)1 for any vV. From that we construct a function x**=ΣvVx**(v) on V such that

x**(v)=x*(v), if vVV.0, otherwise vV-V.

Note that, for every eE there is some eE such that ee, hence we have

Σvex**(v)=Σveex**(v)+Σvex**(v)=Σveex**(v)+Σvex*(v)0+Σvex*(v)1.

Therefore, x** satisfies constraints of LP (3) associated with HP, that is, vex**(v)1 for any eE and 0x**(v)1 for any vV. Consequently, we obtain that x**minvVx(v)=νMVC(P,G). On the other hand, we have

ΣvVx**(v)=ΣvV-Vx**(v)+ΣvVVx**(v)=0+ΣvVVx*(v)ΣvVx*(v).

Finally, we have ΣvVx*(v)ΣvVx**(v)νMVC(P,G), which implies νMVC(p,G)νMVC(P,G). □

Theorem 10. The polynomial-time MIES support measure is anti-monotonic.

Proof. The proof is similar to that of Theorem 9. We omit the details here. □

4.4. Bounding Theorems

To explore the relationship among all the support measures within the new framework, we derive the following theorems from the classic results in the hypergraph field. We first study the difference between the MIES and MVC measures.

Theorem 11. Given a pattern P, data graph G, and occurrence (instance) hypergraph H=(V,E), we have

σMIES(P,G)σMVC(P,G).

Proof. Assume that I is a maximum independent edge set and C a minimum vertex cover in H. For every edge eI there is a corresponding vertex vC such that ve. Furthermore, for any e,eI, we have ee=, hence their corresponding vertices in C are different. Therefore, we get |I||C| and then we have σMIES(P,G)σMVC(P,G). □

The above theorem shows that MVC measure is larger than the MIES (that equals MIS according to Theorem 7).

Based on well-established results in linear programming [15], we obtain the following relationship between σMIS,σMVC, and support measures created from relaxation on constraints in their corresponding linear programming problems.

Theorem 12. Given a pattern P, data graph G, and occurrence (instance) hypergraph H, we have

σMIES(P,G)νMIES(P,G)=νMVC(P,G)σMVC(P,G).

Proof. The first and last inequality are directly given by the definitions of corresponding linear programming problems. The equality follows from the duality theorems of linear programming [15]. □

A key idea in Theorem 12 is that we can switch between considering the relaxations of maximum independent edge set and minimum vertex cover of a hypergraph. In dual linear programming relaxation problems, a feasible primal solution has a value greater than or equal to that of any feasible dual solution. Furthermore strong duality theorem says that if the primal program has an optimal solution, so does the dual and they have the same objective value.

Nevertheless, the results in Theorem 12 show that, by relaxing the original problem, we further reduce the gap between MVC and MIES/MIS.

In practice, if each hypergraph vertex is contained in relatively few edges we have a stronger bound between the original and relaxed versions of MVC. Explorations along this direction constitute a very interesting topic for future research.

The comparison between σMVC,σMI and σMNI were examined in Theorems 4 and 6. Putting all together, we have

σMIS=σMIESνMIES=νMVCσMVCσMIσMNI.

The above formula shows a series of measures that can be built in the same framework and occupy different locations of the frequency spectrum.

4.5. Other Extensions Within the Framework

We believe by adopting the hypergraph settings, we can utilize resourceful classic hypergraph theorems to advance further investigations and provide more thoughtful insights for connections between support measures, or even define more support measures.

A variant of vertex overlap, called harmful overlap, was introduced in [5]. We present a new concept of structural overlap that can be compared with harmful overlap in studying MIS-flavored support measures. Additionally, we show how structural overlap can be used in the study of support measures.

In this section, we call the concept of vertex overlap in Definition 12 simple overlap to distinguish it from the two new overlap concepts.

Definition 32. [5] A harmful overlap (HO) of occurrences f1 and f2 of pattern P exists, if vVP, such that f1(v),f2(v)f1VPf2VP.

Definition 33. A structural overlap (SO) of occurrences f1 and f2 of pattern P exists if v,wVP, satisfying that v and w are contained in a transitive node subset in a subgraph of pattern P, and f1(v)=f2(w)f1VPf2VP.

The concept of structural overlap is originated from MI support measure which considers overlap on transitive node subsets. When calculating MI, we let node v2 and v3 form a transitive node subset, it has two images {2, 3} and {3, 4}, and MI=2. However, these two images have vertex 3 in common. Now we have occurrences g1 and g2 overlap in structural overlap sense.

In addition, we use Figures 9 and 10 to show that structural overlap and harmful overlap are different concepts. For example, although structural overlap of g1 and g2 exists, harmful overlap of them does not exist. The reason is that g1VPg2VP={3}, but 3 is image of two different nodes v2,v3 where g1v3=3 and g2v2=3. On the other hand, a harmful overlap of f1 and f2 exists but no structural overlap of them exists. We state that both harmful overlap and structural overlap implies simple overlap, and there are cases when simple overlap exists but neither harmful overlap nor structural overlap exists (e.g., f2 and f3 in Figure 10). Harmful overlap and structural overlap can exist at the same time (e.g., g1 and g3 in Figure 9).

Figure 9:

Figure 9:

Structural overlap harmful overlap

Figure 10:

Figure 10:

Example and Venn diagram for illustrating the relationship among structural overlap, harmful overlap, and simple overlap

Fiedler and Borgelt [5] explain that some type of overlap of two occurrences should not be considered harmful. According to the definition of harmful overlap, for a pattern P=VP,EP, if a simple overlap of its two occurrences f1 and f2 exist and there is at least one node’s images are in both of node images f1VP and f2VP, a harmful overlap of f1 and f2 exists. A similar argument applies to our structural overlap concept. When a simple overlap exists, in addition if one pair of nodes is transitive in a subgraph of P and their images are in both images f1VP and f2VP, then a structural overlap of f1 and f2 exists. That is to say structural overlap addresses more on topological structure of the pattern which is at the core of graph isomorphism problem.

The common ground of harmful overlap and structural overlap is that both are weaker concepts compared to simple overlap. Hence, like harmful overlap, the concept of structural overlap can also be used in various ways to explore frontiers of support measure theory. For example, instead of simple overlap, one can use structural overlap to decide whether two occurrences (instances) overlap, and then proceed to construct overlap graph. The resulted overlap graph is sparser (fewer edges) than the one generated from simple overlap. Consequently, one can use MIS, MCP, and other overlap graph based measures to obtain count of pattern occurrences (instances). In the hypergraph setting, because of its close connection to MI support measure, structural overlap can be potentially utilized to explore variants of MI support measures.

5. RELATED WORK

The frequent subgraph mining (FSM) problem is to find subgraphs in a data graph, and then enumerate all subgraphs with support (or frequency) above some minimum support threshold. FSM can be divided into two categories: finding frequent patterns in transactional data graph (a graph database comprising multiple small graphs) and a single large data graph. In the past years, fruitful results have been published in the graph-transaction setting: a few representative publications include Borgelt and Berthold [1], Yan and Han [20, 21], Inokuchi et al. [10], Hong et al. [8], Huan et al. [9], Kuramochi and Karypis [12]. Although FSM in a single large graph setting has been studied (e.g., Kuramochi and Karypis [13, 14], Elseidy et al. [4]), it receives less attention. The reason is that it is more challenging in both stages of finding pattern occurrence in large data graph and computing support.

Related to the problem of support counting in a single graph setting, currently there are two major approaches. The first one is well-established overlap graph based support measure, which was first introduced in Vanetik [16] and its formal definitions were given in Vanetik et al. [17] together with proofs for the sufficient and necessary conditions required for overlap graph based measure to be anti-monotonic. Several variations and extensions of overlap graph based measure were also proposed and analyzed, including exact and approximate MIS measures presented by Kuramochi and Karypis [14], and overlap graph based MCP by Calders et al. [3]. In [3], the authors also propose the Lovasz measure by using the theta function that is proven to be bounded between MIS and MCP in overlap graph. This is very similar in nature to another measure named Schrijver graph measure [19].

A relaxation of overlap graph based MIS is given by Wang et al. [18]. Note that the concept of hypergraph is also used in [18] to define a variant of overlap graph [16] by replacing cliques by hypergraph edges and deleting non-dominating hypergraph edges. In our method, we do not build overlap graph, our hypergraph vertices are node images of query pattern, and edges represent occurrences and instances.

6. CONCLUSIONS AND FUTURE WORK

In this paper, we propose a new framework for studying support measures in frequent subgraph mining. This framework transforms pattern and data graph into hypergraphs containing occurrences and instances of the pattern as well as information of the original graph, in contrast to existing overlap graph techniques that only contain the latter. By doing this, state-of-art hypergraph theorems can provide theoretical explanations to interpret the relationship between occurrences (mapped as edges in hypergraph). Under the new hypergraph setting, encouraging results are achieved including the linear-time MI measure that returns counts closer to pattern instance, the MVC measure that is very close to the MIS, and the MIES measure that is an equivalent version of MIS under the hypergraph framework.

With the hypergraph-based framework, there are abundant opportunities for interesting theoretical and experimental research. In particular, explorations in the following directions are worth immediate attention. (1) New overlap concepts can be investigated, as we have briefly mentioned in Section 4.5; (2) More support measures can be designed that fill the gap between MVC and MI. For example, it would be useful to have a support measure with super-linear time complexity but is smaller than the counts of MI; We can also explore the design of variations of MI that utilize a multitude of topological properties of pattern to find coarse-grained node subsets; (4) Inclusion of other desirable features in the design of support measure. One important example is called additiveness, meaning the computing can be done in a parallel manner therefore it brings great value to the implementation of the theoretical results; and (5) More user control can be introduced into the framework in defining and selecting support measures for different applications.

Acknowledgment

This work is supported by an award (IIS-1253980) from the National Science Foundation (NSF) of U.S.A. Jinghan Meng was partially supported by award R01GM086707 from US National Institutes of Health (NIH).

Footnotes

1

For that, we use the words frequency and support interchangeably in this paper. We also use the word support and the phrase support measure in the same way.

2

In this paper, following conventions of this field, computing time of support measures does not include that for constructing the framework (e.g., overlap graph in the MIS case).

Contributor Information

Jinghan Meng, Department of Computer Science & Engineering, University of South Florida.

Yi-Cheng Tu, Department of Computer Science & Engineering, University of South Florida.

REFERENCES

  • [1].Borgelt C and Berthold MR. Mining molecular fragments: Finding relevant substructures of molecules. In Data Mining, 2002. ICDM 2003. Proceedings. 2002 IEEE International Conference on, pages 51–58. IEEE, 2002. [Google Scholar]
  • [2].Bringmann B and Nijssen S. What is frequent in a single graph? In Pacific-Asia Conference on Knowledge Discovery and Data Mining, pages 858–863. Springer, 2008. [Google Scholar]
  • [3].Calders T, Ramon J, and Van Dyck D. Anti-monotonic overlap-graph support measures. In 2008 Eighth IEEE International Conference on Data Mining, pages 73–82. IEEE, 2008. [Google Scholar]
  • [4].Elseidy M, Abdelhamid E, Skiadopoulos S, and Kalnis P. Grami: Frequent subgraph and pattern mining in a single large graph. Proceedings of the VLDB Endowment, 7(7):517–528, 2014. [Google Scholar]
  • [5].Fiedler M and Borgelt C. Support computation for mining frequent subgraphs in a single graph. In MLG. Citeseer, 2007. [Google Scholar]
  • [6].Galárraga LA, Teflioudi C, Hose K, and Suchanek F. Amie: association rule mining under incomplete evidence in ontological knowledge bases. In Proceedings of the 22nd international conference on World Wide Web, pages 413–422. ACM, 2013. [Google Scholar]
  • [7].Halperin E. Improved approximation algorithms for the vertex cover problem in graphs and hypergraphs. SIAM Journal on Computing, 31(5):1608–1623, 2002. [Google Scholar]
  • [8].Hong M, Zhou H, Wang W, and Shi B. An efficient algorithm of frequent connected subgraph extraction. In Pacific-Asia Conference on Knowledge Discovery and Data Mining, pages 40–51. Springer, 2003. [Google Scholar]
  • [9].Huan J, Wang W, and Prins J. Efficient mining of frequent subgraphs in the presence of isomorphism. In Data Mining, 2003. ICDM 2003. Third IEEE International Conference on, pages 549–552. IEEE, 2003. [Google Scholar]
  • [10].Inokuchi A, Washio T, and Motoda H. Complete mining of frequent patterns from graphs: Mining graph data. Machine Learning, 50(3):321–354, 2003. [Google Scholar]
  • [11].Karp RM. Reducibility among combinatorial problems. In Complexity of computer computations, pages 85–103. Springer, 1972. [Google Scholar]
  • [12].Kuramochi M and Karypis G. An efficient algorithm for discovering frequent subgraphs. IEEE Transactions on Knowledge and Data Engineering, 16(9):1038–1051, 2004. [Google Scholar]
  • [13].Kuramochi M and Karypis G. Grew-a scalable frequent subgraph discovery algorithm. In Data Mining, 2004. ICDM’04. Fourth IEEE International Conference on, pages 439–442. IEEE, 2004. [Google Scholar]
  • [14].Kuramochi M and Karypis G. Finding frequent patterns in a large sparse graph. Data mining and knowledge discovery, 11(3):243–271, 2005. [Google Scholar]
  • [15].Pach J and Agarwal PK. Combinatorial geometry, volume 37. John Wiley & Sons, 2011. [Google Scholar]
  • [16].Vanetik N, Gudes E, and Shimony SE. Computing frequent graph patterns from semistructured data. In Data Mining, 2002. ICDM 2003. Proceedings. 2002 IEEE International Conference on, pages 458–465. IEEE, 2002. [Google Scholar]
  • [17].Vanetik N, Shimony SE, and Gudes E. Support measures for graph data. Data Mining and Knowledge Discovery, 13(2):243–260, 2006. [Google Scholar]
  • [18].Wang Y and Ramon J. An efficiently computable support measure for frequent subgraph pattern mining. In Joint European Conference on Machine Learning and Knowledge Discovery in Databases, pages 362–377. Springer, 2012. [Google Scholar]
  • [19].Wang Y, Ramon J, and Fannes T. An efficiently computable subgraph pattern support measure: counting independent observations. Data Mining and Knowledge Discovery, 27(3):444–477, 2013. [Google Scholar]
  • [20].Yan X and Han J. gSpan: Graph-Based Substructure Pattern Mining. In Proceedings of the 2002 IEEE International Conference on Data Mining (ICDM 2002), 9–12 December 2002, Maebashi City, Japan, pages 721–724, 2002. [Google Scholar]
  • [21].Yan X and Han J. Closegraph: mining closed frequent graph patterns. In Proceedings of the ninth ACM SIGKDD international conference on Knowledge discovery and data mining, pages 286–295. ACM, 2003. [Google Scholar]

RESOURCES