{"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/peeraid-improving-adversarial-distillation","title":"PeerAiD: Improving Adversarial Distillation from a Specialized Peer Tutor","arxiv_id":"2403.06668","date":"2024-03-11","proceeding":"CVPR 2024 1","authors":["Jaewon Jung","Hongsun Jang","Jaeyong Song","Jinho Lee"],"abstract":"Adversarial robustness of the neural network is a significant concern when it is applied to security-critical domains. In this situation, adversarial distillation is a promising option which aims to distill the robustness of the teacher network to improve the robustness of a small student network. Previous works pretrain the teacher network to make it robust against the adversarial examples aimed at itself. However, the adversarial examples are dependent on the parameters of the target network. The fixed teacher network inevitably degrades its robustness against the unseen transferred adversarial examples which target the parameters of the student network in the adversarial distillation process. We propose PeerAiD to make a peer network learn the adversarial examples of the student network instead of adversarial examples aimed at itself. PeerAiD is an adversarial distillation that trains the peer network and the student network simultaneously in order to specialize the peer network for defending the student network. We observe that such peer networks surpass the robustness of the pretrained robust teacher model against adversarial examples aimed at the student network. With this peer network and adversarial distillation, PeerAiD achieves significantly higher robustness of the student network with AutoAttack (AA) accuracy by up to 1.66%p and improves the natural accuracy of the student network by up to 4.72%p with ResNet-18 on TinyImageNet dataset. Code is available at https://github.com/jaewonalive/PeerAiD.","url_abs":"https://arxiv.org/abs/2403.06668v3","url_pdf":"https://arxiv.org/pdf/2403.06668v3.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":"peeraid-improving-adversarial-distillation","repo_url":"https://github.com/jaewonalive/peeraid","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"GPL-3.0"}}],"tasks":[{"task_slug":"adversarial-robustness","task_name":"Adversarial Robustness"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2403.06668","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2403.06668"}},"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/jaewonalive/peeraid","reach":{"status":"ok","spdx":"GPL-3.0"}},{"provenance":"deterministic:regex_extraction","url":"https://github.com/jaewonalive/PeerAiD","reach":{"status":"ok","spdx":"GPL-3.0"}}],"summary":{"ran":6,"ran_honours":1,"unverified":4},"by_repo_kind":{"official":{"samples":11,"ran":7,"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":11,"samples":[{"code_sha256_prefix":"2cde128a4ba0c4b0","entry":"LinfPeerAttack","repo":"jaewonalive/PeerAiD","repo_kind":"official","path":"attack_function.py","file_url":"https://github.com/jaewonalive/PeerAiD/blob/HEAD/attack_function.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"2cde128a4ba0c4b0"}},{"code_sha256_prefix":"e3684407a46e11eb","entry":"ResNet18","repo":"jaewonalive/peeraid","repo_kind":"official","path":"models/resnet.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/models/resnet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"e3684407a46e11eb"}},{"code_sha256_prefix":"d6b55f16ed793757","entry":"ResNet34","repo":"jaewonalive/peeraid","repo_kind":"official","path":"models/resnet.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/models/resnet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"d6b55f16ed793757"}},{"code_sha256_prefix":"650b60044e129f71","entry":"ResNet50","repo":"jaewonalive/peeraid","repo_kind":"official","path":"models/resnet.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/models/resnet.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"650b60044e129f71"}},{"code_sha256_prefix":"8b7cd4fa2cf72d2e","entry":"evaluate_adversary","repo":"jaewonalive/peeraid","repo_kind":"official","path":"attack_function.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/attack_function.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8b7cd4fa2cf72d2e"}},{"code_sha256_prefix":"171db828e58bdeb1","entry":"get_transform","repo":"jaewonalive/peeraid","repo_kind":"official","path":"datasets/datasets.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/datasets/datasets.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"171db828e58bdeb1"}},{"code_sha256_prefix":"f321f54723433661","entry":"pil_loader","repo":"jaewonalive/peeraid","repo_kind":"official","path":"robustbench/loaders.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/robustbench/loaders.py","link_basis":"harvester_set","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"f321f54723433661"}},{"code_sha256_prefix":"404fb2b2daa1ae78","entry":"accimage_loader","repo":"jaewonalive/peeraid","repo_kind":"official","path":"robustbench/loaders.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/robustbench/loaders.py","link_basis":"harvester_set","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"404fb2b2daa1ae78"}},{"code_sha256_prefix":"504291361960acd9","entry":"get_dataset","repo":"jaewonalive/peeraid","repo_kind":"official","path":"datasets/datasets.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/datasets/datasets.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"504291361960acd9"}},{"code_sha256_prefix":"8d9e76d7ac58c516","entry":"load_svhn","repo":"jaewonalive/peeraid","repo_kind":"official","path":"robustbench/data.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/robustbench/data.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"8d9e76d7ac58c516"}},{"code_sha256_prefix":"c4c57c3f5b63ae66","entry":"make_custom_dataset","repo":"jaewonalive/peeraid","repo_kind":"official","path":"robustbench/loaders.py","file_url":"https://github.com/jaewonalive/peeraid/blob/HEAD/robustbench/loaders.py","link_basis":"plan_row","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"GPL-3.0","inline_ok":false,"mcp_get_code":{"code_sha256":"c4c57c3f5b63ae66"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}