{"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/faster-cnns-with-direct-sparse-convolutions","title":"Faster CNNs with Direct Sparse Convolutions and Guided Pruning","arxiv_id":"1608.01409","date":"2016-08-04","proceeding":null,"authors":["Jongsoo Park","Sheng Li","Wei Wen","Ping Tak Peter Tang","Hai Li","Yiran Chen","Pradeep Dubey"],"abstract":"Phenomenally successful in practical inference problems, convolutional neural\nnetworks (CNN) are widely deployed in mobile devices, data centers, and even\nsupercomputers. The number of parameters needed in CNNs, however, are often\nlarge and undesirable. Consequently, various methods have been developed to\nprune a CNN once it is trained. Nevertheless, the resulting CNNs offer limited\nbenefits. While pruning the fully connected layers reduces a CNN's size\nconsiderably, it does not improve inference speed noticeably as the compute\nheavy parts lie in convolutions. Pruning CNNs in a way that increase inference\nspeed often imposes specific sparsity structures, thus limiting the achievable\nsparsity levels.\n  We present a method to realize simultaneously size economy and speed\nimprovement while pruning CNNs. Paramount to our success is an efficient\ngeneral sparse-with-dense matrix multiplication implementation that is\napplicable to convolution of feature maps with kernels of arbitrary sparsity\npatterns. Complementing this, we developed a performance model that predicts\nsweet spots of sparsity levels for different layers and on different computer\narchitectures. Together, these two allow us to demonstrate 3.1--7.3$\\times$\nconvolution speedups over dense convolution in AlexNet, on Intel Atom, Xeon,\nand Xeon Phi processors, spanning the spectrum from mobile devices to\nsupercomputers. We also open source our project at\nhttps://github.com/IntelLabs/SkimCaffe.","url_abs":"http://arxiv.org/abs/1608.01409v5","url_pdf":"http://arxiv.org/pdf/1608.01409v5.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":"faster-cnns-with-direct-sparse-convolutions","repo_url":"https://github.com/IntelLabs/SkimCaffe","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"gone","observed_at":"2026-09-18","how":"tree_404+repo_404"}}],"tasks":[],"methods":[{"method_slug":"1x1-convolution","method_name":"1x1 Convolution"},{"method_slug":"convolution","method_name":"Convolution"},{"method_slug":"dense-connections","method_name":"Dense Connections"},{"method_slug":"dropout","method_name":"Dropout"},{"method_slug":"grouped-convolution","method_name":"Grouped Convolution"},{"method_slug":"local-response-normalization","method_name":"Local Response Normalization"},{"method_slug":"max-pooling","method_name":"Max Pooling"},{"method_slug":"relu","method_name":"ReLU"},{"method_slug":"speed","method_name":"SPEED"},{"method_slug":"softmax","method_name":"Softmax"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1608.01409","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}