{"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/meaeq-mount-model-extraction-attacks-with","title":"MeaeQ: Mount Model Extraction Attacks with Efficient Queries","arxiv_id":"2310.14047","date":"2023-10-21","proceeding":null,"authors":["Chengwei Dai","Minxuan Lv","Kun Li","Wei Zhou"],"abstract":"We study model extraction attacks in natural language processing (NLP) where attackers aim to steal victim models by repeatedly querying the open Application Programming Interfaces (APIs). Recent works focus on limited-query budget settings and adopt random sampling or active learning-based sampling strategies on publicly available, unannotated data sources. However, these methods often result in selected queries that lack task relevance and data diversity, leading to limited success in achieving satisfactory results with low query costs. In this paper, we propose MeaeQ (Model extraction attack with efficient Queries), a straightforward yet effective method to address these issues. Specifically, we initially utilize a zero-shot sequence inference classifier, combined with API service information, to filter task-relevant data from a public text corpus instead of a problem domain-specific dataset. Furthermore, we employ a clustering-based data reduction technique to obtain representative data as queries for the attack. Extensive experiments conducted on four benchmark datasets demonstrate that MeaeQ achieves higher functional similarity to the victim model than baselines while requiring fewer queries. Our code is available at https://github.com/C-W-D/MeaeQ.","url_abs":"https://arxiv.org/abs/2310.14047v1","url_pdf":"https://arxiv.org/pdf/2310.14047v1.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":"meaeq-mount-model-extraction-attacks-with","repo_url":"https://github.com/c-w-d/meaeq","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"active-learning","task_name":"Active Learning"},{"task_slug":"diversity","task_name":"Diversity"},{"task_slug":"model-extraction","task_name":"Model extraction"}],"methods":[{"method_slug":"focus","method_name":"Focus"},{"method_slug":null,"method_name":null}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2310.14047","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2310.14047"}},"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/C-W-D/MeaeQ","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":5,"unverified":2},"by_repo_kind":{"official":{"samples":7,"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":0,"samples":[{"code_sha256_prefix":"1a594c7b9b550e5a","entry":"bert_config","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"utils/config.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/utils/config.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"1a594c7b9b550e5a"}},{"code_sha256_prefix":"97bc105d51edbfd3","entry":"roberta_config","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"utils/config.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/utils/config.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"97bc105d51edbfd3"}},{"code_sha256_prefix":"d55f86277b07ffd7","entry":"sentence_length_calculate","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"utils/tools.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/utils/tools.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d55f86277b07ffd7"}},{"code_sha256_prefix":"0bfbcd38797df955","entry":"to","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"utils/tools.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/utils/tools.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"0bfbcd38797df955"}},{"code_sha256_prefix":"8ea2da1113eabed8","entry":"to_var","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"utils/tools.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/utils/tools.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8ea2da1113eabed8"}},{"code_sha256_prefix":"dfba938414a5b52e","entry":"parse_arguments","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"utils/config.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/utils/config.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":true,"mcp_get_code":{"code_sha256":"dfba938414a5b52e"}},{"code_sha256_prefix":"12b751ebfad841d8","entry":"split_steal_data","repo":"C-W-D/MeaeQ","repo_kind":"official","path":"steal/model_steal/al_steal.py","file_url":"https://github.com/C-W-D/MeaeQ/blob/HEAD/steal/model_steal/al_steal.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":true,"mcp_get_code":{"code_sha256":"12b751ebfad841d8"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}