{"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/intentgc-a-scalable-graph-convolution","title":"IntentGC: a Scalable Graph Convolution Framework Fusing Heterogeneous Information for Recommendation","arxiv_id":"1907.12377","date":"2019-07-24","proceeding":null,"authors":["Jun Zhao","Zhou Zhou","Ziyu Guan","Wei Zhao","Wei Ning","Guang Qiu","Xiaofei He"],"abstract":"The remarkable progress of network embedding has led to state-of-the-art algorithms in recommendation. However, the sparsity of user-item interactions (i.e., explicit preferences) on websites remains a big challenge for predicting users' behaviors. Although research efforts have been made in utilizing some auxiliary information (e.g., social relations between users) to solve the problem, the existing rich heterogeneous auxiliary relationships are still not fully exploited. Moreover, previous works relied on linearly combined regularizers and suffered parameter tuning. In this work, we collect abundant relationships from common user behaviors and item information, and propose a novel framework named IntentGC to leverage both explicit preferences and heterogeneous relationships by graph convolutional networks. In addition to the capability of modeling heterogeneity, IntentGC can learn the importance of different relationships automatically by the neural model in a nonlinear sense. To apply IntentGC to web-scale applications, we design a faster graph convolutional model named IntentNet by avoiding unnecessary feature interactions. Empirical experiments on two large-scale real-world datasets and online A/B tests in Alibaba demonstrate the superiority of our method over state-of-the-art algorithms.","url_abs":"https://arxiv.org/abs/1907.12377v1","url_pdf":"https://arxiv.org/pdf/1907.12377v1.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":"intentgc-a-scalable-graph-convolution","repo_url":"https://github.com/alibaba/euler","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"network-embedding","task_name":"Network Embedding"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1907.12377","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1907.12377"}},"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/alibaba/euler","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"unverified":7},"by_repo_kind":{"official":{"samples":7,"ran":0,"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":7,"samples":[{"code_sha256_prefix":"d476d10afbbf1519","entry":"get_layer_uid","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/utils/layers.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/utils/layers.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":false,"mcp_get_code":{"code_sha256":"d476d10afbbf1519"}},{"code_sha256_prefix":"09d2d98d26a6123f","entry":"scatter_add","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/contrib/py_scatter.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/contrib/py_scatter.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":false,"mcp_get_code":{"code_sha256":"09d2d98d26a6123f"}},{"code_sha256_prefix":"b1905598c3b443ee","entry":"sigmoid_loss","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/solution/losses.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/solution/losses.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":false,"mcp_get_code":{"code_sha256":"b1905598c3b443ee"}},{"code_sha256_prefix":"43547d323572b018","entry":"spmm_","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/contrib/spmm.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/contrib/spmm.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":false,"mcp_get_code":{"code_sha256":"43547d323572b018"}},{"code_sha256_prefix":"fe772fdca3f2eff7","entry":"spmm_add","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/contrib/spmm.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/contrib/spmm.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":false,"mcp_get_code":{"code_sha256":"fe772fdca3f2eff7"}},{"code_sha256_prefix":"c9c5e9acb4742858","entry":"spmm_mean","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/contrib/spmm.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/contrib/spmm.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":false,"mcp_get_code":{"code_sha256":"c9c5e9acb4742858"}},{"code_sha256_prefix":"7e5d6e072f9858c7","entry":"xent_loss","repo":"alibaba/euler","repo_kind":"official","path":"tf_euler/python/solution/losses.py","file_url":"https://github.com/alibaba/euler/blob/HEAD/tf_euler/python/solution/losses.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":false,"mcp_get_code":{"code_sha256":"7e5d6e072f9858c7"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}