Quantization in Graph Convolutional Neural
Networks
Leila Ben Saad and Baltasar Beferull-Lozano
WISENET Center, Department of ICT, University of Agder, Grimstad, Norway
Abstract—By replacing classical convolutions with graph fil-
ters, graph convolutional neural networks (GNNs) have emerged
as powerful tools to learn a nonlinear mapping for data defined
over graphs and address a variety of tasks encountered in many
applications. GNNs inherit the distributed implementation of
graph filters, where local exchanges among neighbor nodes are
performed. In such distributed setting, the quantization can
play a fundamental role to save communication and energy
resources prior to data transmission, in scenarios where nodes
are resource constrained. In this paper, we propose a quantized
GNN architecture based on distributed graph filters for signals
defined on graphs and analyze how the quantization noise can
affect its performance. We show also that the expected error due
to quantization at the GNN output is upper-bounded and the use
of a decreasing quantization stepsize leads to more accuracy. The
performance of the proposed schemes is evaluated by numerical
experiments for the application of source localization.
Index Terms—Graph neural networks; Graph signal process-
ing; Graph filters; Quantization.
I. I NTRODUCTION
Recently, graph convolutional neural networks (GNNs) [1–
3] have emerged as a way to generalize and extend the
convolutional neural networks (CNNs) to data supported on
graphs by processing signals defined in irregular domains
and replacing classical convolutions with graph filters [4–6].
GNNs offer the possibility to learn a nonlinear mapping for
data defined over graphs that can be encountered in many
applications, such as social networks, sensor networks and
recommendation systems. GNNs are formed by layers of graph
filters followed by a pointwise nonlinearity. By using Finite
Impulse Response (FIR) graph filters [4–6], GNNs inherit their
distributed implementation, which is very important to ensure
the scalability and robustness to possible node failures. FIR
graph filters can have different forms of implementation [5, 6]:
node-invariant, node-variant and edge-variant. In such graph
filters, each node can communicate its input signal through
local exchanges with neighbors in a finite number of iterations.
However, when implemented over distributed networks with
constrained node resources, the graph filters in GNNs have to
deal with the limited energy, processing, and communication
capabilities. The quantization is recognized as an effective
approach to save communication and energy resources prior
to data transmission. Although the quantization has been well
studied in neural networks [7, 8] and CNNs [9–11], very
few works [12, 13] have explored the quantization problem
This work was supported by the PETROMAKS Smart-Rig grant
244205/E30, the TOPPFORSK WISECART grant 250910/F20 and the IK-
TPLUSS INDURB grant 270730/O70 from the Research Council of Norway.
©
2021 IEEE. Personal use of this material is permitted. Permission from
IEEE must be obtained for all other uses, in any current or future media,
including reprinting/republishing this material for advertising or promotional
purposes, creating new collective works, for resale or redistribution to servers
or lists, or reuse of any copyrighted component of this work in other works.
DOI: 10.23919/EUSIPCO54536.2021.9615973
in graph neural networks. In [12], a method for training a
quantized GNN is proposed, while in [13] a GNN quantization
algorithm and a fine-tuning scheme are proposed to solve
the GNN memory problem. To the best of our knowledge,
there is no work investigating the quantization for GNNs via
distributed graph filters for signals supported on graphs. In
this paper, we propose a quantized GNN architecture built
on distributed graph filters and analyze how the quantization
errors accumulated over the different layers can affect its
final output. Considering the different forms of FIR graph
filters implementation, we show how the expected error due
to quantization at the GNN output is upper-bounded and the
use of a decreasing quantization stepsize leads to more accu-
racy as compared to a fixed quantization stepsize. Numerical
experiments have been conducted to corroborate our findings.
The remainder of this paper is organized as follows. Section
II presents the background material. Section III introduces
the quantization in GNNs for signals supported on graphs
and Section IV analyzes its impacts. Section V presents the
numerical results. Section VI concludes the paper.
Notation: Vectors (respectively matrices) are denoted by
bold lowercase (uppercase) letters. We denote by ∥v∥ the l
2
-
norm of vector v whereas by ∥M∥ the spectral norm of matrix
M. We indicate by tr(·), diag(·) and Σ
x
the trace operator,
the diagonal matrix and the covariance matrix of a random
process x, respectively.
II. BACKGROUND
Consider an undirected graph G = (V , E ) where V =
{1,...,N } is the set of N vertices and E is the set of edges
such that if there is a link from node j to node i, then
(j, i) ∈E . The structure of G is generally represented by
the graph-shift operator S, which is an N × N matrix such
that its entries are non-zero only if i = j or if (j, i) ∈E .
Common choices of the graph-shift operator are the graph
adjacency matrix A, the graph Laplacian L or their normalized
versions. We define on the vertices of G a graph signal as a
mapping x : V→ R, which can be represented as a vector
x =[x
1
, ..., x
N
]
⊤
∈ R
N
, where the i-th entry represents the
signal value at node i.
FIR graph filters. A linear graph filter (GF) [4] H(S):
R
N
→ R
N
is a function of the shift operator S, and where
a graph signal x is taken as an input and another graph
signal y = H(S)x is produced as an output. One common
form for H(S) is the so-called node-invariant GF, which is a
polynomial in S with output:
y = H(S)x =
K
X
k=0
h
k
S
k
x (1)
where h
0
,...,h
K
are the scalar filter coefficients.
To approximate a broader class of operations, the node-
variant GF [6] has been proposed and has as output: