RoleMAG: Learning Neighbor Roles in Multimodal Graphs
Organizations: Beijing Institute of Technology, Beijing, China
Abstract
Multimodal attributed graphs (MAGs) combine multimodal node attributes with structured relations. However, existing methods usually perform shared message passing on a single graph and implicitly assume that the same neighbors are equally useful for all modalities. In practice, neighbors that benefit one modality may interfere with another, blurring modality-specific signals under shared propagation. To address this issue, we propose RoleMAG, a multimodal graph framework that learns how different neighbors should participate in propagation. Concretely, RoleMAG distinguishes whether a neighbor should provide shared, complementary, or heterophilous signals, and routes them through separate propagation channels. This enables cross-modal completion from complementary neighbors while keeping heterophilous ones out of shared smoothing. Extensive experiments on three graph-centric MAG benchmarks show that RoleMAG achieves the best results on RedditS and Bili_Dance, while remaining competitive on Toys. Ablation, robustness, and efficiency analyses further support the effectiveness of the proposed role-aware propagation design. Our code is available at https://anonymous.4open.science/r/RoleMAG-7EE0/
Figures & tables
| Model | Toys (Node Classification) | RedditS (Node Classification) | Bili_Dance (Link Prediction) | |||
|---|---|---|---|---|---|---|
| ACC | F1 | ACC | F1 | MRR | Hits@3 | |
| GCN | 77.24 ±0.31 | 73.18 ±0.42 | 91.48 ±0.24 | 84.68 ±0.38 | 14.25 ±0.41 | 15.23 ±0.57 |
| GAT | 77.29 ±0.34 | 72.92 ±0.49 | 91.45 ±0.27 | 85.65 ±0.41 | 24.19 ±0.88 | 25.42 ±1.06 |
| MMGCN | 77.60 ±0.29 | 75.03 ±0.45 | 90.44 ±0.36 | 82.85 ±0.56 | 8.64 ±0.33 | 8.55 ±0.39 |
| MGAT | 78.12 ±0.42 | 74.21 ±0.61 | 91.73 ±0.31 | 85.12 ±0.48 | 16.84 ±0.51 | 18.92 ±0.72 |
| LGMRec | 78.81 ±0.73 | 72.31 ±1.14 | 92.36 ±0.19 | 86.10 ±0.32 | 11.46 ±0.37 | 11.78 ±0.44 |
| Variant | Toys ACC | RedditS ACC |
|---|---|---|
| Shared-only | 75.23 | 89.73 |
| w/o Role Routing | 77.23 | 90.85 |
| w/o Complementary Expert | 77.85 | 91.44 |
| w/o Complementary Direction | 77.93 | 91.62 |
| w/o Heterophily Expert | 76.97 | 90.44 |
| Full RoleMAG | 78.83 | 92.57 |
Appendix figures & tables8 assets
Supplementary material from the paper’s appendix.
Appendix
| Symbol | Meaning | Shape / Range |
| Input graph and node representations | ||
| Multimodal attributed graph | – | |
| Set of modality indices, representing text and image, respectively | ||
| Modal input features of node and the modal feature matrix of the entire graph | , | |
| Adjacency matrix, degree matrix, and symmetric normalized adjacency matrix | ||
| First-order neighborhood of node | ||
| Dataset | Task | #Nodes | #Edges | #Classes | Image Dim. | Text Dim. |
|---|---|---|---|---|---|---|
| Toys | Node Classification | 20,695 | 63,443 | 18 | 768 | 768 |
| RedditS | Node Classification | 15,894 | 283,080 | 20 | 768 | 768 |
| Bili_Dance | Link Prediction | 2,307 | 9,127 | – | 768 | 768 |
| Component | Symbol / Hyperparameter | Value Used in Current Experiments |
|---|---|---|
| Node representation dimension | ||
| Dropout | ||
| Router hidden dimension | ||
| Complementary TopK size | ||
| Number of query tokens | ||
| Attention bias scale |
| Item | Specification |
|---|---|
| Operating system | Ubuntu 22.04.5 LTS |
| Python | 3.10.18 |
| PyTorch | 2.8.0 |
| CUDA runtime | 12.8 |
| Graph libraries | PyG 2.6.1, DGL 2.4.0 |
| GPU | NVIDIA RTX PRO 6000 Blackwell Server Edition |
| Dataset | RoleMAG | DGF | LGMRec | Graph4MM | ||||
|---|---|---|---|---|---|---|---|---|
| Acc | F1 | Acc | F1 | Acc | F1 | Acc | F1 | |
| Toys | 78.83 | 75.49 | 77.68 | 71.46 | 78.81 | 72.31 | 78.91 | 75.62 |
| RedditS | 92.57 | 87.04 | 91.73 | 82.63 | 92.36 | 86.10 | 92.34 | 86.31 |
| Grocery | 83.45 | 73.56 | 83.02 | 72.56 | 84.12 | 76.83 | 83.57 | 75.92 |
| Bili_Dance | 44.82 | 39.14 | 41.73 | 36.21 | 43.90 | 37.88 | 45.21 | 39.87 |
| Sweep | Value | Acc | F1 |
|---|---|---|---|
| TopK | 8 | 93.49 | 87.10 |
| TopK | 16 | 92.92 | 86.25 |
| TopK | 32 | 93.14 | 86.68 |
| Queries | 2 | 93.81 | 87.27 |
| Queries | 4 | 92.64 | 85.75 |
| Queries | 8 | 93.14 | 86.60 |
| Sweep | Value | Acc | F1 |
|---|---|---|---|
| 0.0 | 92.74 | 85.79 | |
| 0.2 | 92.70 | 86.20 | |
| 0.5 | 93.21 | 86.07 | |
| 1.0 | 92.67 | 86.70 | |
| 0.0 | 92.61 | 85.56 | |
| 0.05 | 93.11 | 86.69 |
| Reproducibility Item | Specification | Reference |
|---|---|---|
| Execution entrypoint | The graph-centric experiments are launched through python src/main.py , where the three fields task , dataset , and model jointly determine a run configuration. | sections D.6 and E.2 |
| Environment specification | The dependency set is frozen by the environment file at the repository root, and the main software and hardware environment is listed in the environment table. | sections D.6 and 6 |
| Task scope | The main paper covers two node classification tasks (Toys and RedditS) and one link prediction task (Bili_Dance). | sections D.1 and E.1 |
| Data split protocol | Node classification uses a node split, while link prediction uses a edge split and is evaluated with ranking metrics. | sections D.1 and D.3 |
| Input construction | Node inputs are constructed from frozen multimodal embeddings together with task-specific graph preprocessing. | section D.2 |
| Model instantiation | RoleMAG is integrated into the training and evaluation workflow through the unified benchmark interface and instantiated along the router-expert-fusion pipeline specified in this paper. | sections D.4 and E.4 |