Calculus on finite weighted graphs

In mathematics, calculus on finite weighted graphs is a discrete calculus for functions whose domain is the vertex set of a graph with a finite number of vertices and weights associated to the edges. This involves formulating discrete operators on graphs which are analogous to differential operators in calculus, such as graph Laplacians (or discrete Laplace operators) as discrete versions of the Laplacian, and using these operators to formulate differential equations, difference equations, or variational models on graphs which can be interpreted as discrete versions of partial differential equations or continuum variational models. Such equations and models are important tools to mathematically model, analyze, and process discrete information in many different research fields, e.g., image processing, machine learning, and network analysis.

In applications, finite weighted graphs represent a finite number of entities by the graph's vertices, any pairwise relationships between these entities by graph edges, and the significance of a relationship by an edge weight function. Differential equations or difference equations on such graphs can be employed to leverage the graph's structure for tasks such as image segmentation (where the vertices represent pixels and the weighted edges encode pixel similarity based on comparisons of Moore neighborhoods or larger windows), data clustering, data classification, or community detection in a social network (where the vertices represent users of the network, the edges represent links between users, and the weight function indicates the strength of interactions between users).

The main advantage of finite weighted graphs is that by not being restricted to highly regular structures such as discrete regular grids, lattice graphs, or meshes, they can be applied to represent abstract data with irregular interrelationships.

If a finite weighted graph is geometrically embedded in a Euclidean space, i.e., the graph vertices represent points of this space, then it can be interpreted as a discrete approximation of a related nonlocal operator in the continuum setting.

Basic definitions

edit

A finite weighted graph   is defined as a triple   for which

  •  , is a finite set of indices denoted as graph vertices or nodes,
  •   is a finite set of (directed) graph edges connecting a subset of vertices,
  •   is an edge weight function defined on the edges of the graph.

In a directed graph, each edge   has a start node   and an end node  . In an undirected graph for every edge   there exists an edge   and the weight function is required to be symmetric, i.e.,  .[1] On the remainder of this page, the graphs will be assumed to be undirected, unless specifically stated otherwise. Many of the ideas presented on this page can be generalized to directed graphs.[1]

The edge weight function   associates to every edge   a real value  . For both mathematical and application specific reasons, the weight function on the edges is often required to be strictly positive and on this page it will be assumed to be so unless specifically stated otherwise. Generalizations of many of the ideas presented on this page to include negatively weighted edges are possible. Sometimes an extension of the domain of the edge weight function to   is considered (with the resulting function still being called the edge weight function) by setting   whenever  .

In applications each graph vertex   usually represents a single entity in the given data, e.g., elements of a finite data set, pixels in an image, or users in a social network. A graph edge represents a relationship between two entities, e.g. pairwise interactions or similarity based on comparisons of geometric neighborhoods (for example of pixels in images) or of another feature, with the edge weight encoding the strength of this relationship. Most commonly used weight functions are normalized to map to values between 0 and 1, i.e.,  .

In the following it is assumed that the considered graphs are connected without self-loops or multiple edges between vertices. These assumptions are mostly harmless as in many applications each connected component of a disconnected graph can be treated as a graph in its own right, each appearance of   (which would be nonzero in the presence of self-loops) appears in the presence of another factor which disappears when   (see the section on differential graph operators below), and edge weights can encode similar information as multiple edges could.

Neighborhood

edit

A node   is a neighbor of the node   if there exists an edge  . In terms of notation this relationship can be abbreviated by  , which should be read as "  is a neighbor of  ". Otherwise, if   is not a neighbor of   one writes  . The neighborhood   of a vertex   is simply the set of neighbors  . The degree of a vertex   is the weighted size of its neighborhood:

 

Note that in the special case where   on   (i.e. the graph is unweighted) we have  .

Space of real vertex functions

edit

