{"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/dverge-diversifying-vulnerabilities-for","title":"DVERGE: Diversifying Vulnerabilities for Enhanced Robust Generation of Ensembles","arxiv_id":"2009.14720","date":"2020-09-30","proceeding":"NeurIPS 2020 12","authors":["Huanrui Yang","Jingyang Zhang","Hongliang Dong","Nathan Inkawhich","Andrew Gardner","Andrew Touchet","Wesley Wilkes","Heath Berry","Hai Li"],"abstract":"Recent research finds CNN models for image classification demonstrate overlapped adversarial vulnerabilities: adversarial attacks can mislead CNN models with small perturbations, which can effectively transfer between different models trained on the same dataset. Adversarial training, as a general robustness improvement technique, eliminates the vulnerability in a single model by forcing it to learn robust features. The process is hard, often requires models with large capacity, and suffers from significant loss on clean data accuracy. Alternatively, ensemble methods are proposed to induce sub-models with diverse outputs against a transfer adversarial example, making the ensemble robust against transfer attacks even if each sub-model is individually non-robust. Only small clean accuracy drop is observed in the process. However, previous ensemble training methods are not efficacious in inducing such diversity and thus ineffective on reaching robust ensemble. We propose DVERGE, which isolates the adversarial vulnerability in each sub-model by distilling non-robust features, and diversifies the adversarial vulnerability to induce diverse outputs against a transfer attack. The novel diversity metric and training procedure enables DVERGE to achieve higher robustness against transfer attacks comparing to previous ensemble methods, and enables the improved robustness when more sub-models are added to the ensemble. The code of this work is available at https://github.com/zjysteven/DVERGE","url_abs":"https://arxiv.org/abs/2009.14720v2","url_pdf":"https://arxiv.org/pdf/2009.14720v2.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":"dverge-diversifying-vulnerabilities-for","repo_url":"https://github.com/zjysteven/DVERGE","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"dverge-diversifying-vulnerabilities-for","repo_url":"https://github.com/AI-secure/Transferability-Reduced-Smooth-Ensemble","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"dverge-diversifying-vulnerabilities-for","repo_url":"https://github.com/wang-axis/dna","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"diversity","task_name":"Diversity"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2009.14720","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2009.14720"}},"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/zjysteven/DVERGE","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/wang-axis/dna","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/AI-secure/Transferability-Reduced-Smooth-Ensemble","reach":null}],"summary":{"ran":3,"ran_draft_wrong":4,"unverified":3},"by_repo_kind":{"official":{"samples":6,"ran":4,"repositories":1},"listed":{"samples":4,"ran":3,"repositories":2}},"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":"274fc4c46ab787eb","entry":"DistillationLoader","repo":"zjysteven/DVERGE","repo_kind":"official","path":"train/train_dverge.py","file_url":"https://github.com/zjysteven/DVERGE/blob/HEAD/train/train_dverge.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":"274fc4c46ab787eb"}},{"code_sha256_prefix":"ccdb43ecb62325f2","entry":"Linf_PGD","repo":"zjysteven/DVERGE","repo_kind":"official","path":"train/train_dverge.py","file_url":"https://github.com/zjysteven/DVERGE/blob/HEAD/train/train_dverge.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"ccdb43ecb62325f2"}},{"code_sha256_prefix":"f0b48705cc770862","entry":"Linf_distillation","repo":"AI-secure/Transferability-Reduced-Smooth-Ensemble","repo_kind":"listed","path":"train/Empirical/trainer.py","file_url":"https://github.com/AI-secure/Transferability-Reduced-Smooth-Ensemble/blob/HEAD/train/Empirical/trainer.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":"f0b48705cc770862"}},{"code_sha256_prefix":"cb5a93af08487beb","entry":"distill_Linf","repo":"wang-axis/dna","repo_kind":"listed","path":"classifier_exp/train_dverge.py","file_url":"https://github.com/wang-axis/dna/blob/HEAD/classifier_exp/train_dverge.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"cb5a93af08487beb"}},{"code_sha256_prefix":"c5ea22297f8dcf56","entry":"gradient_wrt_feature","repo":"zjysteven/DVERGE","repo_kind":"official","path":"train/train_dverge.py","file_url":"https://github.com/zjysteven/DVERGE/blob/HEAD/train/train_dverge.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"c5ea22297f8dcf56"}},{"code_sha256_prefix":"ad88ce676167ef63","entry":"gradient_wrt_feature","repo":"AI-secure/Transferability-Reduced-Smooth-Ensemble","repo_kind":"listed","path":"train/Empirical/trainer.py","file_url":"https://github.com/AI-secure/Transferability-Reduced-Smooth-Ensemble/blob/HEAD/train/Empirical/trainer.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":"ad88ce676167ef63"}},{"code_sha256_prefix":"a7432682e97da06b","entry":"gradient_wrt_input","repo":"zjysteven/DVERGE","repo_kind":"official","path":"train/train_dverge.py","file_url":"https://github.com/zjysteven/DVERGE/blob/HEAD/train/train_dverge.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"a7432682e97da06b"}},{"code_sha256_prefix":"d19378549cbb9abf","entry":"DVERGE_Trainer","repo":"zjysteven/DVERGE","repo_kind":"official","path":"train/train_dverge.py","file_url":"https://github.com/zjysteven/DVERGE/blob/HEAD/train/train_dverge.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":"d19378549cbb9abf"}},{"code_sha256_prefix":"4f1b3d9905b319c5","entry":"DVERGE_Trainer","repo":"AI-secure/Transferability-Reduced-Smooth-Ensemble","repo_kind":"listed","path":"train/Empirical/trainer.py","file_url":"https://github.com/AI-secure/Transferability-Reduced-Smooth-Ensemble/blob/HEAD/train/Empirical/trainer.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":"4f1b3d9905b319c5"}},{"code_sha256_prefix":"d8b3cee6496f17c6","entry":"Linf_distillation","repo":"zjysteven/DVERGE","repo_kind":"official","path":"train/train_dverge.py","file_url":"https://github.com/zjysteven/DVERGE/blob/HEAD/train/train_dverge.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":"d8b3cee6496f17c6"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}