{"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/190600001","title":"Functional Adversarial Attacks","arxiv_id":"1906.00001","date":"2019-05-29","proceeding":"NeurIPS 2019 12","authors":["Cassidy Laidlaw","Soheil Feizi"],"abstract":"We propose functional adversarial attacks, a novel class of threat models for crafting adversarial examples to fool machine learning models. Unlike a standard $\\ell_p$-ball threat model, a functional adversarial threat model allows only a single function to be used to perturb input features to produce an adversarial example. For example, a functional adversarial attack applied on colors of an image can change all red pixels simultaneously to light red. Such global uniform changes in images can be less perceptible than perturbing pixels of the image individually. For simplicity, we refer to functional adversarial attacks on image colors as ReColorAdv, which is the main focus of our experiments. We show that functional threat models can be combined with existing additive ($\\ell_p$) threat models to generate stronger threat models that allow both small, individual perturbations and large, uniform changes to an input. Moreover, we prove that such combinations encompass perturbations that would not be allowed in either constituent threat model. In practice, ReColorAdv can significantly reduce the accuracy of a ResNet-32 trained on CIFAR-10. Furthermore, to the best of our knowledge, combining ReColorAdv with other attacks leads to the strongest existing attack even after adversarial training. An implementation of ReColorAdv is available at https://github.com/cassidylaidlaw/ReColorAdv .","url_abs":"https://arxiv.org/abs/1906.00001v2","url_pdf":"https://arxiv.org/pdf/1906.00001v2.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":"190600001","repo_url":"https://github.com/cassidylaidlaw/ReColorAdv","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"adversarial-attack","task_name":"Adversarial Attack"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1906.00001","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1906.00001"}},"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/cassidylaidlaw/ReColorAdv","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":4,"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":0,"samples":[{"code_sha256_prefix":"00e569acd6b45ef0","entry":"conv3x3","repo":"cassidylaidlaw/ReColorAdv","repo_kind":"official","path":"recoloradv/mister_ed/cifar10/wide_resnets.py","file_url":"https://github.com/cassidylaidlaw/ReColorAdv/blob/HEAD/recoloradv/mister_ed/cifar10/wide_resnets.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"00e569acd6b45ef0"}},{"code_sha256_prefix":"91d7bc7a3a0b6451","entry":"initialized","repo":"cassidylaidlaw/ReColorAdv","repo_kind":"official","path":"recoloradv/mister_ed/adversarial_perturbations.py","file_url":"https://github.com/cassidylaidlaw/ReColorAdv/blob/HEAD/recoloradv/mister_ed/adversarial_perturbations.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"91d7bc7a3a0b6451"}},{"code_sha256_prefix":"6ab4994a7dd8a448","entry":"path_resolver","repo":"cassidylaidlaw/ReColorAdv","repo_kind":"official","path":"recoloradv/mister_ed/config.py","file_url":"https://github.com/cassidylaidlaw/ReColorAdv/blob/HEAD/recoloradv/mister_ed/config.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6ab4994a7dd8a448"}},{"code_sha256_prefix":"6bfe60f8b0ab0fa1","entry":"smoothness","repo":"cassidylaidlaw/ReColorAdv","repo_kind":"official","path":"recoloradv/norms.py","file_url":"https://github.com/cassidylaidlaw/ReColorAdv/blob/HEAD/recoloradv/norms.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"6bfe60f8b0ab0fa1"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}