Let   be the space of (real) vertex functions. Since   is a finite set, any vertex function   can be represented as a  -dimensional vector   (where  ) and hence the space of vertex functions   can be identified with an  -dimensional Hilbert space:  . The inner product of   is defined as:

 

Furthermore, for any vertex function   the  -norm and  -norm of   are defined as:

 

The  -norm is induced by the inner product.

In applications vertex functions are useful to label the vertices of the nodes. For example, in graph-based data clustering, each node represents a data point and a vertex function is used to identify cluster membership of the nodes.

Space of real edge functions

edit

Analogously to real vertex functions, one can introduce the space of real edge functions  . As any edge function   is defined on a finite set of edges  , it can be represented as a  -dimensional vector  , where  . Hence, the space of edge functions   can be identified as a  -dimensional Hilbert space, i.e.,  .

One special case of an edge function is the normalized edge weight function   introduced above in the section on basic definitions. Similar to that function, any edge function   can be trivially extended to   by setting   if  . The space of those extended edge functions is still denoted by   and can be identified with  , where now  .

The inner product of   is defined as:

 

Additionally, for any edge function   the  -norm and  -norm of   are defined as:

 

The  -norm is induced by the inner product.

If one extends the edge set   in a way such that   than it becomes clear that   because  . This means that each edge function can be identified with a linear matrix operator.

Differential graph operators

edit

An important ingredient in the calculus on finite weighted graphs is the mimicking of standard differential operators from the continuum setting in the discrete setting of finite weighted graphs. This allows one to translate well-studied tools from mathematics, such as partial differential equations and variational methods, and make them usable in applications which can best be modeled by a graph. The fundamental concept which makes this translation possible is the graph gradient, a first-order difference operator on graphs. Based on this one can derive higher-order difference operators, e.g., the graph Laplacian.

First-order differential operators

edit

Weighted differences

edit

Let   be a finite weighted graph and let   be a vertex function. Then the weighted difference (or weighted graph derivative) of   along a directed edge   is

 

For any weighted difference the following properties hold:

  •  
  •  
  •  

Weighted gradient

edit

Based on the notion of weighted differences one defines the weighted gradient operator on graphs   as

 

This is a linear operator.

To measure the local variation of a vertex function   in a vertex   one can restrict the gradient   of   to all directed edges starting in   and using the  -norm of this edge function, i.e.,

 

Weighted divergence

edit

The adjoint operator   of the weighted gradient operator is a linear operator defined by

 

For undirected graphs with a symmetric weight function   the adjoint operator   of a function   at a vertex   has the following form:

 

One can then define the weighted divergence operator on graphs via the adjoint operator as  . The divergence on a graph measures the net outflow of an edge function in each vertex of the graph.

Second-order differential operators

edit

Graph Laplace operator

edit

The weighted graph Laplacian   is a well-studied operator in the graph setting. Mimicking the relationship   of the Laplace operator in the continuum setting, the weighted graph Laplacian can be derived for any vertex   as:

 

Note that one has to assume that the graph   is undirected and has a symmetric weight function   for this representation.

Graph p-Laplace operators

edit

The continuous  -Laplace operator is a second-order differential operator that can be well-translated to finite weighted graphs. It allows the translation of various partial differential equations, e.g., the heat equation, to the graph setting.

Based on the first-order partial difference operators on graphs one can formally derive a family of weighted graph  -Laplace operators   for   by minimization of the discrete  -Dirichlet energy functional

 

The necessary optimality conditions for a minimizer of the energy functional   lead to the following definition of the graph  -Laplacian:

 

Note that the graph Laplace operator is a special case of the graph  -Laplace operator for  , i.e.,

 

Applications

edit

Calculus on finite weighted graphs is used in a wide range of applications from different fields such as image processing, machine learning, and network analysis. A non-exhaustive list of tasks in which finite weighted graphs have been employed is:

See also

edit

Notes

