{"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/parameter-free-dynamic-graph-embedding-for","title":"Parameter-free Dynamic Graph Embedding for Link Prediction","arxiv_id":"2210.08189","date":"2022-10-15","proceeding":null,"authors":["Jiahao Liu","Dongsheng Li","Hansu Gu","Tun Lu","Peng Zhang","Ning Gu"],"abstract":"Dynamic interaction graphs have been widely adopted to model the evolution of user-item interactions over time. There are two crucial factors when modelling user preferences for link prediction in dynamic interaction graphs: 1) collaborative relationship among users and 2) user personalized interaction patterns. Existing methods often implicitly consider these two factors together, which may lead to noisy user modelling when the two factors diverge. In addition, they usually require time-consuming parameter learning with back-propagation, which is prohibitive for real-time user preference modelling. To this end, this paper proposes FreeGEM, a parameter-free dynamic graph embedding method for link prediction. Firstly, to take advantage of the collaborative relationships, we propose an incremental graph embedding engine to obtain user/item embeddings, which is an Online-Monitor-Offline architecture consisting of an Online module to approximately embed users/items over time, a Monitor module to estimate the approximation error in real time and an Offline module to calibrate the user/item embeddings when the online approximation errors exceed a threshold. Meanwhile, we integrate attribute information into the model, which enables FreeGEM to better model users belonging to some under represented groups. Secondly, we design a personalized dynamic interaction pattern modeller, which combines dynamic time decay with attention mechanism to model user short-term interests. Experimental results on two link prediction tasks show that FreeGEM can outperform the state-of-the-art methods in accuracy while achieving over 36X improvement in efficiency. All code and datasets can be found in https://github.com/FudanCISL/FreeGEM.","url_abs":"https://arxiv.org/abs/2210.08189v2","url_pdf":"https://arxiv.org/pdf/2210.08189v2.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":"parameter-free-dynamic-graph-embedding-for","repo_url":"https://github.com/fudancisl/freegem","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"attribute","task_name":"Attribute"},{"task_slug":"dynamic-graph-embedding","task_name":"Dynamic graph embedding"},{"task_slug":"graph-embedding","task_name":"Graph Embedding"},{"task_slug":"link-prediction","task_name":"Link Prediction"},{"task_slug":"prediction","task_name":"Prediction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2210.08189","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2210.08189"}},"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/FudanCISL/FreeGEM","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/fudancisl/freegem","reach":{"status":"ok"}}],"summary":{"ran":1,"ran_draft_wrong":1,"ran_fixture":1,"unverified":2},"by_repo_kind":{"official":{"samples":5,"ran":3,"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":5,"samples":[{"code_sha256_prefix":"3c9763a6b2b73048","entry":"Attention","repo":"fudancisl/freegem","repo_kind":"official","path":"next-interaction-prediction/process.py","file_url":"https://github.com/fudancisl/freegem/blob/HEAD/next-interaction-prediction/process.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":"3c9763a6b2b73048"}},{"code_sha256_prefix":"991daf5043970987","entry":"build_data","repo":"fudancisl/freegem","repo_kind":"official","path":"next-interaction-prediction/process.py","file_url":"https://github.com/fudancisl/freegem/blob/HEAD/next-interaction-prediction/process.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"991daf5043970987"}},{"code_sha256_prefix":"5ad5db31845ce7fa","entry":"iSVD","repo":"fudancisl/freegem","repo_kind":"official","path":"next-interaction-prediction/process.py","file_url":"https://github.com/fudancisl/freegem/blob/HEAD/next-interaction-prediction/process.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"5ad5db31845ce7fa"}},{"code_sha256_prefix":"062d1d8b6ba19006","entry":"new_stage","repo":"fudancisl/freegem","repo_kind":"official","path":"next-interaction-prediction/process.py","file_url":"https://github.com/fudancisl/freegem/blob/HEAD/next-interaction-prediction/process.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":"062d1d8b6ba19006"}},{"code_sha256_prefix":"590019bc7569c3b1","entry":"run","repo":"fudancisl/freegem","repo_kind":"official","path":"next-interaction-prediction/process.py","file_url":"https://github.com/fudancisl/freegem/blob/HEAD/next-interaction-prediction/process.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":"590019bc7569c3b1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}