RGDM: Robust Graph Diffusion Model
Organizations: School of Computing and Augmented Intelligence Arizona State University Tempe, AZ 85281, USA · VecML Inc. Bellevue, WA 98004, USA
Abstract
Diffusion models represent a powerful class of generative models known for their solid theoretical foundations and remarkable performance across diverse tasks and domains. Existing node level diffusion methods synthesize nodes and edges within a graph, but are not designed to learn a robust generator from adversarially corrupted graphs. In this study, we introduce the Robust Graph Diffusion Model (RGDM), designed to generate labeled synthetic graph structures consisting of nodes and edges that integrate seamlessly into a given graph. The RGDM consists of a Robust Graph Autoencoder (RGAE) and a Latent Diffusion Model (LDM). Leveraging an edge selection mechanism and an innovative low-rank regularization on the latent feature, the RGDM produces clean and high-quality synthetic graph structures, even when trained on graphs subject to adversarial attacks. Comprehensive experimental evaluations reveal that Graph Neural Networks (GNNs) trained on the augmented graph, which is formed by merging the original attacked graph with the synthetic graph structures, exhibit significantly improved robustness against various graph adversarial attacks in the context of semi-supervised node classification. The code of the RGDM is available at https://github.com/Statistical-Deep-Learning/RGDM.
Figures & tables
| Dataset | Ptb Rate (%) | GCN | GCORNs | HANG | STABLE | Pro-GNN | SG-GSR |
| Cora | 0 (clean) | 83.5 0.4 | 82.6 0.5 | 80.1 0.3 | 84.7 0.5 | 83.0 0.2 | 85.5 1.3 |
| 15 | 65.1 0.7 | 72.6 1.2 | 72.9 1.0 | 74.4 0.9 | 76.4 1.3 | 78.5 1.6 | |
| 25 | 47.5 1.9 | 69.5 1.9 | 68.7 1.9 | 69.6 0.6 | 69.7 1.7 | 77.8 1.3 | |
| Citeseer | 0 (clean) | 72.0 0.6 | 72.6 0.4 | 73.3 0.4 | 74.8 0.5 | 73.3 0.7 | 75.8 1.4 |
| 15 | 64.5 1.1 | 65.5 1.0 | 70.8 0.9 | 67.5 0.4 | 72.0 1.1 | 73.1 1.4 | |
| 25 | 56.9 1.1 | 65.2 1.3 | 66.4 1.6 | 65.6 1.9 | 69.0 1.8 | 72.7 1.4 |
| Dataset | Budget | GCN | GCORNs | HANG | STABLE | Pro-GNN | SG-GSR |
| Cora | 0 (clean) | 81.4 1.0 | 82.6 0.4 | 80.8 1.3 | 85.3 1.8 | 84.8 0.6 | 85.5 1.7 |
| 3 | 68.0 1.7 | 73.2 0.7 | 73.1 1.9 | 73.8 1.8 | 72.4 0.5 | 74.9 1.2 | |
| 5 | 55.5 1.7 | 66.9 1.1 | 68.8 1.6 | 68.4 1.6 | 66.9 0.7 | 68.0 1.5 | |
| Citeseer | 0 (clean) | 81.0 1.4 | 81.9 1.2 | 81.1 1.1 | 82.4 1.8 | 82.1 0.8 | 82.8 1.2 |
| 3 | 64.0 1.7 | 78.1 1.1 | 77.1 1.5 | 80.9 1.5 | 79.7 2.0 | 81.7 1.2 | |
| 5 | 47.6 1.2 | 71.7 1.8 | 73.5 1.5 | 72.5 1.5 | 71.3 2.0 | 73.8 1.0 |
| Method | Cora | Citeseer | Polblogs | Pubmed |
| RGDM (GCN) w/o Sparsification Loss ( ) | 56.72 | 58.97 | 53.24 | 77.92 |
| RGDM (GCN) w/o Low-Rank Regularization ( ) | 60.04 | 60.38 | 54.85 | 80.85 |
| RGDM (GCN, Weight Orthogonality ( Savostianova et al., 2023 ) ) | 59.88 | 61.12 | 55.17 | 80.16 |
| RGDM (GCN, Low-Rank Adjacency Matrix ( Entezari et al., 2020 ) ) | 61.01 | 60.25 | 55.03 | 80.02 |
| RGDM (GCN) | 61.42 | 62.84 | 56.47 | 81.52 |
| Method | Cora | Citeseer | Polblogs | Pubmed |
| GCN | 47.53 | 56.94 | 49.23 | 75.50 |
| iGraphMix (GCN) ( Jeong et al., 2024 ) | 53.25 | 57.11 | 51.65 | 76.10 |
| ImGAGN (GCN) ( Qu et al., 2021 ) | 53.58 | 56.89 | 50.95 | 75.32 |
| Graphsmote (GCN) ( Zhao et al., 2021a ) | 55.10 | 58.06 | 52.44 | 76.25 |
| SNS (GCN) ( Gao et al., 2023 ) | 58.35 | 59.17 | 54.03 | 78.28 |
| DoG (GCN) ( Wang et al., 2025 ) | 59.40 | 60.10 | 54.70 | 79.20 |
| Configuration | Cora | Citeseer | Polblogs | Pubmed |
| SG-GSR (no augmentation) | 77.8 | 72.7 | 87.8 | 87.2 |
| DoG augmentation (BLND) | 75.6 | 71.0 | 85.3 | 85.1 |
| + Edge selection | 76.6 | 72.1 | 86.3 | 85.9 |
| + Latent TNN (RGDM with BLND) | 77.4 | 73.1 | 87.2 | 86.6 |
| + SHED (full RGDM) | 79.1 | 75.3 | 88.8 | 88.6 |
| Dataset | (clean) | ||
| Chameleon | 72.31 / 74.02 | 71.87 / 72.98 | 70.03 / 72.41 |
| Actor | 38.87 / 41.80 | 36.79 / 39.01 | 35.37 / 37.90 |
| Dataset | Final graph attack | Through edge selection |
| Cora | 74.8 / 77.8 | 74.5 / 76.9 |
| Citeseer | 69.5 / 73.4 | 69.2 / 72.4 |
| Polblogs | 84.7 / 87.6 | 84.4 / 86.6 |
| Pubmed | 84.9 / 87.2 | 84.6 / 86.3 |
| Dataset | Training (min) | Generation (s/node) |
| Pubmed | 153 / 480 | 0.073 / 0.080 |
| ogbn-arxiv | 452 / 2511 | 0.15 / 0.49 |
Appendix figures & tables32 assets
Supplementary material from the paper’s appendix.
Appendix
| Datasets | # Node | # Edge | Classes | Features |
| Cora | 2,485 | 5,069 | 7 | 1,433 |
| Citeseer | 2,110 | 3,668 | 6 | 3,703 |
| Polblogs | 1,222 | 16,714 | 2 | 1,222 |
| Pubmed | 19,717 | 44,338 | 3 | 500 |
| ogbn-arxiv | 169,343 | 1,166,243 | 40 | 128 |
| 232,965 | 11,606,919 | 41 | 602 |
| Dataset | Ptb Rate (%) | GCN | GAT | RGCN | GCN-SVD | GraphBel | UAG | GCORNs | GADC | HANG | Pro-GNN | RGDM (GCN) | RGDM (HANG) | RGDM (Pro-GNN) |
| Cora | 0 | 83.50 0.44 | 83.97 0.65 | 83.09 0.44 | 80.63 0.45 | 83.42 0.52 | 82.05 0.51 | 82.56 0.48 | 83.22 0.61 | 80.07 0.32 | 82.98 0.23 | 85.23 0.44 ( ) | 82.31 0.51 ( ) | 84.29 0.52 ( ) |
| 5 | 76.55 0.79 | 80.44 0.74 | 77.42 0.39 | 78.39 0.54 | 82.78 0.39 | 79.13 0.59 | 75.91 1.88 | 75.68 1.10 | 78.12 0.72 | 82.27 0.45 | 80.19 0.39 ( ) | 81.04 0.59 ( ) | 83.19 0.39 ( ) | |
| 10 | 70.39 1.28 | 75.61 0.59 | 72.22 0.38 | 71.47 0.83 | 77.91 0.86 | 75.16 0.76 | 74.63 1.02 | 73.70 1.17 | 75.96 0.62 | 79.03 0.59 | 76.73 0.38 ( ) | 78.03 0.76 ( ) | 81.16 0.86 ( ) | |
| 15 | 65.10 0.71 | 69.78 1.28 | 66.82 0.39 | 66.69 1.18 | 76.01 1.12 | 71.03 0.64 | 72.57 1.24 | 71.39 1.22 | 72.89 0.96 | 76.40 1.27 | 69.37 0.39 ( ) | 76.39 0.64 ( ) | 78.29 1.12 ( ) | |
| 20 | 59.56 1.72 | 59.94 0.92 | 59.27 0.37 | 58.94 1.13 | 68.78 1.84 | 65.71 0.89 | 71.94 1.51 | 71.20 1.49 | 70.36 1.09 | 73.32 1.56 | 65.97 0.37 ( ) | 73.25 0.89 ( ) | 74.85 1.84 ( ) | |
| 25 | 47.53 1.91 | 54.78 0.74 | 50.51 0.78 | 52.06 1.19 | 56.54 1.58 | 60.82 1.08 | 69.48 1.94 | 68.29 1.36 | 68.72 1.87 | 69.72 1.69 | 61.42 0.78 ( ) | 70.44 1.08 ( ) | 72.31 1.58 ( ) |
| Dataset | Attack Budget | GCN | GAT | RGCN | GCN-SVD | GraphBel | UAG | GCORNs | GADC | HANG | Pro-GNN | RGDM (GCN) | RGDM (HANG) | RGDM (Pro-GNN) |
| Cora | 0 | 81.43 1.04 | 82.14 1.13 | 81.34 1.55 | 81.10 1.34 | 71.55 1.01 | 82.34 1.08 | 82.61 0.41 | 81.36 1.83 | 80.75 1.27 | 84.78 0.59 | 83.43 1.08 ( ) | 82.10 1.34 ( ) | 86.00 1.13 ( ) |
| 1 | 75.06 1.02 | 76.04 1.08 | 76.75 1.71 | 77.23 1.82 | 63.73 1.25 | 81.75 1.16 | 81.05 1.14 | 80.05 1.53 | 76.99 1.16 | 83.85 0.51 | 78.41 1.16 ( ) | 80.39 1.82 ( ) | 84.79 1.08 ( ) | |
| 2 | 70.60 1.10 | 70.24 1.43 | 70.96 1.14 | 72.53 1.60 | 62.41 1.94 | 77.96 1.84 | 78.47 1.32 | 75.90 1.29 | 76.51 1.60 | 78.65 0.66 | 73.79 1.84 ( ) | 79.14 1.60 ( ) | 80.02 1.43 ( ) | |
| 3 | 67.95 1.72 | 65.54 1.34 | 66.51 1.60 | 66.75 1.54 | 61.20 1.08 | 72.51 1.14 | 73.17 0.74 | 71.94 1.45 | 73.13 1.85 | 72.40 0.53 | 70.46 1.14 ( ) | 76.31 1.54 ( ) | 74.31 1.34 ( ) | |
| 4 | 61.57 1.47 | 61.69 0.90 | 59.28 1.68 | 60.72 1.63 | 56.51 1.72 | 70.28 1.52 | 71.26 0.62 | 70.93 1.19 | 72.53 1.14 | 70.12 0.66 | 64.37 1.52 ( ) | 75.12 1.63 ( ) | 72.79 0.90 ( ) | |
| 5 | 55.54 1.66 | 58.31 1.03 | 55.30 1.66 | 57.71 1.82 | 51.93 1.77 | 66.30 1.21 | 66.89 1.08 | 64.49 1.42 | 68.80 1.55 | 66.89 0.73 | 59.44 1.21 ( ) | 69.81 1.82 ( ) | 69.81 1.03 ( ) |
| Dataset | Ptb Rate (%) | GCN | GAT | RGCN | GCN-SVD | GraphBel | UAG | GCORNs | GADC | HANG | Pro-GNN | RGDM(GCN) | RGDM(HANG) | RGDM(Pro-GNN) |
| Cora | 0 | 83.50 0.44 | 83.97 0.65 | 83.09 0.44 | 80.63 0.45 | 83.42 0.52 | 82.05 0.51 | 82.63 0.47 | 83.21 0.72 | 80.07 0.32 | 82.98 0.23 | 85.23 0.44 ( ) | 82.31 0.51 ( ) | 84.29 0.52 ( ) |
| 5 | 75.50 0.44 | 76.97 0.65 | 75.04 1.32 | 75.82 1.24 | 77.01 1.33 | 76.22 1.24 | 75.96 1.81 | 76.83 1.25 | 76.99 1.52 | 77.63 1.85 | 77.92 1.08 ( ) | 79.39 1.33 ( ) | 81.10 1.16 ( ) | |
| 10 | 72.02 1.32 | 74.10 1.84 | 73.05 1.25 | 74.00 1.76 | 74.00 1.57 | 76.00 1.76 | 74.67 1.03 | 75.90 1.84 | 76.99 1.52 | 77.63 1.85 | 74.22 1.43 ( ) | 79.44 1.57 ( ) | 80.36 1.84 ( ) | |
| 15 | 69.42 1.71 | 70.55 1.69 | 71.61 1.34 | 72.90 1.46 | 72.79 1.26 | 74.90 1.33 | 72.58 1.27 | 74.34 1.52 | 75.63 1.59 | 75.40 1.32 | 72.42 1.34 ( ) | 76.92 1.26 ( ) | 76.57 1.14 ( ) | |
| 20 | 67.61 1.02 | 68.84 1.33 | 67.87 1.22 | 70.00 1.83 | 70.55 1.17 | 71.85 1.22 | 71.99 1.54 | 72.06 1.80 | 72.15 1.27 | 71.32 1.79 | 71.61 0.90 ( ) | 74.35 1.17 ( ) | 74.44 1.52 ( ) | |
| 25 | 64.81 1.14 | 65.51 1.45 | 66.02 1.39 | 67.89 1.21 | 66.32 1.07 | 68.03 1.39 | 69.47 1.98 | 68.92 1.27 | 69.10 1.33 | 68.72 1.50 | 69.53 1.03 ( ) | 71.67 1.07 ( ) | 72.07 1.21 ( ) |
| Data | Cora | Citeseer | Polblogs | Pubmed |
| Original Attacked Graph | 12.10 0.45 | 7.53 0.22 | 8.26 0.37 | 6.11 0.38 |
| iGraphMix [ 34 ] | 13.44 0.33 | 9.02 0.42 | 10.75 0.44 | 7.65 0.38 |
| ImGAGN [ 55 ] | 13.10 0.38 | 7.96 0.42 | 9.86 0.43 | 6.95 0.27 |
| Graphsmote [ 93 ] | 13.52 0.42 | 8.95 0.22 | 10.60 0.27 | 7.45 0.51 |
| SNS [ 22 ] | 13.35 0.42 | 7.88 0.27 | 9.30 0.85 | 6.74 0.41 |
| Baseline DDPM | 13.28 0.40 | 8.82 0.26 | 10.25 0.39 | 7.25 0.41 |
| Data | Cora | Citeseer | Polblogs | Pubmed |
| Original Attacked Graph | 10.32 0.42 | 7.83 0.28 | 8.92 0.39 | 6.53 0.37 |
| iGraphMix [ 34 ] | 11.25 0.28 | 8.42 0.43 | 9.63 0.44 | 7.11 0.27 |
| ImGAGN [ 55 ] | 11.05 0.38 | 8.04 0.26 | 8.21 0.51 | 7.16 0.79 |
| Graphsmote [ 93 ] | 11.13 0.29 | 8.16 0.51 | 9.32 0.41 | 7.18 0.44 |
| SNS [ 22 ] | 11.05 0.38 | 8.04 0.26 | 8.21 0.51 | 7.16 0.79 |
| Baseline DDPM ( ) | 12.03 0.45 | 8.72 0.31 | 10.77 0.40 | 7.93 0.42 |
| RGAE training (min) | Generation (s/node) | |||
| Dataset | SHED | Global | SHED | Global |
| Cora | 20 | 29 | 0.066 | 0.089 |
| Citeseer | 23 | 30 | 0.067 | 0.086 |
| Polblogs | 65 | 88 | 0.069 | 0.090 |
| Pubmed | 153 | 480 | 0.073 | 0.080 |
| ogbn-arxiv | 452 | 2511 | 0.15 | 0.49 |
| Datasets | RGDM Training Time (minutes) | Generation Time (s/sample) | |
| RGAE | LDM | ||
| Cora | 20 | 39 | 0.066 |
| Citeseer | 23 | 41 | 0.067 |
| Polblogs | 65 | 31 | 0.069 |
| Pubmed | 153 | 154 | 0.073 |
| Datasets | Cross-validation Time (minutes) | ||
| RGDM (GCN) | RGDM (SG-GSR) | RGDM (Pro-GNN) | |
| Cora | 1.1 | 3.5 | 43.3 |
| Citeseer | 1.0 | 3.4 | 38.5 |
| Polblogs | 1.6 | 3.9 | 26.9 |
| Pubmed | 9.4 | 20.5 | 176.5 |
| Dataset | Ptb Rate (%) | RGDM (GCN) | RGDM (SG-GSR) | RGDM (Pro-GNN) |
| Cora | 0 | |||
| 5 | ||||
| 10 | ||||
| 15 | ||||
| 20 | ||||
| 25 |
| Dataset | Attack Budget | RGDM (GCN) | RGDM (SG-GSR) | RGDM (Pro-GNN) |
| Cora | 0 | |||
| 1 | ||||
| 2 | ||||
| 3 | ||||
| 4 | ||||
| 5 |
| Dataset | Ptb Rate (%) | RGDM (GCN) | RGDM (SG-GSR) | RGDM (Pro-GNN) |
| Cora | 0 | |||
| 5 | ||||
| 10 | ||||
| 15 | ||||
| 20 | ||||
| 25 |
| Dataset | Ptb Rate (%) | GCN | RGDM (GCN) |
| ogbn-arxiv | 0 | 72.82 1.32 | 74.48 1.15 ( ) |
| 10 | 62.25 1.23 | 64.50 1.35 ( ) | |
| 20 | 54.95 1.44 | 56.17 1.66 ( ) | |
| 0 | 93.52 1.17 | 95.44 1.42 ( ) | |
| 10 | 82.62 1.32 | 84.73 1.12 ( ) | |
| 20 | 74.53 1.57 | 75.99 1.22 ( ) |
| Method | ogbn-arxiv | |
| GCN | 54.95 | 74.53 |
| RGDM without edge selection | 55.30 | 75.00 |
| RGDM (full) | 56.17 | 75.99 |
| 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 | |
| Accuracy | 72.12 | 72.16 | 72.30 | 72.29 | 72.31 | 72.28 | 72.24 | 72.22 | 72.25 |
| 20 | 40 | 60 | 80 | 100 | 120 | 150 | 200 | |
| 125 | 63 | 42 | 32 | 25 | 21 | 17 | 13 | |
| Generation Time (s/sample) | 0.075 | 0.070 | 0.068 | 0.067 | 0.066 | 0.067 | 0.068 | 0.071 |
| Accuracy | 72.12 | 72.20 | 72.26 | 72.29 | 72.31 | 72.28 | 72.24 | 72.20 |
| Dataset | Ptb Rate (%) | LHS | RGDM (LHS) |
| Chameleon | 0 | 72.31 1.32 | 74.02 1.13 ( ) |
| 15 | 71.87 1.61 | 72.98 1.11 ( ) | |
| 25 | 70.03 1.85 | 72.41 1.66 ( ) | |
| Actor | 0 | 38.87 1.43 | 41.80 1.42 ( ) |
| 15 | 36.79 1.11 | 39.01 1.12 ( ) | |
| 25 | 35.37 1.12 | 37.90 1.01 ( ) |
| Dataset | Ptb (%) | GCN | Pro-GNN | SG-GSR |
| Cora | 0 | |||
| Cora | 15 | |||
| Cora | 25 | |||
| Citeseer | 15 | |||
| Citeseer | 25 | |||
| Polblogs | 15 |
| Dataset | Ptb (%) | RGDM (GCN) | RGDM (Pro-GNN) | RGDM (SG-GSR) |
| Cora | 0 | |||
| 5 | 0.038 | 0.024 | 0.013 | |
| 10 | 0.033 | 0.021 | 0.012 | |
| 15 | ||||
| 20 | 0.025 | 0.015 | 0.009 | |
| 25 |
| Dataset | Budget | RGDM (GCN) | RGDM (Pro-GNN) | RGDM (SG-GSR) |
| Cora | 0 | 0.041 | 0.025 | 0.015 |
| 1 | 0.036 | 0.023 | 0.011 | |
| 2 | 0.032 | 0.019 | 0.010 | |
| 3 | 0.027 | 0.016 | 0.008 | |
| 4 | 0.022 | 0.013 | 0.007 | |
| 5 | 0.019 | 0.011 | 0.006 |
| Dataset | Ptb (%) | RGDM (GCN) | RGDM (Pro-GNN) | RGDM (SG-GSR) |
| Cora | 0 | 0.043 | 0.029 | 0.017 |
| 5 | 0.039 | 0.025 | 0.012 | |
| 10 | 0.035 | 0.020 | 0.011 | |
| 15 | 0.030 | 0.018 | 0.009 | |
| 20 | 0.026 | 0.014 | 0.008 | |
| 25 | 0.022 | 0.012 | 0.007 |
| Method | Accuracy ( ) |
| Pro-GNN | 69.7 |
| RGDM (Purification) | 71.0 |
| RGDM (GDA) | 72.3 |
| RGDM (GDA + Purification) | 72.9 |
| Datasets | GDDM [ 27 ] | DiffSP [ 49 ] | RGDM (SG-GSR) | p-value |
| Cora | ||||
| Citeseer | ||||
| Polblogs | ||||
| Pubmed |
| Synthetic Nodes ( ) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| Accuracy (%) | 70.5 | 71.0 | 71.9 | 72.2 | 72.3 | 72.1 | 72.0 | 71.7 | 71.4 | 71.2 |
| Method | Accuracy ( ) |
| Pro-GNN | 69.7 |
| DDPM (Pro-GNN) | 68.2 |
| RGDM (Pro-GNN) | 72.3 |
| Label Ratio | 2.5% | 5% | 7.5% | 10% | 20% | 40% | 60% |
| Pro-GNN | 62.5 | 65.6 | 67.5 | 69.7 | 73.8 | 75.2 | 76.6 |
| RGDM (Pro-GNN) | 64.8 | 68.0 | 69.3 | 72.3 | 75.9 | 77.6 | 78.4 |
| Dataset | Cora | Citeseer | Polblogs | Pubmed |
| RGDM (HGAE from LR-FGDM) | 76.8 | 72.5 | 86.7 | 86.0 |
| RGDM (BLND) | 77.4 | 73.1 | 87.2 | 86.6 |
| RGDM | 79.1 | 75.3 | 88.8 | 88.6 |
| Dataset | SG-GSR | RGDM (SG-GSR) | -value |
| Cora | |||
| Citeseer | |||
| Polblogs | |||
| Pubmed |
| Dataset | SG-GSR | RGDM (SG-GSR) | Gain (points) |
| Cora | 74.5 | 76.9 | 2.4 |
| Citeseer | 69.2 | 72.4 | 3.2 |
| Polblogs | 84.4 | 86.6 | 2.2 |
| Pubmed | 84.6 | 86.3 | 1.7 |
Graph Diffusion
Graph diffusion studies how information or probability spreads over graph structure for learning, analysis, and generation.
See all 77 papers