{"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/ecc-energy-constrained-deep-neural-network","title":"ECC: Platform-Independent Energy-Constrained Deep Neural Network Compression via a Bilinear Regression Model","arxiv_id":"1812.01803","date":"2018-12-05","proceeding":"CVPR 2019 6","authors":["Haichuan Yang","Yuhao Zhu","Ji Liu"],"abstract":"Many DNN-enabled vision applications constantly operate under severe energy\nconstraints such as unmanned aerial vehicles, Augmented Reality headsets, and\nsmartphones. Designing DNNs that can meet a stringent energy budget is becoming\nincreasingly important. This paper proposes ECC, a framework that compresses\nDNNs to meet a given energy constraint while minimizing accuracy loss. The key\nidea of ECC is to model the DNN energy consumption via a novel bilinear\nregression function. The energy estimate model allows us to formulate DNN\ncompression as a constrained optimization that minimizes the DNN loss function\nover the energy constraint. The optimization problem, however, has nontrivial\nconstraints. Therefore, existing deep learning solvers do not apply directly.\nWe propose an optimization algorithm that combines the essence of the\nAlternating Direction Method of Multipliers (ADMM) framework with\ngradient-based learning algorithms. The algorithm decomposes the original\nconstrained optimization into several subproblems that are solved iteratively\nand efficiently. ECC is also portable across different hardware platforms\nwithout requiring hardware knowledge. Experiments show that ECC achieves higher\naccuracy under the same or lower energy budget compared to state-of-the-art\nresource-constrained DNN compression techniques.","url_abs":"http://arxiv.org/abs/1812.01803v3","url_pdf":"http://arxiv.org/pdf/1812.01803v3.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":"ecc-energy-constrained-deep-neural-network","repo_url":"https://github.com/hyang1990/energy_constrained_compression","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}},{"paper_slug":"ecc-energy-constrained-deep-neural-network","repo_url":"https://github.com/zhanhuijing/ECC_PYCHARM","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":null}],"tasks":[{"task_slug":"neural-network-compression","task_name":"Neural Network Compression"},{"task_slug":"regression-1","task_name":"regression"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1812.01803","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1812.01803"}},"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/zhanhuijing/ECC_PYCHARM","reach":null},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/hyang1990/energy_constrained_compression","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran_draft_wrong":1,"ran_honours":1,"unverified":13},"by_repo_kind":{"listed":{"samples":15,"ran":2,"repositories":2}},"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":"834a15408eff8330","entry":"filter_projection_common","repo":"zhanhuijing/ECC_PYCHARM","repo_kind":"listed","path":"net_adapt.py","file_url":"https://github.com/zhanhuijing/ECC_PYCHARM/blob/HEAD/net_adapt.py","link_basis":"first_harvest_node","language":"python","status":"ran_draft_wrong","verification_level":1,"contract_check":"OUTPUT_MISDECLARED","metamorphic_tier":"deterministic","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"834a15408eff8330"}},{"code_sha256_prefix":"058ec3591d32f963","entry":"model_based_energy_estimator","repo":"zhanhuijing/ECC_PYCHARM","repo_kind":"listed","path":"net_adapt.py","file_url":"https://github.com/zhanhuijing/ECC_PYCHARM/blob/HEAD/net_adapt.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":"well_formed","behaviour_fingerprint":false,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"058ec3591d32f963"}},{"code_sha256_prefix":"d14afb7ffcad6298","entry":"check_idle_gpu","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"misc.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/misc.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":"d14afb7ffcad6298"}},{"code_sha256_prefix":"cdf00853efe6f5b0","entry":"choose_num_filters","repo":"zhanhuijing/ECC_PYCHARM","repo_kind":"listed","path":"net_adapt.py","file_url":"https://github.com/zhanhuijing/ECC_PYCHARM/blob/HEAD/net_adapt.py","link_basis":"first_harvest_node","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":"cdf00853efe6f5b0"}},{"code_sha256_prefix":"57446e55a345c5b8","entry":"class_balance_holdout","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"57446e55a345c5b8"}},{"code_sha256_prefix":"499fe8a6c2dba2f4","entry":"customized_erfnet","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"erfnet_cp.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/erfnet_cp.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":"499fe8a6c2dba2f4"}},{"code_sha256_prefix":"e52770fc4d56633a","entry":"erfnet","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"erfnet_cp.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/erfnet_cp.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":"e52770fc4d56633a"}},{"code_sha256_prefix":"36b40f1824fd9d01","entry":"hold_gpu","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"misc.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/misc.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":"36b40f1824fd9d01"}},{"code_sha256_prefix":"48024d1a7659869b","entry":"is_image","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"cityscapes.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/cityscapes.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":"48024d1a7659869b"}},{"code_sha256_prefix":"8021631fe7e194d3","entry":"is_label","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"cityscapes.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/cityscapes.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":"8021631fe7e194d3"}},{"code_sha256_prefix":"1c803ce4388e0644","entry":"load_image","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"cityscapes.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/cityscapes.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":"1c803ce4388e0644"}},{"code_sha256_prefix":"5546eb177277a59a","entry":"load_obj","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5546eb177277a59a"}},{"code_sha256_prefix":"06f17188ba319e44","entry":"load_pickle","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"misc.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/misc.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":"06f17188ba319e44"}},{"code_sha256_prefix":"340c3344f5e5621d","entry":"myalexnet","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"pt_models.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/blob/HEAD/pt_models.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":"340c3344f5e5621d"}},{"code_sha256_prefix":"5553a550e4175097","entry":"simple_random_holdout","repo":"hyang1990/energy_constrained_compression","repo_kind":"listed","path":"utils.py","file_url":"https://github.com/hyang1990/energy_constrained_compression/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":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"5553a550e4175097"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}