{"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/concept-activation-regions-a-generalized","title":"Concept Activation Regions: A Generalized Framework For Concept-Based Explanations","arxiv_id":"2209.11222","date":"2022-09-22","proceeding":null,"authors":["Jonathan Crabbé","Mihaela van der Schaar"],"abstract":"Concept-based explanations permit to understand the predictions of a deep neural network (DNN) through the lens of concepts specified by users. Existing methods assume that the examples illustrating a concept are mapped in a fixed direction of the DNN's latent space. When this holds true, the concept can be represented by a concept activation vector (CAV) pointing in that direction. In this work, we propose to relax this assumption by allowing concept examples to be scattered across different clusters in the DNN's latent space. Each concept is then represented by a region of the DNN's latent space that includes these clusters and that we call concept activation region (CAR). To formalize this idea, we introduce an extension of the CAV formalism that is based on the kernel trick and support vector classifiers. This CAR formalism yields global concept-based explanations and local concept-based feature importance. We prove that CAR explanations built with radial kernels are invariant under latent space isometries. In this way, CAR assigns the same explanations to latent spaces that have the same geometry. We further demonstrate empirically that CARs offer (1) more accurate descriptions of how concepts are scattered in the DNN's latent space; (2) global explanations that are closer to human concept annotations and (3) concept-based feature importance that meaningfully relate concepts with each other. Finally, we use CARs to show that DNNs can autonomously rediscover known scientific concepts, such as the prostate cancer grading system.","url_abs":"https://arxiv.org/abs/2209.11222v2","url_pdf":"https://arxiv.org/pdf/2209.11222v2.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":"concept-activation-regions-a-generalized","repo_url":"https://github.com/jonathancrabbe/cars","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":null},{"paper_slug":"concept-activation-regions-a-generalized","repo_url":"https://github.com/vanderschaarlab/cars","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"ok","spdx":"Apache-2.0"}}],"tasks":[{"task_slug":"feature-importance","task_name":"Feature Importance"}],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=2209.11222","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"2209.11222"}},"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/vanderschaarlab/CARs","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/vanderschaarlab/cars","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/jonathancrabbe/cars","reach":null}],"summary":{"ran":1,"unverified":6},"by_repo_kind":{"official":{"samples":7,"ran":1,"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":"5147ca73eac1472f","entry":"CAR","repo":"jonathancrabbe/cars","repo_kind":"official","path":"explanations/concept.py","file_url":"https://github.com/jonathancrabbe/cars/blob/HEAD/explanations/concept.py","link_basis":"first_harvest_node","language":"python","status":"ran","verification_level":1,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"5147ca73eac1472f"}},{"code_sha256_prefix":"dcc35eab5bab9ae3","entry":"ConceptExplainer","repo":"jonathancrabbe/cars","repo_kind":"official","path":"explanations/concept.py","file_url":"https://github.com/jonathancrabbe/cars/blob/HEAD/explanations/concept.py","link_basis":"first_harvest_node","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":"dcc35eab5bab9ae3"}},{"code_sha256_prefix":"84c29fef946ee046","entry":"generate_mnist_concept_dataset","repo":"vanderschaarlab/CARs","repo_kind":"official","path":"src/cars/utils/dataset.py","file_url":"https://github.com/vanderschaarlab/CARs/blob/HEAD/src/cars/utils/dataset.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":"84c29fef946ee046"}},{"code_sha256_prefix":"469a0e6c079bb107","entry":"get_dataloader","repo":"vanderschaarlab/CARs","repo_kind":"official","path":"src/cars/models/mnist.py","file_url":"https://github.com/vanderschaarlab/CARs/blob/HEAD/src/cars/models/mnist.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":"469a0e6c079bb107"}},{"code_sha256_prefix":"3c0bdb3ee24fc417","entry":"handle_integer_input","repo":"vanderschaarlab/CARs","repo_kind":"official","path":"src/cars/models/mnist.py","file_url":"https://github.com/vanderschaarlab/CARs/blob/HEAD/src/cars/models/mnist.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":"3c0bdb3ee24fc417"}},{"code_sha256_prefix":"94c74e147491e689","entry":"load_cub_data","repo":"vanderschaarlab/CARs","repo_kind":"official","path":"src/cars/utils/dataset.py","file_url":"https://github.com/vanderschaarlab/CARs/blob/HEAD/src/cars/utils/dataset.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":"94c74e147491e689"}},{"code_sha256_prefix":"46ff66ae7e7ac875","entry":"load_mnist","repo":"vanderschaarlab/CARs","repo_kind":"official","path":"src/cars/models/mnist.py","file_url":"https://github.com/vanderschaarlab/CARs/blob/HEAD/src/cars/models/mnist.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":"46ff66ae7e7ac875"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}