Exploring the Impact of Floating-Point Arithmetic on the Expressivity of Graph Neural Networks (GNNs)

Graph Neural Networks (GNNs) are powerful tools for learning from graph-structured data. However, a largely unexplored area is how numerical errors from floating-point arithmetic affect GNN computations and expressivity—the model’s ability to distinguish between different graph structures. Since GNNs rely on operations like summation to aggregate node embeddings, their performance is impacted by the non-associativity of floating-point arithmetic, where the order of operations can lead to different results.

For example, using Float32 arithmetic, consider two nodes, v and u, with their neighbors’ embeddings: v has {1e-8, 1, -1} and u has {1, -1}. Depending on how summation is grouped, the aggregation can differ: (1e-8 + (1 - 1)) equals 1e-8, while ((1e-8 + 1) - 1) equals 0. Such inconsistencies, influenced by computation order or node sequence (e.g., in edge_index from torch geometric [2]), may randomly determine whether the nodes are distinguishable.

The goal of this thesis is to explore the practical impact of these floating-point errors on GNN expressivity in real-world datasets. Specifically, the work will:

  • Analyze how GNN expressivity is affected by numerical precision in operations like summation.
  • Conduct experiments to quantify how often floating-point errors influence graph distinguishability.
  • Explore mitigation strategies such as feature transformations, weight adjustments, and control over aggregation order.

This research will provide a better understanding of how floating-point precision affects GNN performance in practice, offering practical solutions to improve model reliability.

Requirements: Python proficiency, interest in numerical computing and floating-point arithmetic, familiarity with GNNs, and experience with graph processing libraries like torch geometric.