edit
1.^ Note that a slightly different definition of undirected graph is also in use, which considers an undirected edge to be a two-set (set with two distinct elements)   instead of a pair of ordered pairs   and  . Here the latter description is needed, as it is required to allow edge functions in   (see the section about the space of edge functions) to take different values on   and  .

References

edit
  1. ^ Luxburg, Ulrike von; Audibert, Jean-Yves; Hein, Matthias (2007). "Graph Laplacians and their Convergence on Random Neighborhood Graphs". Journal of Machine Learning Research. 8 (Jun): 1325–1368. ISSN 1533-7928.
  2. ^ a b Gilboa, Guy; Osher, Stanley (2009). "Nonlocal Operators with Applications to Image Processing". Multiscale Modeling & Simulation. 7 (3): 1005–1028. doi:10.1137/070698592. ISSN 1540-3459. S2CID 7153727.
  3. ^ a b Elmoataz, A.; Lezoray, O.; Bougleux, S. (2008). "Nonlocal Discrete Regularization on Weighted Graphs: A Framework for Image and Manifold Processing". IEEE Transactions on Image Processing. 17 (7): 1047–1060. Bibcode:2008ITIP...17.1047E. CiteSeerX 10.1.1.491.1516. doi:10.1109/TIP.2008.924284. ISSN 1057-7149. PMID 18586614. S2CID 9687337.
  4. ^ Desquesnes, Xavier; Elmoataz, Abderrahim; Lézoray, Olivier (2013). "Eikonal Equation Adaptation on Weighted Graphs: Fast Geometric Diffusion Process for Local and Non-local Image and Data Processing" (PDF). Journal of Mathematical Imaging and Vision. 46 (2): 238–257. Bibcode:2013JMIV...46..238D. doi:10.1007/s10851-012-0380-9. ISSN 0924-9907. S2CID 254643702.
  5. ^ Elmoataz, Abderrahim; Toutain, Matthieu; Tenbrinck, Daniel (2015). "On the $p$-Laplacian and $\infty$-Laplacian on Graphs with Applications in Image and Data Processing". SIAM Journal on Imaging Sciences. 8 (4): 2412–2451. doi:10.1137/15M1022793. ISSN 1936-4954. S2CID 40848152.
  6. ^ Mahmood, Faisal; Shahid, Nauman; Skoglund, Ulf; Vandergheynst, Pierre (2018). "Adaptive Graph-Based Total Variation for Tomographic Reconstructions". IEEE Signal Processing Letters. 25 (5): 700–704. arXiv:1610.00893. Bibcode:2018ISPL...25..700M. doi:10.1109/LSP.2018.2816582. ISSN 1070-9908. S2CID 3833453.
  7. ^ Peyré, Gabriel; Bougleux, Sébastien; Cohen, Laurent (2008). "Non-local Regularization of Inverse Problems". In Forsyth, David; Torr, Philip; Zisserman, Andrew (eds.). Computer Vision – ECCV 2008. Lecture Notes in Computer Science. Vol. 5304. Berlin, Heidelberg: Springer Berlin Heidelberg. pp. 57–68. doi:10.1007/978-3-540-88690-7_5. ISBN 9783540886891. S2CID 1044368.
  8. ^ Bühler, Thomas; Hein, Matthias (2009). "Spectral clustering based on the graph p -Laplacian". Proceedings of the 26th Annual International Conference on Machine Learning. Montreal, Quebec, Canada: ACM Press. pp. 81–88. doi:10.1145/1553374.1553385. ISBN 9781605585161. S2CID 858868.
  9. ^ Lozes, Francois; Elmoataz, Abderrahim; Lezoray, Olivier (2014). "Partial Difference Operators on Weighted Graphs for Image Processing on Surfaces and Point Clouds" (PDF). IEEE Transactions on Image Processing. 23 (9): 3896–3909. Bibcode:2014ITIP...23.3896L. doi:10.1109/TIP.2014.2336548. ISSN 1057-7149. PMID 25020095. S2CID 6838641.