The present invention relates to computational methods for a computer to partition a combinatorial graph and, more particularly, a method for partitioning a weighted combinatorial graph using the eigenvalues and eigenvectors derived from the normalized Laplacian of the graph.
A variety of problems in computer science, statistics, and signal processing can be formulated as partitioning a weighted combinatorial graph. Examples include the segmentation of digital signals, i.e., decomposing a digital signal representative of audio [3], image [15], or volumetric data [7] into pieces (segments). For example,
Graph partitioning plays a crucial role in many numerical algorithms, for example, in solving linear systems [16], partial differential equations [14], and physical simulation [14]. In statistics, graph partitioning is employed as a clustering tool [13] and in the analysis of mixing times of stochastic processes [10]. In the design of efficient algorithms, graph partitioning provides well-conditioned decompositions of the problem into pieces for divide-and-conquer methods [14]. In general, finding the best partitioning of a graph under some figure-of-merit results in a Non-deterministic Polynomial-time hard (NP-hard) mathematical optimization problem. In the applications mentioned above, the figures-of-merit fall into the quotient cut family of metrics. These metrics are minimized at the equilibrium between the cost associated with breaking edges in the graph and the balance in the relative sizes of the partitions. Such metrics, in the quotient cut family, seek equitable partitions of the graph.
Historically, graph partitioning methods have fallen into one of the three common paradigms: heuristic, linear and semi-definite programming, or spectral methods. Heuristic methods provide no quality guarantees on the solutions they generate in terms of a figure-of-merit. METIS [8] is an example of a heuristic partitioner. Heuristic methods tend to be fast and have found wide application in the implementation of divide-and-conquer style algorithms [14]. The two mathematical paradigms for approximating graph partitioning objective functions are 1) linear or semi-definite programming [19, 2, 12] and 2) spectral methods [5]. The methods in these two families provide guarantees on the cut quality in terms of a figure-of-merit. The LP/SDP-programming style methods suffer from a high polynomial time and memory complexity, limiting the size of the graphs they can partition. Spectral methods, while carrying weaker guarantees, can be applied to very large graphs while providing some guarantee on the quality.
The disclosed method is a novel spectral technique that empirically improves upon existing spectral algorithms for quotient cuts. Earlier spectral methods consisted of a two-stage algorithm. In the first stage, a small collection of, say k, eigenvectors of a graph Laplacian, with small eigenvalues, are computed. Each of these eigenvectors provides a real number for each vertex in the graph. Taken together, the eigenvectors provide a map for the graph vertices into . The vertices of the graph, now represented by points in space, are then clustered into a small collection of sets and these cluster memberships are taken to be the partition memberships for the graph [4]. This second stage is referred to as rounding, in which the continuous eigenvectors are mapped onto discrete partition indicator vectors. Recently, Lang and Rao have proposed a flow-based technique [11] that bests most geometric rounding methods for quotient 2-cuts of a graph. However, like geometric rounding methods, the hybrid method of Lang and Rao projects continuous solutions (such as eigenvectors) onto the feasible set in a single flow computation. This requires that the correct partition be well represented in the minimal eigenspace passed to the rounding step. Recent papers have exhibited graphs that do not satisfy this property [9].
The method disclosed herein replaces the direct rounding step (geometric or flow-based) with an iteration that reweights the graph in such a fashion that it eventually disconnects. Each iteration uses the eigenvalues and eigenvectors of the reweighted graph Laplacian to determine new edge weights. This iteration effects a rounding of the input vectors when the graph disconnects. By using the eigenvector from the previous iteration as a starting point for finding the new eigenvector, simple and efficient inverse powering methods converge in a small number of steps making the method computationally efficient.
An objective of the present disclosure is achieved by providing a computer the means to partition a weighted combinatorial graph into k disjoint components in quasi-linear to polynomial time with a low observed quotient cut cost. This document discloses a new method for projecting continuous approximations of the partition indicator matrices, in the form of generalized eigenvectors of graph Laplacians, onto the feasible set of partition indicator matrices. The method comprises four main steps, namely (1) the construction of a weighted combinatorial graph G from a data set taken as input; (2) the computation of the generalized eigenstructure of the Laplacian of G; (3) the determination of an update weighting of G such that a linear combination of generalized eigenvalues is decreased; and (4) the iteration of steps 2 and 3 until termination is achieved.
As the output of the first step is taken as input to the described method, we begin with the second step. The second step computes a set of generalized eigenvalues and vectors of the Laplacian of the input graph G=(V, E, w). This requires the construction of the Laplacian L, a sparse n×n symmetric, weakly diagonally dominant matrix, and weighted Degree matrix D, a positive diagonal matrix, from the graph G=(V, E, w). The k′ smallest generalized eigenvalues λi of (L, D) are computed as well as their associated eigenvectors ƒi. The generalized eigenstructure is exactly the sets of solutions to the following linear equality Lƒi.=λiDƒi.
The third step is, given a weighted graph G(j)=(V, E, w(j)), determining a new weighting w(j+1) such that a linear combination of the generalized eigenvalues of (L(j+1), D(j+1)) is less than (L(j), D(j)). This is the primary focus of this document and is described in detail below. Briefly, reweightings are determined by combining wj, ƒi(j), λi(j) for i=1 to k′ into a single reweighting of the graph such that the reweighted mediant and combination of eigenvalues is decreased.
The fourth and final step consists of iterating steps (2) and (3) until convergence is achieved. Termination is defined as the condition at which the prescribed generalized eigenvalue λk reach zero for some k<k′. In a subsequent section, the convergence and termination conditions will be shown to be the same. The repeated application of steps (2) and (3) drives the kth smallest generalized eigenvalue to zero thereby partitioning G into k disjoint pieces (sub-graphs). Thus, the partitioning is produced by iteratively reweighting the graph G, based on structure of a suite of generalized eigenvectors of the normalized Laplacian matrix of G. The reweighting produces a finite set of reweighted instances of G, the generalized eigenvectors of which are used to drive a set of the edges of G to zero such that G is disconnected (partitioned) into the prescribed number of pieces.
This invention describes a computational method for a computer to quickly find near optimal solutions to NP-hard graph partitioning problems in the “quotient cut” family. These and other advantages and benefits will be apparent from the detailed description appearing below.
For the present disclosure to be easily understood and readily practiced, preferred embodiments will now be described, for purposes of illustration and not limitation, in connection with the following figures, wherein:
Overview
Turning to
After the Laplacian matrix is generated, the eigenstructure, i.e., the eigenvalues and eigenvectors, of the Laplacian matrix are computed. Although the particular method used to calculate the eigenvalues and eigenvectors is not important to the practicing of the disclosed spectral rounding method, we prefer to use the method of computing the generalized eigenstructure disclosed in I. Koutis, G. Miller, “A linear work, O(n^{⅙}) parallel time algorithm for solving planar Laplacians,” SODA: SIAM Symposium on Discrete Algorithms (SODA 2007), which is hereby incorporated by reference for all purposes.
After the generalized eigenstructure of the Laplacian matrix is computed, the eigenvalues are examined to determine if an end criterion has been satisfied at 28. Various different end criterion may be used. For example, one end criterion is to determine if the eigenvalue has reached zero. Another end criterion could include determining if the reweighting and iteration steps show no further improvement. Yet another end criterion could involve some subjective user input as to what is considered to be a satisfactory solution. Those of ordinary skill in the art will recognize that many different end criterion may be used. If at 28 the end criterion is satisfied, the process terminates (ends). If at 28 the end criterion is not satisfied, the process continues at 30 with the calculation of new weighting factors using the eigenvectors as a starting point. The calculation of the new weighting factors is described in detail below. The new weighting factors are used at 32 to update the combinatorial graph. The process then returns via loop 34 to step 24 from which the process repeats until the end criterion is satisfied.
The disclosed spectral rounding method may be practiced on a wide variety of hardware configurations. One example of such a hardware configuration is illustrated in
Notation
The present disclosure relates to weighted graphs of the form G=(V, E, w). There is a natural isomorphism between graphs and their Laplacians. Throughout this paper we let G=(V, E, w) denote an edge weighted undirected graph without multiple edges or self loops, where V is a set of n vertices numbered from 1 to n, E is a set of m edges, and w: E→[0, 1] is the edge weighting.
We associate four matrices with the graph: First, W the weighted adjacency matrix,
The weighted degree of vertex i is di=Σj=1wij.. We assume that no vertex has zero degree.
Second, the weighted degree matrix D is
Third, the generalized Laplacian or simply the Laplacian of G is L=D−W and the fourth is the normalized Laplacian {circumflex over (L)}=D−1/2LD−1/2.
A valuation function of the vertices of G is a function ƒ: V→, that is, a map that assigns a real number to each of the vertices. A vector in the nullspace of (L, D) is a valuation such that Lƒi=0·Dƒi. The dimensionality of the nullspace is the number of D-orthogonal vectors ƒiT Dƒj=0 satisfying the nullspace equality. Note, that the number of connected components in G is equal to the dimensionality of the nullspace of (L, D).
The generalized eigenvalues and eigenvectors of (L, D) are the solutions of Lƒ=λDƒ. In this case the normalized Rayleigh quotient of the valuation ƒ is ƒT Lƒ/ƒT Dƒ. The generalized eigenvalues of (L, D) are all real numbers and bound from below by λ1=0, by convention we order the generalized eigenvalues of (L, D) as 0=λ1≦λ2≦ . . . ≦λn.
We make a simple, but important, observation about the Rayleigh quotient ƒT Lƒ/ƒT Dƒ: given a weighted symmetric graph G=(V, E, w) then the normalized Rayleigh quotient can be written a:
where ƒ1=ƒf(νi). The main importance of the above equation is that for each valuation ƒ and each edge eij in E we get the fraction
We further note that the above Rayleigh quotient computes the weighted mediant of this set of fractions.
The mediant of a set of fractions
is defined as
is the weighted mediant. Note that the mediant is distinct from the geometric mean of a set of fractions. However, the mediant shares numerous properties with the geometric mean, for example, the value of the mediant lies between the largest
and smallest
fractions.
A quotient cut of the graph G=(V, E, w) attempts to minimize the ratio of cost of the cut (i.e., the sum of the weights associated with the edges whose removal disconnects the graph) and the size of the resulting partitions. In this way it seeks to balance the size of each sub-graph (proportional to the total weight in the sub-graph) with the cost of the cut. A graph is taken to be an expander graph if its quotient cut function is bound from below by a constant.
The partition indicator matrix (PIM) associated with a cut is an (n×k) matrix with a single one in each row and column. Note, for a PIM P that the quotient cut cost is proportional to trace ((PTDP)−1(PTLP)). The relaxation of the search over matrices P minimizing this function to continuous vectors is one of the early derivations of eigenstructure-based approaches [1].
Computation of the Generalized Eigenvalues of A, D
As described in the summary section, the second step of the method is the computation of k′ generalized eigenpairs with small value. The generalized eigenvectors ƒi and eigenvalues λi of the matrix pencil (L, D) are the solutions to the equation
Lƒi=λiDƒi
By convention, the generalized eigenvalues λi are ordered such that 0=λ1≦ . . . ≦λnn. The extremal values of (A, D) are computed using existing software from the public domain for sparse numerical linear algebra packages [6], (i.e., LAPACK). The manner in which the generalized eigenvector associated with the smallest k′ generalized eigenvalues are employed by the disclosed spectral rounding method to effect a partitioned graph is described in the next.
Determining a Suitable Reweighting of G
As described in the summary section, the third step of the method determines a suitable reweighting of the graph G such that repeated application of the reweighting disconnects the graph. This begins with the necessary condition for decreasing linear combinations of generalized eigenvalues of the matrix pencil (L, D). The condition depends on a set of novel observations in relation to rounding the generalized eigenvectors of (L, D) to obtain a partitioning of the graph. In particular, we note that the dimensionality of the nullspace of L′ is equal to the number of connected components in G under the weighting w′.
In particular, for a fixed valuation function ƒ: V→, there exists a reweighting w′ of the graph G=(V, E, w) such that
where (L′, D′) is the matrix pair on G=(V, E, w′) corresponding to the reweighting w′. The above inequality will be referred to as the Rayleigh quotient constraint in subsequent sections. Next it is shown that, if the vector ƒ is a generalized eigenvector of the matrix pair (L, D), the eigenvalue is decreased as well.
Given a weighted graph G=(V, E, w), matrices L and D, the simple eigenpair (ƒ, λ)|Lƒ=λDƒ, and a new weighting w′ such that
then the derivative of the generalized eigenvalue function λ(t) of the reweighting matrix curve W(t)=W+tW′ is well defined for small t and
at t=0. For a simple eigenpair (ƒ, λ), recall that
as W(0)=W and thus L(0)=L, D(0)=D by definition. The bound on
on is deduced from the observation that this derivative may be written as
Thus, if the Rayleigh quotient constraint holds for the reweighting, the eigenvalue derivative is negative, and the associated eigenvalue must decrease along the matrix curve over the reweighting. These observations have been generalized to multiple eigenvalues by the inventors in reference [18, 17].
Two example reweighting schemes, that provide reweightings satisfying the Rayleigh quotient constraint, are given below. Those skilled in the art can development many more valid reweighting schemes that satisfy the Rayleigh quotient constraint. The first concerns reweighting a single valuation and the second concerns reweighting multiple valuations simultaneously.
The first example, proposed in [17], is proportionality to the reciprocal of the edge fractions
That is, the new weighting w′ij=wij·g(rij−1). Where g is any monotone function mapping the interval [0, ∞] to [0, 1] (for example, the stereographic projection or 1−e−c·r
The second concerns reweighting using multiple eigenvectors. For simplicity, the example only concerns two but trivially generalizes to more eigenvectors. As an intuition, using multiple eigenvectors result in a mediant of mediants calculation, and therefore, the Rayleigh quotient constraint carries through to multiple valuations.
For a weighted graph G=(V, E, w) with matrices L and D and simple eigenpairs (ƒ, λƒ)|Lƒ=λDƒ and (g, λg)|Lg=λgDg, given a reweighting w′ such that
at t=0. We begin by stating a related quantity of interest, the derivative of the fractional average of Rayleigh quotients on ƒ and g for the matrix curve w=w+t·w′ as:
and examine its derivative centered at t,=0. First, we must fix the scale of the eigenvectors ƒ(t) and g(t), we choose ƒ(t)T D(t)ƒ(t)=g(t)T D(t)g(t)=1 w.l.o.g. Thus, equation 5 simplifies to
by the linearity of the derivative. We may now substitute the functional form of
and obtain
assume the bound holds
arriving at
which is equivalent to the hypothesis above, that
The remainder of the proof follows standard continuity arguments.
Iteration, Convergence and Termination
The previous section detailed the constraints on valid reweighting and exhibited two valid procedures. This section concerns the fourth and final step of the invention, the application of and iteration over reweightings of G.
After fixing a reweighting W′, using a valid procedure, a line search is performed along the matrix curve W(t)=W+tW′ to determine the setting of t, t*, at which the minimum value of Σi=1nαiλi(t), where αi≧ and Σi=1nαi=1 for a fixed α, is achieved. The combined weighting of the graph, W(t*)=W+t*W′, is taken as the new weighting of G and the process is repeated until termination. This is termed application of a reweighting.
The successful termination of iteration is guaranteed by the following two observations, given here in a simplified form. First, a reweighting procedure, consistent with the Rayleigh quotient constraint, can always decrease the eigenvalues (thus has not reached a fixed point). This is formally characterized by noting that w′=w·wr, where wr a valid reweighting of the edges. The fixed point condition of reweighting thus requires that wr(e)ε 0,1 for all edges eε E(G). Under fixed-point conditions, the repeated application of the new weighting does not change the generalized eigenvalues of G. This only occurs when the graph is disconnected or when all the edge fractions are bound from below by 1. By the convexity property of mediants, the smallest eigenvalue λ of (L, D) is bound from below by 1, thus the quotient cut is bound by a constant due to the Cheeger inequality and the graph is an expander. Therefore, the disclosed method has only fixed points at the proper termination conditions for all graphs excluding a set of expanders. The second observation, a standard result in real analysis (Heine-Borrel theorem), dictates that a sub-sequence of the sequence generated by the iteration must converge to a fixed point, as the sets in question: weights, eigenvalues, and eigenvectors, are all compact and closed. Therefore, the method converges and terminates, ensuring that a partitioning of the graph is achieved by applying the method above.
The Application to Digital Signal Segmentation
The application of the disclosed method to the digital signal segmentation problem requires the construction of a combinatorial graph from a digital signal. These signals could come from audio streams, images, video voxels or arbitrarily high dimensional medical or scientific scans. The goal of digital signal segmentation is to segregate a signal into collections of highly coherent components. For example, in audio processing the components might correspond to samples composing the words or syllables in the sequence. In image processing the components correspond to compact areas of the image that share a measurable quality such as color, texture, or a common boundary.
The construction of a weighted graph G=(V, E, w), where V is the vertex set, E the edge set and w a weighting of E from a digital spatial signal, is a three-stage process. The resolution, isotropic or otherwise, must be established. This stage assigns samples to vertices in the graph and ultimately determines the size of the graph. The second stage establishes the topology of the graph G. This step determines the members of the edge set E of G, two vertices u and v in V are said to be adjacent if the edge (uv) is in E. The third stage performs a sequence of comparisons between adjacent vertices based on the signal samples associated with the vertices comprising the edge. This framework procedure produces a weighted combinatorial graph G from a digital signal—the segmentation of which can then be accomplished by partitioning G using the computation method described above.
The construction is as follows: a vertex in G for each element in the digital signal—for example if the digital signal is derived from a standard digital photograph, each pixel in the image will correspond to a signal vertex in V. The vertices are then connected to neighboring samples by edges in E which are weighted in proportion to the similarity between elements at the observed sites. For example, in the case of the standard 4-connected mesh of a 2D image, this comprises approximately 4 comparisons per pixel, as each pixel is compared to its neighbors to the North, South, East, and West. The measured level of similarity is then used to weight the corresponding edge in G.
There are numerous other applications that require the construction of a graph from supporting data. These include social network analysis (finding communities in a social network), in which the graph edges and weights might correspond to the frequency of emails between parties. Clustering of amino acids in proteins in which proximity and the chemical properties of amino acid pairs determine the connectivity and weighting of the graph. These as well as numerous other applications of the reduction to graph partitioning all benefit from the partitioning method disclosed above.
Experimental Results
The parameters used in constructing a weighted graph from an image were fixed for all the results presented in this section. The graph G=(V, E, w) represents an image as follows. For each pixel in the image, a vertex in V is assigned. If two pixels are connected in E a weight in w is determined based on the image data. The graph connectivity, E, was generated by connecting pixels to 15% of their neighboring pixels in a 10 pixel radius. The initial weighting w of the graph G=(V, E, w) was determined using the Intervening Contour cue described in [15]. This cue assigns small weights to pixels that lie on opposite sides of a strong image boundary, and large weights otherwise.
We compiled a set of 100 images from Google Images using the keywords farm, sports, flowers, mountains, and pets. Examples from this data set, and segmentations, can be found in
Table 1 below is a comparison between the disclosed spectral rounding SR method and the multiway cut algorithm of Yu and Shi [20] EIG on segmentations of natural images. The average cluster entropy over SR-segmentations of the image collection is 1.62±0.4.
Additional examples are found in Tolliver, et al. “Graph Partitioning by Spectral Rounding: Applications in Image Segmentation and Clustering” appearing in Computer Vision and Pattern Recognition 2006: pp 1053-1060, which is hereby incorporated by reference for all purposes.
The following are incorporated herein by reference:
While the present invention has been disclosed in conjunction with preferred embodiments thereof, those of ordinary skill in the art will recognize that many modifications and variations are possible. The present document is intended to be limited only by the scope of the following claims.
The present application claims priority from application Ser. No. 60/927,360 entitled Method for Partitioning Combinatorial Graphs, filed May 3, 2007, which is hereby incorporated by reference for all purposes.
This invention was made, in part, with government support under Grant Numbers CCR-9902091, CCR-9706572, ACI 0086093, CCR-0085982 and CCR-0122581 awarded by the National Science Foundation. The United States government may have certain rights in this invention.
Number | Name | Date | Kind |
---|---|---|---|
20020048401 | Boykov et al. | Apr 2002 | A1 |
20030174889 | Comaniciu et al. | Sep 2003 | A1 |
20040156544 | Kajihara | Aug 2004 | A1 |
20070014473 | Slabaugh et al. | Jan 2007 | A1 |
20080159590 | Yi et al. | Jul 2008 | A1 |
Entry |
---|
Chennubholta et al. “Half-Lives of EigenFlows for Spectral Clustering,” 2002, pp. 1-8. |
Shi et al., “Normalized Cuts and Image Segmentation,” Aug. 2000, IEEE, vol. 22, pp. 888-905. |
Cour, Timothee, Gogin, Nicolas, Shi, Jianbo; Learning spectral graph segmentation; http://www.cis.upenn.edu/˜jshi/papers/AISTATS2005.pdf; Jan. 6, 2005. |
Meila, Marina, Shi, Jianbo; Learning Segmentation by Random Walks; http://www.cis.upenn.edu/˜jshi/papers/nips00—maila—shi.pdf; Dec. 3, 2001. |
Shi, Jianbo, Malik, Jitendra; Normalized Cuts and Image Segmentation; IEEE Transactions on Pattern Alalysis and Machine Intelligence; 22(8):888-905; 2000. |
Chennubhotla, Chakra, Jepson, Allan D.; Half-Lives of EigenFlows for Spectral Clustering; Advances in Neural Information Processing Systems, 2002. |
Anstreicher, Kurt, Wolkowicz, Henry; On Lagrangian Relaxation of Quadratic Matrix Constraints; SIAM Journal Matrix Analysis Applications, 22(1); pp. 44-55; 2000. |
Arora, Sanjeev, Rao, Satish, Vazirani, Umesh; Expander Flows, Geometric Embeddings and Graph Pardoning; in STOG; pp. 222-231; 2004. |
Bach, Francis, Jordan, Michael; Learning Spectral Clustering, With Application to Speech Separation; Journal of Machine Learning Research, 7; pp. 1963-2001; 2006. |
Chan, Tony, Gilbert, John, Teng, Shang-Hua; Geometric Spectral Bisection; Manuscript; 1994. |
Chung, Fan; Spectral Graph Theory; Conference Board of the Mathematical Sciences, Regional Conference Series in Mathematics, No. 92; 1994. |
Demmel, James; Applied Numerical Linear Algebra; SIAM; 1997. |
Fowlkes, Charless, Belongie, Serge, Malik, Jitendra; Efficient Spatiotemporal Grouping Using the Nystrom Method; in PAMI; 2003. |
Karypis, George, Kumar, Vipin; A Fast and High Quality Multilevel Scheme for Partitioning Irregular Graphs; SIAM, Journal of Scientific Computing; 1998. |
Guattery, Stephen, Miller, Gary; On the Quality of Spectral Separators; Matrix Analysis, 19(3); 1998. |
Jerrum, Mark, Sinclair, Alistair; Approximating the Permanent; SIAM Journal on Computing, 18(6); pp. 1149-1178; 1989. |
Lang, Kevin, Rao, Satish; A Flow-Based Method for Improving the Expansion or Conductance of Graph Cuts; Integer Programming and Gombinatorial Optimization; pp. 325-337; 2004. |
Leighton, Tom, Rao, Satish; An Approximate Max-Flow Min-Cut Theorem for Uniform Multicommodity Flow Problems with Applications to Approximation Algorithms; IEEE Foundations of Computer Science; pp. 422-431; 1988. |
Ng, Andrew, Jordan, Michael, Weiss, Yair; On Spectral Clustering: Analysis and Algorithm; in NIPS; 2002. |
Saad, Yousef; Iterative Methods for Sparse Linear Systems; 2000. |
Spielman, Daniel, Teng, Shang-Hua; Nearly Linear Time Algorithms for Graph Partitioning, Graph Sparsification, and Solving Linear Systems; STOC; pp. 81-90; 2004. |
Tolliver, David, Miller, Gary; Graph Partitioning by Spectral Rounding: Applications in Image Segmentation and Clustering; IEEE Computer Vision and Pattern Recognition; pp. 1053-1060; 2006. |
Tolliver, David; Spectral Rounding & Image Segmentation; PhD Thesis, Carnegie Mellon University; 2006. |
Xing, Eric, Jordan, Michael; On Semidefinite Relaxation for Normalized k-cut and Connections to Spectral Clustering; Report No. UCB/CSD-3-1265, University of California, Berkley; 2003. |
Yu, Stella, Shi, Jianbo; Multiclass Spectral Clustering; in ICCV; 2003. |
Number | Date | Country | |
---|---|---|---|
20090028433 A1 | Jan 2009 | US |
Number | Date | Country | |
---|---|---|---|
60927360 | May 2007 | US |