From ChebNet to ChebGibbsNet

Jie Zhang, Min-Te Sun
12/2/2024
cs.LGcs.AI

No official code found. Best implementation: hazdzz/chebgibbsnet (3 stars, BSD-3-Clause, PyTorch, last commit 2025-10-24).

Abstract

Recent advancements in Spectral Graph Convolutional Networks (SpecGCNs) have led to state-of-the-art performance in various graph representation learning tasks. To exploit the potential of SpecGCNs, we analyze corresponding graph filters via polynomial interpolation, the cornerstone of graph signal processing. Different polynomial bases, such as Bernstein, Chebyshev, and monomial basis, have various convergence rates that will affect the error in polynomial interpolation. Although adopting Chebyshev basis for interpolation can minimize maximum error, the performance of ChebNet is still weaker than GPR-GNN and BernNet. \textbf{We point out it is caused by the Gibbs phenomenon, which occurs when the graph frequency response function approximates the target function.} It reduces the approximation ability of a truncated polynomial interpolation. In order to mitigate the Gibbs phenomenon, we propose to add the Gibbs damping factor with each term of Chebyshev polynomials on ChebNet. As a result, our lightweight approach leads to a significant performance boost. Afterwards, we reorganize ChebNet via decoupling feature propagation and transformation. We name this variant as \textbf{ChebGibbsNet}. Our experiments indicate that ChebGibbsNet is superior to other advanced SpecGCNs, such as GPR-GNN and BernNet, in both homogeneous graphs and heterogeneous graphs.

View on arXivView PDF

Code Implementations(1)

hazdzz/chebgibbsnetCommunity100%
PyTorchBSD-3-Clause

The official PyG implementation of ChebGibbsNet.

30PythonSep 19, 202212 months agoBSD-3-Clause
chebyshev-expansionchebyshev-filterchebyshev-polynomialsgnnheterogeneous-graph+1 more

Similar Papers

Cite this paper

@article{zhang2024from,
  title  = {From ChebNet to ChebGibbsNet},
  author = {Jie Zhang and Min-Te Sun},
  year   = {2024},
  eprint = {2412.01789},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2412.01789v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2412.01789.svg)](https://codeofpaper.com/paper/2412.01789)

Discussion