{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/evolvegcn-evolving-graph-convolutional","title":"EvolveGCN: Evolving Graph Convolutional Networks for Dynamic Graphs","arxiv_id":"1902.10191","date":"2019-02-26","proceeding":null,"authors":["Aldo Pareja","Giacomo Domeniconi","Jie Chen","Tengfei Ma","Toyotaro Suzumura","Hiroki Kanezashi","Tim Kaler","Tao B. Schardl","Charles E. Leiserson"],"abstract":"Graph representation learning resurges as a trending research subject owing to the widespread use of deep learning for Euclidean data, which inspire various creative designs of neural networks in the non-Euclidean domain, particularly graphs. With the success of these graph neural networks (GNN) in the static setting, we approach further practical scenarios where the graph dynamically evolves. Existing approaches typically resort to node embeddings and use a recurrent neural network (RNN, broadly speaking) to regulate the embeddings and learn the temporal dynamics. These methods require the knowledge of a node in the full time span (including both training and testing) and are less applicable to the frequent change of the node set. In some extreme scenarios, the node sets at different time steps may completely differ. To resolve this challenge, we propose EvolveGCN, which adapts the graph convolutional network (GCN) model along the temporal dimension without resorting to node embeddings. The proposed approach captures the dynamism of the graph sequence through using an RNN to evolve the GCN parameters. Two architectures are considered for the parameter evolution. We evaluate the proposed approach on tasks including link prediction, edge classification, and node classification. The experimental results indicate a generally higher performance of EvolveGCN compared with related approaches. The code is available at \\url{https://github.com/IBM/EvolveGCN}.","url_abs":"https://arxiv.org/abs/1902.10191v3","url_pdf":"https://arxiv.org/pdf/1902.10191v3.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/IBM/AMLSim","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"none","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/IBM/EvolveGCN","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/Rufaim/EvolveGCN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/ansonb/deft","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/benedekrozemberczki/pytorch_geometric_temporal","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/marlin-codes/HTGN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/njuhtc/LEDG","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/sunnan191/evisec","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/tonyPo/AMLSim_prep","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"GPL-3.0"}},{"paper_slug":"evolvegcn-evolving-graph-convolutional","repo_url":"https://github.com/dmlc/dgl/tree/master/examples/pytorch/evolveGCN","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"dynamic-link-prediction","task_name":"Dynamic Link Prediction"},{"task_slug":"edge-classification","task_name":"Edge Classification"},{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"graph-representation-learning","task_name":"Graph Representation Learning"},{"task_slug":"link-prediction","task_name":"Link Prediction"},{"task_slug":"node-classification","task_name":"Node Classification"},{"task_slug":"representation-learning","task_name":"Representation Learning"}],"methods":[{"method_slug":"gcn","method_name":"GCN"}],"datasets_introduced":[],"methods_introduced":[],"results":[{"leaderboard":"/sota/dynamic-link-prediction-on-dblp-temporal","task":"Dynamic Link Prediction","dataset":"DBLP Temporal","model":"EGCN-H","rank_in_archive_order":5,"of":7,"metrics":{"AP":"83.87","AUC":"80.80"},"uses_additional_data":false},{"leaderboard":"/sota/dynamic-link-prediction-on-dblp-temporal","task":"Dynamic Link Prediction","dataset":"DBLP Temporal","model":"EGCN-O","rank_in_archive_order":6,"of":7,"metrics":{"AP":"81.43","AUC":"78.63"},"uses_additional_data":false},{"leaderboard":"/sota/dynamic-link-prediction-on-enron-email","task":"Dynamic Link Prediction","dataset":"Enron Emails","model":"EGCN-H","rank_in_archive_order":5,"of":7,"metrics":{"AP":"88.29","AUC":"89.33"},"uses_additional_data":false},{"leaderboard":"/sota/dynamic-link-prediction-on-enron-email","task":"Dynamic Link Prediction","dataset":"Enron Emails","model":"EGCN-O","rank_in_archive_order":7,"of":7,"metrics":{"AP":"84.28","AUC":"86.55"},"uses_additional_data":false}],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1902.10191","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1902.10191"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/IBM/EvolveGCN","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/benedekrozemberczki/pytorch_geometric_temporal","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/dmlc/dgl/tree/master/examples/pytorch/evolveGCN","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/Rufaim/EvolveGCN","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/IBM/AMLSim","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/marlin-codes/HTGN","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/njuhtc/LEDG","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/tonyPo/AMLSim_prep","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/sunnan191/evisec","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/ansonb/deft","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_violates":1,"ran_draft_wrong":2,"unverified":8},"by_repo_kind":{"official":{"samples":2,"ran":1,"repositories":1},"listed":{"samples":9,"ran":2,"repositories":2}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":1,"samples":[{"code_sha256_prefix":"6051eda3143259d8","entry":"random_param_value","repo":"IBM/EvolveGCN","repo_kind":"official","path":"run_exp.py","file_url":"https://github.com/IBM/EvolveGCN/blob/HEAD/run_exp.py","link_basis":"first_harvest_node","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"6051eda3143259d8"}},{"code_sha256_prefix":"654acacaf00954fb","entry":"scaled_exp","repo":"sunnan191/evisec","repo_kind":"listed","path":"graph_transformer_layer.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/graph_transformer_layer.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"654acacaf00954fb"}},{"code_sha256_prefix":"23fba400cff6fafa","entry":"src_dot_dst","repo":"sunnan191/evisec","repo_kind":"listed","path":"graph_transformer_layer.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/graph_transformer_layer.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"23fba400cff6fafa"}},{"code_sha256_prefix":"959527ac6d4c891a","entry":"build_random_hyper_params","repo":"IBM/EvolveGCN","repo_kind":"official","path":"run_exp.py","file_url":"https://github.com/IBM/EvolveGCN/blob/HEAD/run_exp.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"959527ac6d4c891a"}},{"code_sha256_prefix":"098bba50be16f947","entry":"build_random_hyper_params","repo":"njuhtc/LEDG","repo_kind":"listed","path":"run_exp.py","file_url":"https://github.com/njuhtc/LEDG/blob/HEAD/run_exp.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"098bba50be16f947"}},{"code_sha256_prefix":"38a5b951b572ace3","entry":"compute_aupr","repo":"sunnan191/evisec","repo_kind":"listed","path":"detector.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/detector.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"38a5b951b572ace3"}},{"code_sha256_prefix":"0544ac6dc2820f74","entry":"compute_auroc","repo":"sunnan191/evisec","repo_kind":"listed","path":"detector.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/detector.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"0544ac6dc2820f74"}},{"code_sha256_prefix":"3b7db58dd36b10ee","entry":"compute_fpr95","repo":"sunnan191/evisec","repo_kind":"listed","path":"detector.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/detector.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"3b7db58dd36b10ee"}},{"code_sha256_prefix":"2eb9d39c82188679","entry":"feature_reader","repo":"sunnan191/evisec","repo_kind":"listed","path":"models.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/models.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"2eb9d39c82188679"}},{"code_sha256_prefix":"672c2bffc50d20fd","entry":"graph_reader","repo":"sunnan191/evisec","repo_kind":"listed","path":"models.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/models.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"672c2bffc50d20fd"}},{"code_sha256_prefix":"275c19411fe5d6c0","entry":"target_reader","repo":"sunnan191/evisec","repo_kind":"listed","path":"models.py","file_url":"https://github.com/sunnan191/evisec/blob/HEAD/models.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"275c19411fe5d6c0"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}