{"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/energy-based-concept-bottleneck-models","title":"Energy-Based Concept Bottleneck Models: Unifying Prediction, Concept Intervention, and Probabilistic Interpretations","arxiv_id":"2401.14142","date":"2024-01-25","proceeding":null,"authors":["Xinyue Xu","Yi Qin","Lu Mi","Hao Wang","Xiaomeng Li"],"abstract":"Existing methods, such as concept bottleneck models (CBMs), have been successful in providing concept-based interpretations for black-box deep learning models. They typically work by predicting concepts given the input and then predicting the final class label given the predicted concepts. However, (1) they often fail to capture the high-order, nonlinear interaction between concepts, e.g., correcting a predicted concept (e.g., \"yellow breast\") does not help correct highly correlated concepts (e.g., \"yellow belly\"), leading to suboptimal final accuracy; (2) they cannot naturally quantify the complex conditional dependencies between different concepts and class labels (e.g., for an image with the class label \"Kentucky Warbler\" and a concept \"black bill\", what is the probability that the model correctly predicts another concept \"black crown\"), therefore failing to provide deeper insight into how a black-box model works. In response to these limitations, we propose Energy-based Concept Bottleneck Models (ECBMs). Our ECBMs use a set of neural networks to define the joint energy of candidate (input, concept, class) tuples. With such a unified interface, prediction, concept correction, and conditional dependency quantification are then represented as conditional probabilities, which are generated by composing different energy functions. Our ECBMs address both limitations of existing CBMs, providing higher accuracy and richer concept interpretations. Empirical results show that our approach outperforms the state-of-the-art on real-world datasets.","url_abs":"https://arxiv.org/abs/2401.14142v4","url_pdf":"https://arxiv.org/pdf/2401.14142v4.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":"energy-based-concept-bottleneck-models","repo_url":"https://github.com/xmed-lab/ecbm","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"MIT"}}],"tasks":[],"methods":[{"method_slug":"set","method_name":"SET"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2401.14142","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2401.14142"}},"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":"deterministic:regex_extraction","url":"https://github.com/xmed-lab/ECBM","reach":{"status":"ok","spdx":"MIT"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/xmed-lab/ecbm","reach":{"status":"ok","spdx":"MIT"}}],"summary":{"ran":3,"ran_honours":1,"unverified":2},"by_repo_kind":{"official":{"samples":6,"ran":4,"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":"d4836cd0b787f61c","entry":"EBM_GL","repo":"xmed-lab/ecbm","repo_kind":"official","path":"networks/EBM.py","file_url":"https://github.com/xmed-lab/ecbm/blob/HEAD/networks/EBM.py","link_basis":"first_harvest_node","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":"d4836cd0b787f61c"}},{"code_sha256_prefix":"bc430b88a51bc525","entry":"ResNetBottom","repo":"xmed-lab/ecbm","repo_kind":"official","path":"networks/EBM.py","file_url":"https://github.com/xmed-lab/ecbm/blob/HEAD/networks/EBM.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"bc430b88a51bc525"}},{"code_sha256_prefix":"d19726f0ca1a2e19","entry":"ResNetTop","repo":"xmed-lab/ecbm","repo_kind":"official","path":"networks/EBM.py","file_url":"https://github.com/xmed-lab/ecbm/blob/HEAD/networks/EBM.py","link_basis":"first_harvest_node","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":"d19726f0ca1a2e19"}},{"code_sha256_prefix":"710be94a4122a187","entry":"generate_random_numbers","repo":"xmed-lab/ecbm","repo_kind":"official","path":"networks/EBM.py","file_url":"https://github.com/xmed-lab/ecbm/blob/HEAD/networks/EBM.py","link_basis":"first_harvest_node","language":"python","status":"ran_honours","verification_level":1,"contract_check":"HONOURS","metamorphic_tier":null,"behaviour_fingerprint":true,"licence":"MIT","inline_ok":true,"mcp_get_code":{"code_sha256":"710be94a4122a187"}},{"code_sha256_prefix":"bcc9fc81be7ba6df","entry":"ECBM","repo":"xmed-lab/ecbm","repo_kind":"official","path":"networks/EBM.py","file_url":"https://github.com/xmed-lab/ecbm/blob/HEAD/networks/EBM.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":"bcc9fc81be7ba6df"}},{"code_sha256_prefix":"8a4f096d83b8f90f","entry":"get_model","repo":"xmed-lab/ecbm","repo_kind":"official","path":"networks/EBM.py","file_url":"https://github.com/xmed-lab/ecbm/blob/HEAD/networks/EBM.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":"8a4f096d83b8f90f"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}