{"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/holistic-memory-diversification-for","title":"Holistic Memory Diversification for Incremental Learning in Growing Graphs","arxiv_id":"2406.07413","date":"2024-06-11","proceeding":null,"authors":["Ziyue Qiao","Junren Xiao","Qingqiang Sun","Meng Xiao","Hui Xiong"],"abstract":"This paper addresses the challenge of incremental learning in growing graphs with increasingly complex tasks. The goal is to continually train a graph model to handle new tasks while retaining its inference ability on previous tasks. Existing methods usually neglect the importance of memory diversity, limiting in effectively selecting high-quality memory from previous tasks and remembering broad previous knowledge within the scarce memory on graphs. To address that, we introduce a novel holistic Diversified Memory Selection and Generation (DMSG) framework for incremental learning in graphs, which first introduces a buffer selection strategy that considers both intra-class and inter-class diversities, employing an efficient greedy algorithm for sampling representative training nodes from graphs into memory buffers after learning each new task. Then, to adequately rememorize the knowledge preserved in the memory buffer when learning new tasks, we propose a diversified memory generation replay method. This method first utilizes a variational layer to generate the distribution of buffer node embeddings and sample synthesized ones for replaying. Furthermore, an adversarial variational embedding learning method and a reconstruction-based decoder are proposed to maintain the integrity and consolidate the generalization of the synthesized node embeddings, respectively. Finally, we evaluate our model on node classification tasks involving increasing class numbers. Extensive experimental results on publicly accessible datasets demonstrate the superiority of DMSG over state-of-the-art methods.","url_abs":"https://arxiv.org/abs/2406.07413v1","url_pdf":"https://arxiv.org/pdf/2406.07413v1.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":[],"tasks":[{"task_slug":"incremental-learning","task_name":"Incremental Learning"},{"task_slug":"node-classification","task_name":"Node Classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2406.07413","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2406.07413"}},"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":"deterministic:regex_extraction","url":"https://github.com/joe817/DMSG","reach":{"status":"ok"}}],"summary":{"ran":5,"unverified":1},"by_repo_kind":{"found_in_text":{"samples":6,"ran":5,"repositories":1}},"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":6,"samples":[{"code_sha256_prefix":"9e86bfded038ab51","entry":"accuracy","repo":"joe817/DMSG","repo_kind":"found_in_text","path":"Backbones/utils.py","file_url":"https://github.com/joe817/DMSG/blob/HEAD/Backbones/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"9e86bfded038ab51"}},{"code_sha256_prefix":"dd247bc61b689793","entry":"compose_hyper_params","repo":"joe817/DMSG","repo_kind":"found_in_text","path":"training/utils.py","file_url":"https://github.com/joe817/DMSG/blob/HEAD/training/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"dd247bc61b689793"}},{"code_sha256_prefix":"db9df3652df16af3","entry":"mask_init","repo":"joe817/DMSG","repo_kind":"found_in_text","path":"Backbones/gnnconv.py","file_url":"https://github.com/joe817/DMSG/blob/HEAD/Backbones/gnnconv.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"db9df3652df16af3"}},{"code_sha256_prefix":"02735936f54bba89","entry":"remove_illegal_characters","repo":"joe817/DMSG","repo_kind":"found_in_text","path":"training/utils.py","file_url":"https://github.com/joe817/DMSG/blob/HEAD/training/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"02735936f54bba89"}},{"code_sha256_prefix":"c8d7a21d4a724014","entry":"str2dict","repo":"joe817/DMSG","repo_kind":"found_in_text","path":"training/utils.py","file_url":"https://github.com/joe817/DMSG/blob/HEAD/training/utils.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c8d7a21d4a724014"}},{"code_sha256_prefix":"cecf8d5bf86c6f95","entry":"get_model","repo":"joe817/DMSG","repo_kind":"found_in_text","path":"Backbones/model_factory.py","file_url":"https://github.com/joe817/DMSG/blob/HEAD/Backbones/model_factory.py","link_basis":"harvester_set","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":"cecf8d5bf86c6f95"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}