{"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/one-pixel-shortcut-on-the-learning-preference","title":"One-Pixel Shortcut: on the Learning Preference of Deep Neural Networks","arxiv_id":"2205.12141","date":"2022-05-24","proceeding":null,"authors":["Shutong Wu","Sizhe Chen","Cihang Xie","Xiaolin Huang"],"abstract":"Unlearnable examples (ULEs) aim to protect data from unauthorized usage for training DNNs. Existing work adds $\\ell_\\infty$-bounded perturbations to the original sample so that the trained model generalizes poorly. Such perturbations, however, are easy to eliminate by adversarial training and data augmentations. In this paper, we resolve this problem from a novel perspective by perturbing only one pixel in each image. Interestingly, such a small modification could effectively degrade model accuracy to almost an untrained counterpart. Moreover, our produced \\emph{One-Pixel Shortcut (OPS)} could not be erased by adversarial training and strong augmentations. To generate OPS, we perturb in-class images at the same position to the same target value that could mostly and stably deviate from all the original images. Since such generation is only based on images, OPS needs significantly less computation cost than the previous methods using DNN generators. Based on OPS, we introduce an unlearnable dataset called CIFAR-10-S, which is indistinguishable from CIFAR-10 by humans but induces the trained model to extremely low accuracy. Even under adversarial training, a ResNet-18 trained on CIFAR-10-S has only 10.61% accuracy, compared to 83.02% by the existing error-minimizing method.","url_abs":"https://arxiv.org/abs/2205.12141v2","url_pdf":"https://arxiv.org/pdf/2205.12141v2.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":"one-pixel-shortcut-on-the-learning-preference","repo_url":"https://github.com/cychomatica/one-pixel-shotcut","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"data-augmentation","task_name":"Data Augmentation"}],"methods":[{"method_slug":"randaugment","method_name":"RandAugment"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2205.12141","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2205.12141"}},"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/cychomatica/one-pixel-shotcut","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran_draft_wrong":2,"ran":1,"ran_fixture":1,"unverified":14},"by_repo_kind":{"official":{"samples":18,"ran":4,"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":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/WideResNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/WideResNet.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":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"00e569acd6b45ef0"}},{"code_sha256_prefix":"ac62432dc5134b0d","entry":"make_layers","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/VGG.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/VGG.py","link_basis":"harvester_set","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":"ac62432dc5134b0d"}},{"code_sha256_prefix":"97f484048ac03556","entry":"mixup_criterion","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"augmentation/Mixup.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/augmentation/Mixup.py","link_basis":"harvester_set","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"97f484048ac03556"}},{"code_sha256_prefix":"8897714b1e9b6396","entry":"mixup_data","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"augmentation/Mixup.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/augmentation/Mixup.py","link_basis":"harvester_set","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8897714b1e9b6396"}},{"code_sha256_prefix":"a2b0fd19f9050594","entry":"Densenet121","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/DenseNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/DenseNet.py","link_basis":"harvester_set","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":"a2b0fd19f9050594"}},{"code_sha256_prefix":"020eefbf270b4c86","entry":"Densenet169","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/DenseNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/DenseNet.py","link_basis":"harvester_set","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":"020eefbf270b4c86"}},{"code_sha256_prefix":"85e9b46978ad9fdc","entry":"Densenet201","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/DenseNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/DenseNet.py","link_basis":"harvester_set","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":"85e9b46978ad9fdc"}},{"code_sha256_prefix":"ff9d88e7227f5564","entry":"ResNet18","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/ResNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/ResNet.py","link_basis":"harvester_set","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":"ff9d88e7227f5564"}},{"code_sha256_prefix":"ca1d217d7ca5ddf4","entry":"ResNet34","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/ResNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/ResNet.py","link_basis":"harvester_set","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":"ca1d217d7ca5ddf4"}},{"code_sha256_prefix":"71455bb26f47a8a0","entry":"ResNet50","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/ResNet.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/ResNet.py","link_basis":"harvester_set","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":"71455bb26f47a8a0"}},{"code_sha256_prefix":"e4759822cc516831","entry":"VGG11","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/VGG.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/VGG.py","link_basis":"harvester_set","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":"e4759822cc516831"}},{"code_sha256_prefix":"885b135d492f1a82","entry":"VGG13","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"model/VGG.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/model/VGG.py","link_basis":"harvester_set","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":"885b135d492f1a82"}},{"code_sha256_prefix":"042cdc9057142cfc","entry":"load_cifar100_data","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"utils.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/utils.py","link_basis":"harvester_set","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":"042cdc9057142cfc"}},{"code_sha256_prefix":"b1ebcb3950081b8d","entry":"load_cifar10_data","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"utils.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/utils.py","link_basis":"harvester_set","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":"b1ebcb3950081b8d"}},{"code_sha256_prefix":"cc3a82b123fab81e","entry":"mixup_step","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"augmentation/Mixup.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/augmentation/Mixup.py","link_basis":"harvester_set","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":"cc3a82b123fab81e"}},{"code_sha256_prefix":"6d2cddc06920551f","entry":"net_param_diff_norm","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"utils.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/utils.py","link_basis":"harvester_set","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":"6d2cddc06920551f"}},{"code_sha256_prefix":"7c22627ec0aafc3a","entry":"pixel_search","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"perturb.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/perturb.py","link_basis":"harvester_set","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":"7c22627ec0aafc3a"}},{"code_sha256_prefix":"6613eec4ec10b472","entry":"step","repo":"cychomatica/one-pixel-shotcut","repo_kind":"official","path":"training.py","file_url":"https://github.com/cychomatica/one-pixel-shotcut/blob/HEAD/training.py","link_basis":"harvester_set","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":"6613eec4ec10b472"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}