{"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/arxiv-2510-13451","title":"Toward Efficient Inference Attacks: Shadow Model Sharing via Mixture-of-Experts","arxiv_id":"2510.13451","date":"2025-10-15","proceeding":"NeurIPS","authors":["Li Bai","Qingqing Ye","Xinwei Zhang","Sen Zhang","Zi Liang","Jianliang Xu","Haibo Hu"],"abstract":"Machine learning models are often vulnerable to inference attacks that expose sensitive information from their training data. Shadow model technique is commonly employed in such attacks, such as membership inference. However, the need for a large number of shadow models leads to high computational costs, limiting their practical applicability. Such inefficiency mainly stems from the independent training and use of these shadow models. To address this issue, we present a novel shadow pool training framework SHAPOOL, which constructs multiple shared models and trains them jointly within a single process. In particular, we leverage the Mixture-of-Experts mechanism as the shadow pool to interconnect individual models, enabling them to share some sub-networks and thereby improving efficiency. To ensure the shared models closely resemble independent models and serve as effective substitutes, we introduce three novel modules: path-choice routing, pathway regularization, and pathway alignment. These modules guarantee random data allocation for pathway learning, promote diversity among shared models, and maintain consistency with target models. We evaluate SHAPOOL in the context of various membership inference attacks and show that it significantly reduces the computational cost of shadow model construction while maintaining comparable attack performance.","url_abs":"https://arxiv.org/abs/2510.13451","url_pdf":"https://arxiv.org/pdf/2510.13451","source":{"archive":null,"snapshot":"2025-07-28","note":"not in the Papers with Code archive (frozen at the snapshot)","row_kind":"graph","title_abstract_authors_date":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)"},"code_links":[],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2510.13451","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2510.13451"}},"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":[{"mentioned_in_github":null,"is_official":null,"provenance":"deterministic:regex_extraction","mentioned_in_paper":null,"url":"https://github.com/BaiLibl/ShadowPool","reach":{"status":"ok"}}],"summary":{"ran_draft_wrong":1,"unverified":7},"by_repo_kind":{"found_in_text":{"samples":8,"ran":1,"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":8,"samples":[{"code_sha256_prefix":"7ad86819c80a33c6","entry":"FeedForward","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/mlpmixer.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/mlpmixer.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"7ad86819c80a33c6"}},{"code_sha256_prefix":"a570cef4986fe37e","entry":"ResNet18","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/resnet.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/resnet.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":"a570cef4986fe37e"}},{"code_sha256_prefix":"bd5133ec748acd0f","entry":"ResNet34","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/resnet.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/resnet.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":"bd5133ec748acd0f"}},{"code_sha256_prefix":"69e10ea3202d4d4f","entry":"ResNet50","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/resnet.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/resnet.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":"69e10ea3202d4d4f"}},{"code_sha256_prefix":"6193e8e1b6439d79","entry":"all_prune","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/prunes.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/prunes.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":"6193e8e1b6439d79"}},{"code_sha256_prefix":"9c00440d544835cb","entry":"auto_file_name","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/prunes.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/prunes.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":"9c00440d544835cb"}},{"code_sha256_prefix":"1dcdd5b5531baa29","entry":"part_prune","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/prunes.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/prunes.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":"1dcdd5b5531baa29"}},{"code_sha256_prefix":"3b99baf0c1a4b7f2","entry":"percentile","repo":"BaiLibl/ShadowPool","repo_kind":"found_in_text","path":"models/resnet_moe.py","file_url":"https://github.com/BaiLibl/ShadowPool/blob/HEAD/models/resnet_moe.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":"3b99baf0c1a4b7f2"}}]},"arxiv_metadata":{"licence":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license)","fields":["title","abstract","authors","date"],"primary_category":"cs.CR","source":"arxiv_api"},"syntology_extracted_results":null}