Orignal Ariticle: link
本期,根据维基百科、知乎整理出图上的傅里叶变换。

Graph Fourier Transform
In mathematics, graph Fourier transform is a mathematical transform which eigendecomposes the Laplacian matrix of a graph into eigenvalues and eigenvectors. Analogously to classical Fourier Transform, the eigenvalues represent frequencies and eigenvectors form what is known as a graph Fourier basis.
Graph Fourier Transform (GFT) is defined as:
GF[f](λl)=f^(λl)=<fff,uuul>=i=1∑Nf(i)ulT(i).
where
-
G=(V,E): undirected weighted graph
-
V: the set of nodes with ∣V∣=N
-
E: the set of edges
-
f:V→R: a graph signal that is a function defined on the vertices of the graph G, which maps every vertex {vi}i=1,⋯,N to a real number f(i). Any graph signal can be projected on the eigenvectors (0=λ1≤λ2≤⋯≤λN) of the Laplacian matrix L
-
λl: the lth eigenvalue of the Laplacian matrix L
-
uuul: the lth eigenvector of the Laplacian matrix L
It can also be represented as
⎣⎢⎢⎢⎡f^(λ1)f^((λ2)⋮f^((λN)⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡u1(1)u1(2)⋮u1(N)u2(1)u2(2)⋮u2(N)⋯⋯⋱⋯uN(1)uN(2)⋮uN(N)⎦⎥⎥⎥⎤T⎣⎢⎢⎢⎡f(1)f(2)⋮f(N)⎦⎥⎥⎥⎤,
which is equal to
f^f^f^=UTfff.
Since Laplacian matrix L is a real symmetric matrix, its eigenvectors uuu1,uuu2,⋯,uuuN form an orthogonal basis. Hence an inverse graph Fourier transform (IGFT) exists, and it is written as
IGF[f^](i)=f(i)=<f^f^f^,uuul>=i=1∑nf^(λl)ul(i).
It can be also represented as
⎣⎢⎢⎢⎡f(1)f(2)⋮f(N)⎦⎥⎥⎥⎤=⎣⎢⎢⎢⎡u1(1)u1(2)⋮u1(N)u2(1)u2(2)⋮u2(N)⋯⋯⋱⋯uN(1)uN(2)⋮uN(N)⎦⎥⎥⎥⎤⎣⎢⎢⎢⎡f^(λ1)f^((λ2)⋮f^((λN)⎦⎥⎥⎥⎤,
which is equal to
fff=Uf^f^f^.
Orthogonal basis for the Fourier transform
The eigenvectors of Laplacian matrix are a set of linearly independent orthogonal bases, thus any graph signal can be expressed as a linear combination of the eigenvectors of Laplacian matrix
fff=f^f^f^1uuu1+f^f^f^2)uuu2+⋯+f^f^f^NuuuN.
Convolution Operation on Graph
Generalized convolution in the vertex domain is multiplication in the graph spectral domain:
fff∗hhh=IGFT(f^f^f^h^h^h^)
which can be also expressed as
fff∗hhh(i)=l=1∑Nf^(λl)h^(λl)ul(i).
-
hhh: convolution kernel
Steps of Convolution Operation on Graph:
- f^f^f^=UTfff
- h^h^h^=UThhh
-
h^h^h^f^f^f^=UThhh⊙UTfff=f^f^f^h^h^h^, i,e,
fff∗hhh=Uf^f^f^h^h^h^=U⎣⎡h^(λ1)⋱h^(λN)⎦⎤UTfff