{"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/dataset-distillation-via-adversarial","title":"Dataset Distillation via Adversarial Prediction Matching","arxiv_id":"2312.08912","date":"2023-12-14","proceeding":null,"authors":["Mingyang Chen","Bo Huang","Junda Lu","Bing Li","Yi Wang","Minhao Cheng","Wei Wang"],"abstract":"Dataset distillation is the technique of synthesizing smaller condensed datasets from large original datasets while retaining necessary information to persist the effect. In this paper, we approach the dataset distillation problem from a novel perspective: we regard minimizing the prediction discrepancy on the real data distribution between models, which are respectively trained on the large original dataset and on the small distilled dataset, as a conduit for condensing information from the raw data into the distilled version. An adversarial framework is proposed to solve the problem efficiently. In contrast to existing distillation methods involving nested optimization or long-range gradient unrolling, our approach hinges on single-level optimization. This ensures the memory efficiency of our method and provides a flexible tradeoff between time and memory budgets, allowing us to distil ImageNet-1K using a minimum of only 6.5GB of GPU memory. Under the optimal tradeoff strategy, it requires only 2.5$\\times$ less memory and 5$\\times$ less runtime compared to the state-of-the-art. Empirically, our method can produce synthetic datasets just 10% the size of the original, yet achieve, on average, 94% of the test accuracy of models trained on the full original datasets including ImageNet-1K, significantly surpassing state-of-the-art. Additionally, extensive tests reveal that our distilled datasets excel in cross-architecture generalization capabilities.","url_abs":"https://arxiv.org/abs/2312.08912v1","url_pdf":"https://arxiv.org/pdf/2312.08912v1.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":"dataset-distillation-via-adversarial","repo_url":"https://github.com/mchen725/DD_APM","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}}],"tasks":[{"task_slug":"dataset-distillation","task_name":"Dataset Distillation"},{"task_slug":null,"task_name":"GPU"},{"task_slug":"prediction","task_name":"Prediction"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":null,"atlas_url":"https://app.syntology.ai/?focus=2312.08912","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2312.08912"}},"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/mchen725/DD_APM","reach":{"status":"ok"}}],"summary":{"ran":5,"ran_violates":1,"unverified":4},"by_repo_kind":{"official":{"samples":10,"ran":6,"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":10,"samples":[{"code_sha256_prefix":"190dfb67aacf4767","entry":"VGG11","repo":"mchen725/DD_APM","repo_kind":"official","path":"model_train/networks_train.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/model_train/networks_train.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"190dfb67aacf4767"}},{"code_sha256_prefix":"2a656ce9d92fa5c9","entry":"VGG11","repo":"mchen725/DD_APM","repo_kind":"official","path":"networks.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/networks.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"2a656ce9d92fa5c9"}},{"code_sha256_prefix":"6fa9b9b022f6dbfa","entry":"VGG11BN","repo":"mchen725/DD_APM","repo_kind":"official","path":"model_train/networks_train.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/model_train/networks_train.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6fa9b9b022f6dbfa"}},{"code_sha256_prefix":"57fc63ed1eff59ef","entry":"VGG11BN","repo":"mchen725/DD_APM","repo_kind":"official","path":"networks.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/networks.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"57fc63ed1eff59ef"}},{"code_sha256_prefix":"3da7c8c828c4f0af","entry":"VGG13","repo":"mchen725/DD_APM","repo_kind":"official","path":"model_train/networks_train.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/model_train/networks_train.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"3da7c8c828c4f0af"}},{"code_sha256_prefix":"6ba8cee9f5daea41","entry":"pair","repo":"mchen725/DD_APM","repo_kind":"official","path":"networks.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/networks.py","link_basis":"harvester_set","language":"python","status":"ran_violates","verification_level":1,"contract_check":"VIOLATES","metamorphic_tier":"well_formed","behaviour_fingerprint":true,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"6ba8cee9f5daea41"}},{"code_sha256_prefix":"64d02f5d7bdb507e","entry":"epoch","repo":"mchen725/DD_APM","repo_kind":"official","path":"model_train/utils_train.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/model_train/utils_train.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":"64d02f5d7bdb507e"}},{"code_sha256_prefix":"5bc5731862f0ff1c","entry":"epoch","repo":"mchen725/DD_APM","repo_kind":"official","path":"utils.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/utils.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":"5bc5731862f0ff1c"}},{"code_sha256_prefix":"d4fd7dddaa5832f7","entry":"get_dataset","repo":"mchen725/DD_APM","repo_kind":"official","path":"model_train/utils_train.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/model_train/utils_train.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":"d4fd7dddaa5832f7"}},{"code_sha256_prefix":"08f5583a762e7e3f","entry":"get_dataset","repo":"mchen725/DD_APM","repo_kind":"official","path":"utils.py","file_url":"https://github.com/mchen725/DD_APM/blob/HEAD/utils.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":"08f5583a762e7e3f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}