Graph Neural Networks can Recover the Hidden Features Solely from the Graph Structure

R. Sato
2/12/2026

No official code found. Best implementation: joisino/gnnrecover (24 stars, MIT, PyTorch, last commit 2023-06-01).

Abstract

Graph Neural Networks (GNNs) are popular models for graph learning problems. GNNs show strong empirical performance in many practical tasks. However, the theoretical properties have not been completely elucidated. In this paper, we investigate whether GNNs can exploit the graph structure from the perspective of the expressive power of GNNs. In our analysis, we consider graph generation processes that are controlled by hidden (or latent) node features, which contain all information about the graph structure. A typical example of this framework is kNN graphs constructed from the hidden features. In our main results, we show that GNNs can recover the hidden node features from the input graph alone, even when all node features, including the hidden features themselves and any indirect hints, are unavailable. GNNs can further use the recovered node features for downstream tasks. These results show that GNNs can fully exploit the graph structure by themselves, and in effect, GNNs can use both the hidden and explicit node features for downstream tasks. In the experiments, we confirm the validity of our results by showing that GNNs can accurately recover the hidden features using a GNN architecture built based on our theoretical analysis.

View on arXivView PDF

Code Implementations(1)

joisino/gnnrecoverCommunity100%
PyTorchMIT

Code for "Graph Neural Networks can Recover the Hidden Features Solely from the Graph Structure" (ICML 2023)

242PythonMay 31, 20233 years agoMIT
deep-learningembeddingsgnngraph-neural-networksmachine-learning+2 more

Similar Papers

Cite this paper

@article{sato2026graph,
  title  = {Graph Neural Networks can Recover the Hidden Features Solely from the Graph Structure},
  author = {R. Sato},
  year   = {2026},
  eprint = {2301.10956},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/pdf/2301.10956},
  journal = {ICML 2023 2023}
}

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/2301.10956.svg)](https://codeofpaper.com/paper/2301.10956)

Discussion