{"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/truly-shift-invariant-convolutional-neural","title":"Truly shift-invariant convolutional neural networks","arxiv_id":"2011.14214","date":"2020-11-28","proceeding":"CVPR 2021 1","authors":["Anadi Chaman","Ivan Dokmanić"],"abstract":"Thanks to the use of convolution and pooling layers, convolutional neural networks were for a long time thought to be shift-invariant. However, recent works have shown that the output of a CNN can change significantly with small shifts in input: a problem caused by the presence of downsampling (stride) layers. The existing solutions rely either on data augmentation or on anti-aliasing, both of which have limitations and neither of which enables perfect shift invariance. Additionally, the gains obtained from these methods do not extend to image patterns not seen during training. To address these challenges, we propose adaptive polyphase sampling (APS), a simple sub-sampling scheme that allows convolutional neural networks to achieve 100% consistency in classification performance under shifts, without any loss in accuracy. With APS, the networks exhibit perfect consistency to shifts even before training, making it the first approach that makes convolutional neural networks truly shift-invariant.","url_abs":"https://arxiv.org/abs/2011.14214v4","url_pdf":"https://arxiv.org/pdf/2011.14214v4.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":"truly-shift-invariant-convolutional-neural","repo_url":"https://github.com/achaman2/truly_shift_invariant_cnns","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"truly-shift-invariant-convolutional-neural","repo_url":"https://github.com/hmichaeli/alias_free_convnets","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"data-augmentation","task_name":"Data Augmentation"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2011.14214","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2011.14214"}},"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/hmichaeli/alias_free_convnets","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/achaman2/truly_shift_invariant_cnns","reach":null}],"summary":{"ran_draft_wrong":1,"ran_fixture":2},"by_repo_kind":{"official":{"samples":2,"ran":2,"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":3,"samples":[{"code_sha256_prefix":"d9def42110729a85","entry":"conv1x1","repo":null,"repo_kind":null,"path":null,"file_url":null,"link_basis":"identical_code_first_harvested_elsewhere","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":null,"inline_ok":false,"mcp_get_code":{"code_sha256":"d9def42110729a85"}},{"code_sha256_prefix":"f734ec7afc068e1c","entry":"evaluate_save_unshifted","repo":"achaman2/truly_shift_invariant_cnns","repo_kind":"official","path":"equivariant_unet_training/mri_reconstruction/main_mri.py","file_url":"https://github.com/achaman2/truly_shift_invariant_cnns/blob/HEAD/equivariant_unet_training/mri_reconstruction/main_mri.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"f734ec7afc068e1c"}},{"code_sha256_prefix":"0c7672591c73fd86","entry":"validate_loss","repo":"achaman2/truly_shift_invariant_cnns","repo_kind":"official","path":"equivariant_unet_training/mri_reconstruction/main_mri.py","file_url":"https://github.com/achaman2/truly_shift_invariant_cnns/blob/HEAD/equivariant_unet_training/mri_reconstruction/main_mri.py","link_basis":"first_harvest_node","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"NONE","inline_ok":false,"mcp_get_code":{"code_sha256":"0c7672591c73fd86"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}