{"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/shift-a-zero-flop-zero-parameter-alternative","title":"Shift: A Zero FLOP, Zero Parameter Alternative to Spatial Convolutions","arxiv_id":"1711.08141","date":"2017-11-22","proceeding":"CVPR 2018 6","authors":["Bichen Wu","Alvin Wan","Xiangyu Yue","Peter Jin","Sicheng Zhao","Noah Golmant","Amir Gholaminejad","Joseph Gonzalez","Kurt Keutzer"],"abstract":"Neural networks rely on convolutions to aggregate spatial information.\nHowever, spatial convolutions are expensive in terms of model size and\ncomputation, both of which grow quadratically with respect to kernel size. In\nthis paper, we present a parameter-free, FLOP-free \"shift\" operation as an\nalternative to spatial convolutions. We fuse shifts and point-wise convolutions\nto construct end-to-end trainable shift-based modules, with a hyperparameter\ncharacterizing the tradeoff between accuracy and efficiency. To demonstrate the\noperation's efficacy, we replace ResNet's 3x3 convolutions with shift-based\nmodules for improved CIFAR10 and CIFAR100 accuracy using 60% fewer parameters;\nwe additionally demonstrate the operation's resilience to parameter reduction\non ImageNet, outperforming ResNet family members. We finally show the shift\noperation's applicability across domains, achieving strong performance with\nfewer parameters on classification, face verification and style transfer.","url_abs":"http://arxiv.org/abs/1711.08141v2","url_pdf":"http://arxiv.org/pdf/1711.08141v2.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":"shift-a-zero-flop-zero-parameter-alternative","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":"shift-a-zero-flop-zero-parameter-alternative","repo_url":"https://github.com/alvinwan/shiftresnet-cifar","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}}],"tasks":[{"task_slug":"face-verification","task_name":"Face Verification"},{"task_slug":"image-classification","task_name":"Image Classification"},{"task_slug":"style-transfer","task_name":"Style Transfer"}],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"average-pooling","method_name":"Average Pooling"},{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"bottleneck-residual-block","method_name":"Bottleneck Residual Block"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"global-average-pooling","method_name":"Global Average Pooling"},{"method_slug":"kaiming-initialization","method_name":"Kaiming Initialization"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"residual-block","method_name":"Residual Block"},{"method_slug":"residual-connection","method_name":"Residual Connection"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1711.08141","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}