{"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/all-you-need-is-a-few-shifts-designing","title":"All You Need is a Few Shifts: Designing Efficient Convolutional Neural Networks for Image Classification","arxiv_id":"1903.05285","date":"2019-03-13","proceeding":"CVPR 2019 6","authors":["Wei-Jie Chen","Di Xie","Yuan Zhang","ShiLiang Pu"],"abstract":"Shift operation is an efficient alternative over depthwise separable\nconvolution. However, it is still bottlenecked by its implementation manner,\nnamely memory movement. To put this direction forward, a new and novel basic\ncomponent named Sparse Shift Layer (SSL) is introduced in this paper to\nconstruct efficient convolutional neural networks. In this family of\narchitectures, the basic block is only composed by 1x1 convolutional layers\nwith only a few shift operations applied to the intermediate feature maps. To\nmake this idea feasible, we introduce shift operation penalty during\noptimization and further propose a quantization-aware shift learning method to\nimpose the learned displacement more friendly for inference. Extensive ablation\nstudies indicate that only a few shift operations are sufficient to provide\nspatial information communication. Furthermore, to maximize the role of SSL, we\nredesign an improved network architecture to Fully Exploit the limited capacity\nof neural Network (FE-Net). Equipped with SSL, this network can achieve 75.0%\ntop-1 accuracy on ImageNet with only 563M M-Adds. It surpasses other\ncounterparts constructed by depthwise separable convolution and the networks\nsearched by NAS in terms of accuracy and practical speed.","url_abs":"http://arxiv.org/abs/1903.05285v1","url_pdf":"http://arxiv.org/pdf/1903.05285v1.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":"all-you-need-is-a-few-shifts-designing","repo_url":"https://github.com/hikvision-research/SparseShiftLayer","is_official":1,"mentioned_in_paper":0,"mentioned_in_github":0,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"all-you-need-is-a-few-shifts-designing","repo_url":"https://github.com/DeadAt0m/ActiveSparseShifts-PyTorch","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok"}},{"paper_slug":"all-you-need-is-a-few-shifts-designing","repo_url":"https://github.com/Eunhui-Kim/SSPQ","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[{"task_slug":"all","task_name":"All"},{"task_slug":"classification","task_name":"General Classification"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"quantization","task_name":"Quantization"},{"task_slug":"image-classification","task_name":"image-classification"}],"methods":[{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"depthwise-convolution","method_name":"Depthwise Convolution"},{"method_slug":"depthwise-separable-convolution","method_name":"Depthwise Separable Convolution"},{"method_slug":"pointwise-convolution","method_name":"Pointwise Convolution"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1903.05285","atlas_url":"https://app.syntology.ai/?focus=1903.05285","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1903.05285"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-25T09:33:49+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/Eunhui-Kim/SSPQ","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/DeadAt0m/ActiveSparseShifts-PyTorch","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hikvision-research/SparseShiftLayer","reach":{"status":"ok","spdx":"Apache-2.0"}}],"summary":{"ran":1,"ran_fixture":1,"ran_draft_wrong":1,"unverified":3},"by_repo_kind":{"official":{"samples":4,"ran":2,"repositories":1},"listed":{"samples":2,"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":"dc614005e85656ec","entry":"get_dorefa","repo":"Eunhui-Kim/SSPQ","repo_kind":"listed","path":"dorefa.py","file_url":"https://github.com/Eunhui-Kim/SSPQ/blob/HEAD/dorefa.py","link_basis":"harvester_set","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"dc614005e85656ec"}},{"code_sha256_prefix":"53613a740588d619","entry":"shear_x","repo":"hikvision-research/SparseShiftLayer","repo_kind":"official","path":"models/auto_augment.py","file_url":"https://github.com/hikvision-research/SparseShiftLayer/blob/HEAD/models/auto_augment.py","link_basis":"plan_row","language":"python","status":"ran_fixture","verification_level":1,"contract_check":"RAISES","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"53613a740588d619"}},{"code_sha256_prefix":"3e773c6c5bc796d4","entry":"transform_matrix_offset_center","repo":"hikvision-research/SparseShiftLayer","repo_kind":"official","path":"models/auto_augment.py","file_url":"https://github.com/hikvision-research/SparseShiftLayer/blob/HEAD/models/auto_augment.py","link_basis":"plan_row","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"MISDECLARED","metamorphic_tier":"invariant","behaviour_fingerprint":true,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"3e773c6c5bc796d4"}},{"code_sha256_prefix":"bdffd25e53ddbbaf","entry":"apply_policy","repo":"hikvision-research/SparseShiftLayer","repo_kind":"official","path":"models/auto_augment.py","file_url":"https://github.com/hikvision-research/SparseShiftLayer/blob/HEAD/models/auto_augment.py","link_basis":"plan_row","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":"bdffd25e53ddbbaf"}},{"code_sha256_prefix":"014d87639fcaa13f","entry":"get_logger","repo":"hikvision-research/SparseShiftLayer","repo_kind":"official","path":"utils.py","file_url":"https://github.com/hikvision-research/SparseShiftLayer/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":"014d87639fcaa13f"}},{"code_sha256_prefix":"6dc98ff502f4a19c","entry":"ternarize","repo":"Eunhui-Kim/SSPQ","repo_kind":"listed","path":"dorefa.py","file_url":"https://github.com/Eunhui-Kim/SSPQ/blob/HEAD/dorefa.py","link_basis":"harvester_set","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":"6dc98ff502f4a19c"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}