{"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/when-multi-level-meets-multi-interest-a-multi","title":"When Multi-Level Meets Multi-Interest: A Multi-Grained Neural Model for Sequential Recommendation","arxiv_id":"2205.01286","date":"2022-05-03","proceeding":null,"authors":["Yu Tian","Jianxin Chang","Yannan Niu","Yang song","Chenliang Li"],"abstract":"Sequential recommendation aims at identifying the next item that is preferred by a user based on their behavioral history. Compared to conventional sequential models that leverage attention mechanisms and RNNs, recent efforts mainly follow two directions for improvement: multi-interest learning and graph convolutional aggregation. Specifically, multi-interest methods such as ComiRec and MIMN, focus on extracting different interests for a user by performing historical item clustering, while graph convolution methods including TGSRec and SURGE elect to refine user preferences based on multi-level correlations between historical items. Unfortunately, neither of them realizes that these two types of solutions can mutually complement each other, by aggregating multi-level user preference to achieve more precise multi-interest extraction for a better recommendation. To this end, in this paper, we propose a unified multi-grained neural model(named MGNM) via a combination of multi-interest learning and graph convolutional aggregation. Concretely, MGNM first learns the graph structure and information aggregation paths of the historical items for a user. It then performs graph convolution to derive item representations in an iterative fashion, in which the complex preferences at different levels can be well captured. Afterwards, a novel sequential capsule network is proposed to inject the sequential patterns into the multi-interest extraction process, leading to a more precise interest learning in a multi-grained manner.","url_abs":"https://arxiv.org/abs/2205.01286v1","url_pdf":"https://arxiv.org/pdf/2205.01286v1.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":"when-multi-level-meets-multi-interest-a-multi","repo_url":"https://github.com/whuir/mgnm","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"sequential-recommendation","task_name":"Sequential Recommendation"}],"methods":[{"method_slug":"fixcaps","method_name":"Capsule Network"},{"method_slug":"comirec","method_name":"ComiRec"},{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2205.01286","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2205.01286"}},"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/whuir/mgnm","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"unverified":6},"by_repo_kind":{"official":{"samples":6,"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":0,"samples":[{"code_sha256_prefix":"6459cb9cec6927db","entry":"gen_se_pool","repo":"whuir/mgnm","repo_kind":"official","path":"code/DataInputWSE_es.py","file_url":"https://github.com/whuir/mgnm/blob/HEAD/code/DataInputWSE_es.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":"6459cb9cec6927db"}},{"code_sha256_prefix":"9b423c840f087475","entry":"get_shape","repo":"whuir/mgnm","repo_kind":"official","path":"code/model.py","file_url":"https://github.com/whuir/mgnm/blob/HEAD/code/model.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":"9b423c840f087475"}},{"code_sha256_prefix":"2ce0f7ad33992d31","entry":"ln","repo":"whuir/mgnm","repo_kind":"official","path":"code/util_se.py","file_url":"https://github.com/whuir/mgnm/blob/HEAD/code/util_se.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":"2ce0f7ad33992d31"}},{"code_sha256_prefix":"51d13e3110b0e6d3","entry":"multihead_attention","repo":"whuir/mgnm","repo_kind":"official","path":"code/util_se.py","file_url":"https://github.com/whuir/mgnm/blob/HEAD/code/util_se.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":"51d13e3110b0e6d3"}},{"code_sha256_prefix":"26abe6714d855099","entry":"normalize_adj_tensor","repo":"whuir/mgnm","repo_kind":"official","path":"code/model.py","file_url":"https://github.com/whuir/mgnm/blob/HEAD/code/model.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":"26abe6714d855099"}},{"code_sha256_prefix":"8fe64623b4d2875f","entry":"scaled_dot_product_attention","repo":"whuir/mgnm","repo_kind":"official","path":"code/util_se.py","file_url":"https://github.com/whuir/mgnm/blob/HEAD/code/util_se.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":"8fe64623b4d2875f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}