<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.3 20210610//EN" "JATS-journalpublishing1-3-mathml3.dtd">
<article xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ali="http://www.niso.org/schemas/ali/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" dtd-version="1.3" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Artif. Intell.</journal-id>
<journal-title-group>
<journal-title>Frontiers in Artificial Intelligence</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Artif. Intell.</abbrev-journal-title>
</journal-title-group>
<issn pub-type="epub">2624-8212</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/frai.2025.1759000</article-id>
<article-version article-version-type="Version of Record" vocab="NISO-RP-8-2008"/>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Original Research</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>A framework for causal concept-based model explanations</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name><surname>Bj&#x000F8;ru</surname> <given-names>Anna Rodum</given-names></name>
<xref ref-type="aff" rid="aff1"/>
<xref ref-type="corresp" rid="c001"><sup>&#x0002A;</sup></xref>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Formal analysis" vocab-term-identifier="https://credit.niso.org/contributor-roles/formal-analysis/">Formal analysis</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Methodology" vocab-term-identifier="https://credit.niso.org/contributor-roles/methodology/">Methodology</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Validation" vocab-term-identifier="https://credit.niso.org/contributor-roles/validation/">Validation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Project administration" vocab-term-identifier="https://credit.niso.org/contributor-roles/project-administration/">Project administration</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Investigation" vocab-term-identifier="https://credit.niso.org/contributor-roles/investigation/">Investigation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Software" vocab-term-identifier="https://credit.niso.org/contributor-roles/software/">Software</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &amp; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-review-editing/">Writing &#x2013; review &#x00026; editing</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Conceptualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/conceptualization/">Conceptualization</role>
<uri xlink:href="https://loop.frontiersin.org/people/3301784"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Lysn&#x000E6;s-Larsen</surname> <given-names>Jacob</given-names></name>
<xref ref-type="aff" rid="aff1"/>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &amp; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-review-editing/">Writing &#x2013; review &#x00026; editing</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Investigation" vocab-term-identifier="https://credit.niso.org/contributor-roles/investigation/">Investigation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Software" vocab-term-identifier="https://credit.niso.org/contributor-roles/software/">Software</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Formal analysis" vocab-term-identifier="https://credit.niso.org/contributor-roles/formal-analysis/">Formal analysis</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Validation" vocab-term-identifier="https://credit.niso.org/contributor-roles/validation/">Validation</role>
<uri xlink:href="https://loop.frontiersin.org/people/3346940"/>
</contrib>
<contrib contrib-type="author">
<name><surname>J&#x000F8;rgensen</surname> <given-names>Oskar</given-names></name>
<xref ref-type="aff" rid="aff1"/>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &amp; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-review-editing/">Writing &#x2013; review &#x00026; editing</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Investigation" vocab-term-identifier="https://credit.niso.org/contributor-roles/investigation/">Investigation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Software" vocab-term-identifier="https://credit.niso.org/contributor-roles/software/">Software</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Visualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/visualization/">Visualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Formal analysis" vocab-term-identifier="https://credit.niso.org/contributor-roles/formal-analysis/">Formal analysis</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Validation" vocab-term-identifier="https://credit.niso.org/contributor-roles/validation/">Validation</role>
<uri xlink:href="https://loop.frontiersin.org/people/3317436"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Str&#x000FC;mke</surname> <given-names>Inga</given-names></name>
<xref ref-type="aff" rid="aff1"/>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &amp; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-review-editing/">Writing &#x2013; review &#x00026; editing</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Validation" vocab-term-identifier="https://credit.niso.org/contributor-roles/validation/">Validation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Supervision" vocab-term-identifier="https://credit.niso.org/contributor-roles/supervision/">Supervision</role>
</contrib>
<contrib contrib-type="author">
<name><surname>Langseth</surname> <given-names>Helge</given-names></name>
<xref ref-type="aff" rid="aff1"/>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Methodology" vocab-term-identifier="https://credit.niso.org/contributor-roles/methodology/">Methodology</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Investigation" vocab-term-identifier="https://credit.niso.org/contributor-roles/investigation/">Investigation</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; review &amp; editing" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-review-editing/">Writing &#x2013; review &#x00026; editing</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Conceptualization" vocab-term-identifier="https://credit.niso.org/contributor-roles/conceptualization/">Conceptualization</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Writing &#x2013; original draft" vocab-term-identifier="https://credit.niso.org/contributor-roles/writing-original-draft/">Writing &#x2013; original draft</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Supervision" vocab-term-identifier="https://credit.niso.org/contributor-roles/supervision/">Supervision</role>
<role vocab="credit" vocab-identifier="https://credit.niso.org/" vocab-term="Funding acquisition" vocab-term-identifier="https://credit.niso.org/contributor-roles/funding-acquisition/">Funding acquisition</role>
</contrib>
</contrib-group>
<aff id="aff1"><institution>Department of Computer Science, Norwegian University of Science and Technology</institution>, <city>Trondheim</city>, <country country="no">Norway</country></aff>
<author-notes>
<corresp id="c001"><label>&#x0002A;</label>Correspondence: Anna Rodum Bj&#x000F8;ru, <email xlink:href="mailto:anna.r.bjoru@ntnu.no">anna.r.bjoru@ntnu.no</email></corresp>
</author-notes>
<pub-date publication-format="electronic" date-type="pub" iso-8601-date="2026-02-11">
<day>11</day>
<month>02</month>
<year>2026</year>
</pub-date>
<pub-date publication-format="electronic" date-type="collection">
<year>2025</year>
</pub-date>
<volume>8</volume>
<elocation-id>1759000</elocation-id>
<history>
<date date-type="received">
<day>02</day>
<month>12</month>
<year>2025</year>
</date>
<date date-type="rev-recd">
<day>22</day>
<month>12</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>29</day>
<month>12</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2026 Bj&#x000F8;ru, Lysn&#x000E6;s-Larsen, J&#x000F8;rgensen, Str&#x000FC;mke and Langseth.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>Bj&#x000F8;ru, Lysn&#x000E6;s-Larsen, J&#x000F8;rgensen, Str&#x000FC;mke and Langseth</copyright-holder>
<license>
<ali:license_ref start_date="2026-02-11">https://creativecommons.org/licenses/by/4.0/</ali:license_ref>
<license-p>This is an open-access article distributed under the terms of the <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution License (CC BY)</ext-link>. The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</license-p>
</license>
</permissions>
<abstract>
<p>This work presents a conceptual framework for causal concept-based post-hoc explainable artificial intelligence (XAI), based on the requirements that explanations for non-interpretable models must be both understandable and faithful to the model being explained. Local and global explanations are generated by calculating the probability of sufficiency of concept interventions. Example explanations are presented, generated with a proof-of-concept model made to explain classifiers trained on the CelebA dataset. Understandability is demonstrated through a clear concept-based vocabulary, subject to an implicit causal interpretation. Fidelity is addressed by highlighting important framework assumptions, stressing that the context of explanation interpretation must align with the context of explanation generation.</p></abstract>
<kwd-group>
<kwd>causal explanation</kwd>
<kwd>concept attribution</kwd>
<kwd>counterfactual explanation</kwd>
<kwd>post-hoc XAI</kwd>
<kwd>probability of sufficiency</kwd>
</kwd-group>
<funding-group>
<funding-statement>The author(s) declared that financial support was received for this work and/or its publication. ARB was funded by grant 304843 from the Norwegian Research Council.</funding-statement>
</funding-group>
<counts>
<fig-count count="9"/>
<table-count count="7"/>
<equation-count count="7"/>
<ref-count count="34"/>
<page-count count="17"/>
<word-count count="13261"/>
</counts>
<custom-meta-group>
<custom-meta>
<meta-name>section-at-acceptance</meta-name>
<meta-value>Machine Learning and Artificial Intelligence</meta-value>
</custom-meta>
</custom-meta-group>
</article-meta>
</front>
<body>
<sec sec-type="intro" id="s1">
<label>1</label>
<title>Introduction</title>
<p>With state-of-the-art machine learning models used for an increasing variety of high stakes decision making, a well-documented challenge is the lack of transparency introduced by the complexity of the models employed (<xref ref-type="bibr" rid="B17">Goodman and Flaxman, 2017</xref>; <xref ref-type="bibr" rid="B15">Gerlings et al., 2021</xref>). The field of explainable artificial intelligence (XAI) aims to ensure models are equipped with the ability to provide explanations for their predictions. One way to approach the task of explaining model behavior is to design methods that generate explanations for a given pre-trained, non-interpretable model. This is referred to as post-hoc XAI (<xref ref-type="bibr" rid="B5">Barredo Arrieta et al., 2020</xref>), and an obvious advantage of this approach is that a system&#x00027;s ability to explain its behavior is treated independently of optimizing model performance.</p>
<p>XAI explanations are expected to meet certain criteria. It is critical that (1) explanations are understandable to the explainee (<xref ref-type="bibr" rid="B25">Miller, 2019</xref>), and that (2) explanations are faithful to the explanandum, i.e., the model (<xref ref-type="bibr" rid="B20">Jacovi and Goldberg, 2020</xref>). Understandability is receiver-dependent, but generally requires meaningful content and a concise presentation. Fidelity is evaluated with respect to the model to be explained, and any explanation must accurately reflect the model&#x00027;s behavior. This includes no presence of bias, which for instance could be the result of strategically restricting the scope of explanation.</p>
<p>While understandability and fidelity are the independent qualities of explanations, maximizing each in isolation is not trivial. For instance, a challenge to be considered is that explanations that align with what is expected may be perceived as more understandable. This introduces a preference for explanations that confirm prior beliefs, which results in bias if allowed to influence explanation selection. Moreover, a faithful, unbiased explanation that is misinterpreted will equally mislead the explainee.</p>
<p>This work presents a causal post-hoc XAI framework for explaining arbitrary models, aiming to facilitate both understandability and fidelity within a defined context.</p>
<p>First, understandability is addressed by arguing that explanations should be causal and expressed in an interpretable vocabulary. The requirement for explanations to be causal is based on this being argued the implicit structure of explanation employed in human communication (<xref ref-type="bibr" rid="B25">Miller, 2019</xref>). Thus, ensuring causally valid explanations aids in aligning intended interpretation with actual interpretation. This, in turn, eliminates the need for additional instructions on how to interpret the explanation, allowing a more succinct representation.</p>
<p>The requirement for understandable vocabulary emphasizes the likely discrepancy between the set of data features that the model takes as input, and the set of features ideal for explanation. This distinction is the key foundation of a group of XAI methods collectively known as concept-based XAI (C-XAI) (<xref ref-type="bibr" rid="B30">Poeta et al., 2025</xref>). The central assumption of this approach is that while models are equally capable of processing information in the form of pixels, graphs, and tokens, human communication typically assumes a vocabulary consisting of units corresponding to high-level, semantically meaningful concepts.</p>
<p>Second, fidelity is addressed through identifying and minimizing bias introduced by the explanation generation process. Assumptions made prior to generation of explanations are discussed, to provide a well-defined context for explanation. This includes details regarding the comprehensiveness of the vocabulary and the choice of causal model, and how the scope of explanation in turn is influenced.</p>
<p>The final framework admits causal reasoning about model behavior, including generation of counterfactual events as contrastive explanations. Local explanations are generated counterfactually, relating change to probability of sufficiency. Global explanations are generated both with counterfactuals and with interventional queries.</p>
<p>The contributions of the study are the following:</p>
<list list-type="bullet">
<list-item><p>A theoretical XAI framework for post-hoc, causal explanation generation is presented (Section 4.1)</p></list-item>
<list-item><p>Both concept attributions and counterfactually sound contrastive concept-based explanations are defined based on counterfactual calculation of the probability of sufficiency (Section 4.2)</p></list-item>
<list-item><p>A proof-of-concept post-hoc explanation model is detailed and applied to generate local and global explanations for classifiers trained on the celebA dataset (Section 5).</p></list-item>
</list>
</sec>
<sec id="s2">
<label>2</label>
<title>Background</title>
<sec>
<label>2.1</label>
<title>Notation</title>
<p>Notation x/<bold>x</bold> denotes a scalar/set of random variable(s), with element <italic>i</italic> of <bold>x</bold> denoted x<sub><italic>i</italic></sub>. Notation <italic>x</italic>/<bold><italic>x</italic></bold> is used to denote a scalar/set of value(s). The domain of a variable x is denoted by &#x003A9;<sub>x</sub>.</p>
</sec>
<sec>
<label>2.2</label>
<title>Causality</title>
<p>Relevant background for discussing causal modeling and inference is reviewed here.</p>
<sec>
<label>2.2.1</label>
<title>Structural causal models</title>
<p>Given a set of variables <bold>v</bold> describing a domain, with causal structure represented by graph <inline-formula><mml:math id="M1"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula>. Counterfactual inference in <bold>v</bold> requires a structural causal model (SCM) (<xref ref-type="bibr" rid="B14">Galles and Pearl, 1997</xref>; <xref ref-type="bibr" rid="B29">Pearl, 2009</xref>). An SCM has components <inline-formula><mml:math id="M2"><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>v</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="script">F</mml:mi></mml:mrow></mml:math></inline-formula>, where <bold>v</bold> is a set of endogenous variables, <bold>u</bold> is a set of exogenous variables, and <inline-formula><mml:math id="M3"><mml:mrow><mml:mi mathvariant="script">F</mml:mi></mml:mrow></mml:math></inline-formula> is a set of deterministic structural functions, one for each endogenous variable. A structural function <italic>f</italic><sub>v</sub>(<bold>pa</bold><sub>v</sub>) &#x0003D; v determines the value of variable v given its parents <bold>pa</bold><sub>v</sub> in the causal graph <inline-formula><mml:math id="M4"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula>. The exogenous variables <bold>u</bold> are introduced as root variables in <inline-formula><mml:math id="M5"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula>, such that each u is a parent to exactly one endogenous variable v. Here, causal sufficiency is assumed (u<sub><italic>i</italic></sub>&#x02AEB;u<sub><italic>j</italic></sub> for all u<sub><italic>i</italic></sub>, u<sub><italic>j</italic></sub> &#x02208; <bold>u</bold>, <italic>i</italic> &#x02260; <italic>j</italic>). Such SCMs are called Markovian SCMs (<xref ref-type="bibr" rid="B4">Avin et al., 2005</xref>) and do not allow exogenous causal confounding. Note that an endogenous variable v may be modeled without an exogenous parent if v is assumed to be deterministically given by its endogenous parents.</p>
<p>The distinction between endogenous and exogenous variables is here assumed to be made based on semantic interpretation. All variables in the environment described by <inline-formula><mml:math id="M6"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula> that represent the concepts of known interpretation are modeled as endogenous variables, regardless of whether it is observed or not. Then, the exogenous variables are included where relevant to account for causal influence of origin outside of the model scope. Exogenous variables are thus always unobserved.</p>
<p>The SCM is further rendered probabilistic by introducing a probability distribution <italic>P</italic>(<bold>u</bold>) over the exogenous variables. An SCM where all components <inline-formula><mml:math id="M7"><mml:mrow><mml:mo>&#x02329;</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>v</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mrow><mml:mi mathvariant="script">F</mml:mi></mml:mrow><mml:mo>,</mml:mo><mml:mi>P</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo>&#x0232A;</mml:mo></mml:mrow></mml:math></inline-formula> are defined, is referred to as a fully specified SCM (FSCM) (<xref ref-type="bibr" rid="B29">Pearl, 2009</xref>; <xref ref-type="bibr" rid="B34">Zaffalon et al., 2024</xref>). If the probability distribution <italic>P</italic>(<bold>u</bold>) is unknown, the SCM is referred to as a partially specified SCM (PSCM). The most general SCM lets each structural function in <inline-formula><mml:math id="M8"><mml:mrow><mml:mi mathvariant="script">F</mml:mi></mml:mrow></mml:math></inline-formula> admit every possible function from its endogenous inputs to its output variable and is referred to as <italic>canonical</italic>.</p>
</sec>
<sec>
<label>2.2.2</label>
<title>Counterfactual queries</title>
<p>A counterfactual query combines observed evidence with a hypothetical, retrospective intervention (<xref ref-type="bibr" rid="B29">Pearl, 2009</xref>). An intervention, denoted do(v &#x0003D; <italic>v</italic>), assigns a value for a variable while breaking the dependence between the intervened variable and its causal parents, to simulate action, as opposed to change in observation. A counterfactual query is of the form <inline-formula><mml:math id="M9"><mml:mi>P</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">v</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>|</mml:mo><mml:mi>v</mml:mi><mml:mo>,</mml:mo><mml:mi>w</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> <xref ref-type="fn" rid="fn0003"><sup>1</sup></xref>, read as the probability that variable w had taken value <italic>w</italic>&#x02032; if variable v had been intervened to take value <italic>v</italic>&#x02032;, given that the observed event is v &#x0003D; <italic>v</italic>, w &#x0003D; <italic>w</italic>.</p>
</sec>
<sec>
<label>2.2.3</label>
<title>Probability of sufficiency</title>
<p>Given two binary variables, v and w, the Probability of Sufficiency (PS) is given as <italic>P</italic>(w<sub>do(v &#x0003D; 1)</sub> &#x0003D; 1|w &#x0003D; 0, v &#x0003D; 0) (<xref ref-type="bibr" rid="B29">Pearl, 2009</xref>), and gives the probability to which variable v intervened to take on value 1 is sufficient for variable w to take on value 1, given that it is observed that v &#x0003D; 0 and w &#x0003D; 0.</p>
<p>For binary variables of certain interpretation, the query may be read as the probability of variable v being a sufficient cause of variable w, implicitly referencing values at 1 as activations. Generalizing the probability of sufficiency to all discrete variables as <inline-formula><mml:math id="M11"><mml:mi>P</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">v</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mi>v</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>w</mml:mi><mml:mo>|</mml:mo><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">w</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">v</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> with <italic>v</italic> &#x02260; <italic>v</italic>&#x02032; and <italic>w</italic> &#x02260; <italic>w</italic>&#x02032;, the query is rather read with explicit reference to the values, i.e., the probability of v &#x0003D; <italic>v</italic> being a sufficient cause of w &#x0003D; <italic>w</italic> in a context where neither <italic>v</italic> nor <italic>w</italic> is observed.</p>
</sec>
</sec>
<sec>
<label>2.3</label>
<title>Post-hoc XAI</title>
<p>This section reviews relevant topics concerning post-hoc XAI.</p>
<sec>
<label>2.3.1</label>
<title>Type of explanation</title>
<p>Several types of explanations are defined within the field of XAI. These include <italic>feature attributions</italic> (<xref ref-type="bibr" rid="B31">Ribeiro et al., 2016</xref>; <xref ref-type="bibr" rid="B24">Lundberg and Lee, 2017</xref>), which are the scores assigned for each data feature to quantify the contribution of the feature toward the model&#x00027;s outcome. By a generalized interpretation, this type of explanation extends to concept attributions, where attribution is measured for variables not explicit in the data representation.</p>
<p>Another type of explanation is the <italic>contrastive explanation</italic> (<xref ref-type="bibr" rid="B33">Wachter et al., 2018</xref>). For a given sample <bold><italic>x</italic></bold> to be explained, contrasting data samples that are similar to <bold><italic>x</italic></bold> but that differ in model prediction are presented as the explanation. This type of explanation is also known as a counterfactual explanation in the XAI field, but the term counterfactual in this context has a different meaning than it does in causality. To avoid confusion, contrastive is used whenever it is the XAI type of explanation that is referred to, while counterfactual explanation refers to explanations generated with counterfactual queries as detailed in Section 2.2.</p>
</sec>
<sec>
<label>2.3.2</label>
<title>Scope of explanation</title>
<p>The scope of explanations for XAI range from local to global (<xref ref-type="bibr" rid="B2">Angelov et al., 2021</xref>). Local explanations consider a single data sample <bold><italic>x</italic></bold> and explain the model&#x00027;s prediction for this sample by considering the model&#x00027;s behavior in a local neighborhood around <bold><italic>x</italic></bold> only. Global explanations instead explain the model by identifying global trends representative of universal model behavior. Global explanation techniques can be applied to a subgroup of data samples with certain attributes in common, or to infer relationships descriptive of all data samples.</p>
</sec>
<sec>
<label>2.3.3</label>
<title>Goal of explanation</title>
<p>A definition of XAI given by DARPA refers to XAI as &#x0201C;AI systems that can explain their rationale to a human user, characterize their strengths and weaknesses, and convey an understanding of how they will behave in the future&#x0201D; (<xref ref-type="bibr" rid="B18">Gunning and Aha, 2019</xref>). In line with this, post-hoc XAI aims to ensure explainability for non-interpretable models, by employing techniques that reveal why the model predicts a certain output. This in turn can permit better evaluation of model performance, increase user trust in the decision making process, or help users understand how a decision can be changed in situations where decisions are not permanent. The latter requires a special case of explanation, where the explanation vocabulary is restricted according to <italic>actionability</italic>, i.e., whether a variable may be feasibly intervened upon in a current world state. Explaining under actionability constraints with the goal of changing a model decision is referred to as <italic>algorithmic recourse</italic>. While it requires reliable causal modeling to accurately predict the result of the suggested interventions, it is concerned with the future outcome of actualized interventions only.</p>
<p>The type of post-hoc explanation discussed in this study neither makes assumptions regarding the explainee guiding the process of explanation, nor about the performance or deployment stage of the model. This is done to ensure that explanations are faithful to the model, also when the model cannot be assumed to behave as intended or expected. Counterfactual reasoning about retrospective interventions on all variables is permitted, with no requirement for actionability. While the framework discussed may be applied for algorithmic recourse with some adjustments, the details of this is out of scope of this study.</p>
</sec>
<sec>
<label>2.3.4</label>
<title>Concept vocabulary</title>
<p>Concept-based explanations use concepts rather than data features as their vocabulary. While there exist multiple definitions of concepts for XAI, it is the type of concept identified as <italic>symbolic concepts</italic> by <xref ref-type="bibr" rid="B30">Poeta et al. (2025)</xref>, that is referred to here. Thus, a concept corresponds to a high-level attribute or characteristic of the data, with semantic meaning as defined by a human.</p>
<p>Because concepts are not explicitly defined in the data features, it is common to use probing to detect neurons, or combinations of neurons, that best represent target concepts. Such probes are often linear, but may also be non-linear in cases where the concept is not linearly separable. Furthermore, probes can be trained in both supervised and unsupervised manners, where the former requires labeled data of the human-specified concept, and the latter identifies concepts that are important to the model, but not necessarily interpretable to humans.</p>
<p>To assess the importance of identified concepts, concept attribution methods such as TCAV (<xref ref-type="bibr" rid="B21">Kim et al., 2018</xref>) quantify the importance of a concept z, probed in layer &#x02113;, for a given output class <italic>y</italic>. Concepts are learned using linear classifier probes such as logistic regression, resulting in the coefficient-vector <bold><italic>v</italic></bold><sub>z</sub>, which is often interpreted as the direction in which the concept is represented. Let <bold><italic>f</italic></bold><sub>&#x02113;</sub>(<bold><italic>x</italic></bold>) be the result of forwarding the input <bold><italic>x</italic></bold> to the intermediate activation in layer &#x02113;, and <italic>g</italic><sub>&#x02113;, <italic>y</italic></sub>(&#x000B7;) be the remainder of the network, mapping those activations to the logit of class <italic>y</italic>. <xref ref-type="bibr" rid="B21">Kim et al. (2018)</xref> define concept sensitivity as the directional derivative of <italic>g</italic><sub>&#x02113;, <italic>y</italic></sub> wrt. <bold><italic>f</italic></bold><sub>&#x02113;</sub>(<bold><italic>x</italic></bold>) compared to the concept direction <bold><italic>v</italic></bold><sub>z</sub>. For an input <bold><italic>x</italic></bold>, the sensitivity score is thus <inline-formula><mml:math id="M12"><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mo>&#x02207;</mml:mo></mml:mstyle></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>f</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>g</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>f</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo>&#x022A4;</mml:mo></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>v</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">z</mml:mtext></mml:mstyle></mml:mrow></mml:msub></mml:math></inline-formula>. These scores are aggregated over a background dataset, here a subset of the test data <inline-formula><mml:math id="M13"><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula>, providing the ratio of positive concept sensitivities as</p>
<disp-formula id="E1"><mml:math id="M14"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mtext class="textrm" mathvariant="normal">TCAV</mml:mtext></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>y</mml:mi><mml:mo>,</mml:mo><mml:mtext class="textrm" mathvariant="normal">z</mml:mtext><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mstyle displaystyle="true"><mml:msub><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup></mml:mrow></mml:msub></mml:mstyle><mml:mi>I</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mo>&#x02207;</mml:mo></mml:mstyle></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>f</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:msub><mml:msub><mml:mrow><mml:mi>g</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi><mml:mo>,</mml:mo><mml:mi>y</mml:mi></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>f</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo>&#x022A4;</mml:mo></mml:mrow></mml:msup><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>v</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mtext class="textrm" mathvariant="normal">z</mml:mtext></mml:mrow></mml:msub><mml:mo>&#x0003E;</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>|</mml:mo></mml:mrow></mml:mfrac><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <italic>I</italic>[<italic>A</italic>] is 1 if <italic>A</italic> is true and 0 otherwise.</p>
</sec>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Related work</title>
<p>Several related works discuss post-hoc model explanation with causal models over concepts that are distinct from data features. <xref ref-type="bibr" rid="B27">Parafita and Vitri&#x000E0; (2019)</xref> use distributional causal graphs for casual modeling, with MLPs outputting concept distributions as structural functions. The framework does not allow exact counterfactual inference, and average effect of interventions is rather considered. The study further includes a conceptual discussion of requirements for a causal generator mapping concepts to data space. The methods presented by <xref ref-type="bibr" rid="B12">Dash et al. (2022)</xref> and <xref ref-type="bibr" rid="B22">Komanduri et al. (2024)</xref> restrict the process of learning structural functions for an FSCM to observation-based estimation of parameters of a function under model assumptions such as additive noise, Gaussian noise, and linearity. The counterfactual context <bold><italic>u</italic></bold> &#x0007E; <italic>p</italic>(<bold><italic>u</italic></bold>|<bold><italic>x</italic></bold>) given a data sample <bold><italic>x</italic></bold> is sampled via encodings <bold>u</bold> &#x0003D; <italic>q</italic>(<bold>x</bold>) learned from observations. The causal generator used by <xref ref-type="bibr" rid="B12">Dash et al. (2022)</xref> is based on a generative adversarial network (GAN) architecture, while <xref ref-type="bibr" rid="B22">Komanduri et al. (2024)</xref> employ a diffusion network.</p>
<p>The present work extends the modeling of structural equations beyond observation-based estimation under general assumptions. Various levels of modeling are considered, ranging from FSCMs designed with clear interpretation under assumptions based on domain knowledge to canonical PSCMs containing all FSCMs consistent with the data. This illustrates both the importance of modeling choices made regarding structural functions, and the potential for partial information in the form counterfactual intervals when complete FSCMs are not available.</p>
<p><xref ref-type="bibr" rid="B13">Galhotra et al. (2021)</xref> present an XAI method based on calculating probabilities of sufficiency and necessity with FSCMs. Focusing on tabular data, they introduce causal modeling on top of features in data space, assuming these represent high-level concepts, with the option to include further concepts not part of the model input. While only applicable when features are meaningful concepts, this method does not require a causal generator. The method further assumes a preference regarding model output to be explained, such that explanations are framed in terms of which subsets of input values are sufficient to change a model prediction to a more preferable one, or which values are necessary to retain a preferable prediction whenever the outcome of the explanandum is preferred unaltered.</p>
<p>Moreover, <xref ref-type="bibr" rid="B13">Galhotra et al. (2021)</xref> include a discussion on bounding probabilities analytically whenever a fully specified SCM is not available. Counterfactual intervals for XAI is further explored in the present work, considering PSCMs for calculating intervals for counterfactual queries. This allows for well-defined subgroups of FSCMs to be considered, whenever imperfect domain knowledge is available, potentially reducing intervals compared to analytic calculations.</p>
<p>Probabilities of sufficiency and necessity are also considered for evaluation of XAI methods. <xref ref-type="bibr" rid="B26">Mothilal et al. (2021)</xref> define the ideal model explanation based on necessity and sufficiency, such that the explanation is a minimal subset of features that is both necessary and sufficient for a model outcome in a given context. With the assumption that the set of variables for explanation is the input features only, and that these are all independent, the types of XAI explanations are discussed in comparison. Probability of necessity is related to contrastive explanations by arguing the features changed a necessary cause for original model output. Sufficiency is related to feature attribution explanations, in that highly contributing features across contexts will correspond to sufficient features, more likely to cause the output regardless of other feature values. Experiment highlights high variation across methods in practice. <xref ref-type="bibr" rid="B28">Pawar et al. (2024)</xref>, also assuming independent data features, similarly discuss sufficiency and necessity as the key criteria for existing XAI methods to be evaluated against, and extends this to cover different approaches to neighborhood generation as basis for explanation.</p>
<p><xref ref-type="bibr" rid="B6">Beckers (2022)</xref> considers the related settings where the model to be explained predicts the outcome of actions, and thus is assumed to be causally meaningful. Both sufficient explanations and counterfactual explanations are defined for this scenario, under the assumption that the model always predict the correct action outcome. The types of explanations are further divided by distinguishing between degrees of causal influence, to identify <italic>actual causes</italic> for explanation.</p>
</sec>
<sec id="s4">
<label>4</label>
<title>Method</title>
<sec>
<label>4.1</label>
<title>Causal XAI framework overview</title>
<p>This section details a framework for generation of causal post-hoc explanations for a model <italic>h</italic> in a meaningful vocabulary. The framework was first introduced by <xref ref-type="bibr" rid="B8">Bj&#x000F8;ru et al. (2025b)</xref> as a means to classify various XAI methods according to their level of causal abstraction. Here, this framework is extended and actualized as a distinct XAI method for explaining black-box models.</p>
<p>The framework is based on the distinction between the explanation vocabulary, which is a set of meaningful concepts, and the data features that are the input of the model to be explained. In total, three model components complete the framework: (1) The black-box model <italic>h</italic> that will be explained, (2) a mapping &#x003B1; (with inverse &#x003B1;<sup>&#x02212;1</sup>) from the explanation vocabulary concepts to the data representation as input to <italic>h</italic>, and (3) a causal model <italic>M</italic> over the explanation concepts. The framework includes the following sets of variables: <bold>z</bold> denotes the explanation concept vocabulary, <bold>u</bold> denotes the exogenous variables associated with <bold>z</bold> by <italic>M</italic>, <bold>x</bold> denotes the data features that are the input to the model <italic>h</italic>, <inline-formula><mml:math id="M15"><mml:mover accent="true"><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mstyle></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> denotes the output of <italic>h</italic>, and finally <bold>w</bold> denotes any noise or unknown factors of variation in <bold>x</bold> such that <bold>x</bold> is deterministically given by <bold>x</bold> &#x0003D; &#x003B1;(<bold>z</bold>, <bold>w</bold>).</p>
<p><xref ref-type="fig" rid="F1">Figure 1</xref> summarizes this framework. The complete model with components <italic>M</italic>, &#x003B1;, <italic>h</italic> can be considered a single causal model over the set of variables <inline-formula><mml:math id="M16"><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula>, allowing functions &#x003B1; and <italic>h</italic> to be interpreted as representing causal mechanisms. The remainder of this section details each of the model components <italic>h</italic>, &#x003B1;, and <italic>M</italic> and their respective input and output.</p>
<fig position="float" id="F1">
<label>Figure 1</label>
<caption><p>The graph details the complete causal framework over variables <inline-formula><mml:math id="M17"><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula> that is presented in this section. Variables <bold>x</bold> and <inline-formula><mml:math id="M18"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> are included with gray background, as these are observed variables from the point of view of <italic>h</italic>, the model to be explained. Variables <bold>z</bold>, <bold>w</bold>, <bold>u</bold> are generally unobserved. Variables <bold>u</bold> are not circled in the graph, to emphasize the distinction between the exogenous <bold>u</bold> representing influence on <bold>z</bold> originating outside of the model, and the remaining, endogenous variables.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0001.tif">
<alt-text content-type="machine-generated">Diagram showing a directed graph with nodes labeled u, z, w, x, and &#x00177;. Arrows indicate directional flow: u to z, z to x, w to x, and x to &#x00177;. Arrows are labeled M and h. A horizontal dashed line marks alpha above x.</alt-text>
</graphic>
</fig>
<sec>
<label>4.1.1</label>
<title>The model <italic>h</italic> to be explained</title>
<p>The purpose of the causal framework is to allow explanation of a black-box model <inline-formula><mml:math id="M19"><mml:mi>h</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>. This model <italic>h</italic> takes a set of input features <bold>x</bold> and predicts a corresponding output <inline-formula><mml:math id="M20"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>. No assumptions are made about the architecture of <italic>h</italic>, and importantly, no assumptions are made about the performance of <italic>h</italic>.</p>
<p>For <italic>h</italic> to be interpreted as a causal process, it is important to clearly distinguish prediction <inline-formula><mml:math id="M21"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> from the attribute y being predicted. Given an instance <bold><italic>x</italic></bold>, y &#x0003D; <italic>y</italic> is considered to represent the ground truth attribute corresponding to <bold><italic>x</italic></bold>, which generally may not be observed outside of training data. The model prediction <inline-formula><mml:math id="M22"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mi>h</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> is the model&#x00027;s guess as to what value y takes, such that it is not guaranteed that <italic>y</italic> &#x0003D; &#x00177;. This is clearly illustrated if for ground truth y that takes one of two values, <italic>h</italic> is chosen to be a constant function predicting the same &#x00177; for all inputs. Even if <italic>h</italic> perfectly predicts y by <inline-formula><mml:math id="M23"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>, the causal nature of these variables is distinct. While the prediction <inline-formula><mml:math id="M24"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> is always caused by <bold>x</bold> through <italic>h</italic>, it is rarely meaningful to model <bold>x</bold> as a cause of the true attribute y. Rather, y can be thought of as a concept that is part of the concept representation <bold>z</bold> with causal influence on <bold>x</bold>, or otherwise caused by concepts in <bold>z</bold>, and thus correlated with <bold>x</bold> by confounding. This distinction is illustrated further in an example presented in Section 5.</p>
<p>Explaining <italic>h</italic> is approached by relating change in <inline-formula><mml:math id="M25"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> to systematic change in <bold>x</bold>. However, the features <bold>x</bold> themselves will not in general constitute a useful vocabulary for explanation, as atomic features in <bold>x</bold> may correspond to pixels in an image, words in a text, nodes in a graph etc. Thus, to quantify meaningful change in <bold>x</bold>, a concept-based vocabulary with known causal structure is considered.</p>
</sec>
<sec>
<label>4.1.2</label>
<title>The mapping &#x003B1; from concepts to data features</title>
<p>The explanation vocabulary is denoted <bold>z</bold>, with each variable z<sub><italic>i</italic></sub> representing a meaningful, high-level concept relevant to describe the information represented in <bold>x</bold>. Now <bold>z</bold> permits explanations in a language understandable for a human explainee.</p>
<p>To describe change in <bold>x</bold> by change in <bold>z</bold>, an invertible mapping &#x003B1; between the two sets of variables is required. Ideally, <bold>z</bold> is sufficient to generate <bold>x</bold> through a deterministic &#x003B1;, such that all information in <bold>x</bold> originates from meaningful concepts in <bold>z</bold> available for explanation. As this is rarely feasible in practice, another set of variables <bold>w</bold> is introduced, such that &#x003B1;(<bold>z</bold>, <bold>w</bold>) &#x0003D; <bold>x</bold>, with <bold>w</bold> encoding any unknown factors of variation in <bold>x</bold> not represented in <bold>z</bold>. Hence, &#x003B1; is kept a deterministic function. The variables <bold>w</bold> are not required to be interpretable, and it is assumed that the variable sets <bold>z</bold> and <bold>w</bold> are independent.</p>
<p>The independence <bold>z</bold>&#x02AEB;<bold>w</bold> is assumed in order for the effect of interventions in <bold>z</bold> on <bold>x</bold> to be correctly modeled, which is not feasible if <italic>p</italic>(<bold>w</bold>|do(<bold>z</bold>)) &#x02260; <italic>p</italic>(<bold>w</bold>). It is noted that <bold>w</bold> is never to be considered part of the explanation language. For local explanations, <bold>w</bold> will be considered a context fixed at some value <bold>w</bold> &#x0003D; <bold><italic>w</italic></bold>, such that the effect of changes to <bold>z</bold> may be consistently mapped to <bold>x</bold> through &#x003B1;.</p>
<p>Another important assumption is thus that <bold>z</bold>, while not a complete model of all information present in <bold>x</bold>, constitutes a sufficiently comprehensive explanation language for <italic>h</italic>&#x00027;s decision logic to be (partially) exposed.</p>
<p>Conceptually, &#x003B1; is considered a decoder &#x003B1;(<bold><italic>z</italic></bold>, <bold><italic>w</italic></bold>) &#x0003D; <bold><italic>x</italic></bold>, and &#x003B1;<sup>&#x02212;1</sup> is a corresponding encoder &#x003B1;<sup>&#x02212;1</sup>(<bold><italic>x</italic></bold>) &#x0003D; <bold><italic>z</italic></bold>, <bold><italic>w</italic></bold>. The independence <bold>z</bold>&#x02AEB;<bold>w</bold> is assumed preserved by &#x003B1;<sup>&#x02212;1</sup> &#x000B0; &#x003B1;. Dependence among variables in <bold>w</bold> is irrelevant such that independence here may be enforced if convenient. However, the variables of <bold>z</bold> can be dependent.</p>
<p>Note that while &#x003B1; is modeled as an invertible mapping, it is interpreted as representing a causal process in the data generative direction <bold>z</bold>, <bold>w</bold> &#x02192; <bold>x</bold>. The causal influence of a world state on a data instance through the ground truth data generative process is modeled as causal influence of the concepts <bold>z</bold> as a high level representation of this world state, as well as unknown factors in <bold>w</bold>, on <bold>x</bold>.</p>
</sec>
<sec>
<label>4.1.3</label>
<title>The causal model <italic>M</italic> for causal reasoning</title>
<p>Expressing explanations in terms of causally meaningful change to <bold>z</bold> further requires a reliable model of <bold>z</bold>&#x00027;s causal structure, which represents the underlying physical mechanisms governing the relationships of these concepts in the real world. This structure is represented by a causal graph <inline-formula><mml:math id="M26"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula>.</p>
<p>An explicit causal model <italic>M</italic> is introduced over variables <bold>z</bold> with structure <inline-formula><mml:math id="M27"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula>. For maximum capacity for reasoning, <italic>M</italic> is considered an FSCM, and a final set of variables <bold>u</bold> is included, to act as <italic>M</italic>&#x00027;s exogenous variables. The model <italic>M</italic> is assumed to be Markovian as described in Section 2.2. <xref ref-type="fig" rid="F2">Figure 2</xref> presents an example graph <inline-formula><mml:math id="M28"><mml:mrow><mml:mi mathvariant="script">G</mml:mi></mml:mrow></mml:math></inline-formula> over variable set <inline-formula><mml:math id="M29"><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">z</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>5</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula>, with Markovian exogenous variables <inline-formula><mml:math id="M30"><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msubsup><mml:mrow><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">u</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>5</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula>.</p>
<fig position="float" id="F2">
<label>Figure 2</label>
<caption><p>The figure details an example causal graph over concept variables z<sub>1</sub>, z<sub>2</sub>, z<sub>3</sub>, z<sub>4</sub>, z<sub>5</sub>, each with an exogenous parent u<sub><italic>i</italic></sub>.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0002.tif">
<alt-text content-type="machine-generated">A network diagram with five circled nodes labeled Z1, Z2, Z3, Z4 and Z5, and five nodes U1, U2, U3, U4 and U5 that are not circled. The arrows are U1 to Z1; U2 to Z2; U3 to Z3; U4 to Z4; U5 to Z5; Z1 to Z3, Z4 and Z5; and Z2 to Z3, Z4 and Z5. Arrows illustrate the causal relationships between the nodes.</alt-text>
</graphic>
</fig>
<p>The requirement that <italic>M</italic> be an FSCM can be challenging to meet in practice, as no amount of data, observational or experimental, will reveal the exact nature of the underlying process to be captured by a structural function. Thus in-depth domain knowledge is typically required for the design of reasonable structural functions, with no automated way of verifying the reliability of a given model. Regardless, an FSCM is required for exact calculation of counterfactual queries, and so is the ideal modeling approach to <italic>M</italic> for causal explanations.</p>
<p>If a single, reasonable choice of FSCM cannot be provided, alternatives may be considered, at some cost to explanation quality. Assuming model complexity is sufficiently low, a PSCM may be considered, for which counterfactual queries may be bounded by intervals. The most general PSCM to be considered is referred to as canonical, which provides intervals guaranteed to contain the true counterfactual probability.</p>
<p>Finally, if no SCM can be provided, <italic>M</italic> can be modeled as a causal Bayesian network (CBN). In this setting, counterfactual reasoning is not feasible, and the framework may be applied for the calculation of interventional queries only.</p>
<p>With <italic>M</italic>, &#x003B1;, <italic>h</italic> as detailed, the causal flow is now summarized. The concept variables <bold>z</bold> have internal causal structure and are caused by their respective parents among the other concepts, as well as exogenous parents <bold>u</bold>, exemplified in <xref ref-type="fig" rid="F2">Figure 2</xref>. The concepts <bold>z</bold> together with unknown factors <bold>w</bold> are the causes of the data features <bold>x</bold> through the data generative process represented by &#x003B1;. Finally, the data features <bold>x</bold> are the causes of the model prediction <inline-formula><mml:math id="M31"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> through the model <italic>h</italic>. <xref ref-type="fig" rid="F3">Figure 3</xref> summarizes the complete causal flow for the example in <xref ref-type="fig" rid="F2">Figure 2</xref>. The concepts in <bold>z</bold> are thus indirect causes of prediction <inline-formula><mml:math id="M32"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>, and this is the relationship explored for explanation. While all variables are part of the extended causal model for explanation, only the variables in <bold>z</bold> are considered for intervention to detect causal relationship. Any intervention to variables <bold>x</bold> or <inline-formula><mml:math id="M33"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> would remove the link with concept space and the vocabulary chosen for explanation. As <bold>u</bold> and <bold>w</bold> are unobserved and uninterpretable, interventions here are not informative.</p>
<fig position="float" id="F3">
<label>Figure 3</label>
<caption><p>The figure details the complete causal flow of the framework when <bold>u</bold>, <bold>z</bold>, and causal model <italic>M</italic> are as shown in <xref ref-type="fig" rid="F2">Figure 2</xref>. The distinction between ground truth y and prediction &#x00177; discussed above is illustrated here by considering a model <italic>h</italic> that is learned to predict the value of concept z<sub>1</sub>, such that y &#x0003D; z<sub>1</sub>. In this case, while <bold>x</bold> is a cause of the prediction <inline-formula><mml:math id="M34"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>, the ground truth y is a cause of <bold>x</bold>.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0003.tif">
<alt-text content-type="machine-generated">A directed graph with nodes labeled \(z_1\), \(z_2\), \(z_3\), \(z_4\), \(z_5\), \(x\), \(&#x00177;\), and \(w\). Arrows show the flow from \(u_1\), \(u_2\), \(u_3\), \(u_4\), and \(u_5\) into the \(z\) nodes, which then connect to \(x\). Node \(x\) leads to \(&#x00177;\) and is also connected to \(w\).</alt-text>
</graphic>
</fig>
</sec>
</sec>
<sec>
<label>4.2</label>
<title>Causal XAI explanations</title>
<p>This section details how explanations are generated with the presented framework. The main operation of this generation is the calculation of probabilities for outcomes of interventions to subsets of concepts in <bold>z</bold>, in a given context.</p>
<sec>
<label>4.2.1</label>
<title>Causal calculations</title>
<p>The framework yields the complete set of variables <inline-formula><mml:math id="M35"><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:math></inline-formula>. The joint distribution over these variables factorizes as follows:</p>
<disp-formula id="E2"><mml:math id="M36"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>I</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mi>&#x003B1;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>w</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mo>]</mml:mo></mml:mrow><mml:mi>I</mml:mi><mml:mrow><mml:mo>[</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>To explain <italic>h</italic>, queries of the generalized form <inline-formula><mml:math id="M37"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>o</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> are considered, quantifying the effect on the model prediction when intervening on a subset of concepts <inline-formula><mml:math id="M38"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02282;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:math></inline-formula>, conditioned on some observation <bold><italic>o</italic></bold>. The observation <bold><italic>o</italic></bold> is the context of the explanation, and different types of explanations are defined based on varying <bold><italic>o</italic></bold>.</p>
<p>Notation <inline-formula><mml:math id="M39"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> is used to denote the set of variables in <bold>z</bold> influenced by an intervention to <inline-formula><mml:math id="M40"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> but not in <inline-formula><mml:math id="M41"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>, i.e., the causal descendants of variables <inline-formula><mml:math id="M42"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>. Notation <inline-formula><mml:math id="M130"><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle></mml:math></inline-formula> denotes variables in <bold>z</bold> unaffected by an intervention to <inline-formula><mml:math id="M43"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>, such that <inline-formula><mml:math id="M44"><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x0222A;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle></mml:math></inline-formula>.</p>
<sec>
<label>4.2.1.1</label>
<title>Local explanations</title>
<p>Local explanations are centered at a single data point <bold><italic>x</italic></bold>, &#x00177; &#x0003D; <italic>h</italic>(<bold><italic>x</italic></bold>), such that <bold><italic>o</italic></bold> &#x0003D; <bold><italic>x</italic></bold>, &#x00177;. Having that <italic>h</italic> is deterministic and that <bold><italic>z</italic></bold>, <bold><italic>w</italic></bold> &#x0003D; &#x003B1;<sup>&#x02212;1</sup>(<bold><italic>x</italic></bold>), this is equivalent to <bold><italic>o</italic></bold> &#x0003D; <bold><italic>z</italic></bold>, <bold><italic>w</italic></bold>. The query becomes <inline-formula><mml:math id="M45"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, which is a counterfactual query, calculated as follows:</p>
<disp-formula id="EQ3"><mml:math id="M46"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x02003;</mml:mtext><mml:mo>&#x000B7;</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mi>I</mml:mi><mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000B0;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>&#x003B1;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">]</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>|</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>u</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x02003;</mml:mtext><mml:mo>&#x000B7;</mml:mo><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>|</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>u</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>I</mml:mi><mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000B0;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>&#x003B1;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;</mml:mtext><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub></mml:mrow></mml:munder></mml:mstyle><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msubsup><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>I</mml:mi><mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:mrow><mml:mi>h</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000B0;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>&#x003B1;</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">]</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math><label>(1)</label></disp-formula>
</sec>
<sec>
<label>4.2.1.2</label>
<title>Global explanations</title>
<p>Global explanations are either intervention-based or counterfactual, depending on the explanation context. In the most general case, <bold><italic>o</italic></bold> &#x0003D; &#x02205;, and the explanation query simplifies as <inline-formula><mml:math id="M48"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mi>&#x02205;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>. This query is interventional, and does not require an SCM. Assuming the joint distribution <inline-formula><mml:math id="M49"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> is available, the query is calculated accordingly.</p>
<p>If the context of explanation is a subgroup, the query may become counterfactual. Generally, the context of explanation is <bold><italic>o</italic></bold> &#x0003D; <bold><italic>z</italic></bold><sub><italic>s</italic></sub>, &#x00177;, where &#x00177; is a common prediction by <italic>h</italic> and <bold><italic>z</italic></bold><sub><italic>s</italic></sub> is a subset of concept values, and the query becomes <inline-formula><mml:math id="M50"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<disp-formula id="EQ5"><mml:math id="M51"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mtable style="text-align:axis;" equalrows="false" columnlines="none" equalcolumns="false" class="array"><mml:mtr><mml:mtd><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle></mml:mrow></mml:munder></mml:mstyle><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo stretchy="false">|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>&#x02248;</mml:mo><mml:mstyle displaystyle="true"><mml:munder class="msub"><mml:mrow><mml:mo>&#x02211;</mml:mo></mml:mrow><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>&#x02208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup></mml:mrow></mml:munder></mml:mstyle><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mfrac><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:mtd></mml:mtr></mml:mtable></mml:math><label>(2)</label></disp-formula>
<p>The query is estimated using an empirical distribution for <italic>p</italic>(<bold><italic>x</italic></bold>|<bold><italic>z</italic></bold><sub><italic>s</italic></sub>, &#x00177;), with <inline-formula><mml:math id="M52"><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>:</mml:mo><mml:mi>&#x00177;</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula> a dataset of samples consistent with the condition &#x00177;, <bold><italic>z</italic></bold><sub><italic>s</italic></sub>. <inline-formula><mml:math id="M53"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> is calculated as detailed for local explanations.</p>
<p>If the subgroup is not conditioned on a common prediction, i.e., <bold><italic>o</italic></bold> &#x0003D; <bold><italic>z</italic></bold><sub><italic>s</italic></sub>, the explanation query will be counterfactual or interventional depending on whether the intervention <inline-formula><mml:math id="M54"><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> influences any of the context variables or not, respectively.</p>
</sec>
</sec>
<sec>
<label>4.2.2</label>
<title>Probability of sufficiency for XAI</title>
<p>The general probability of sufficiency presented in Section 2.2 is adapted and applied for XAI explanations. The target variable of interest is the model prediction <inline-formula><mml:math id="M55"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>. Hypothetical change in the form of a counterfactual intervention is considered for a subset of concept variables <inline-formula><mml:math id="M56"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>. The context is either a local instance <bold><italic>x</italic></bold>, &#x00177;, <bold><italic>z</italic></bold>, <bold><italic>w</italic></bold>, or a subgroup defined by common concepts and prediction <bold><italic>z</italic></bold><sub><italic>s</italic></sub>, &#x00177; such that <inline-formula><mml:math id="M57"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02208;</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>. Then the probability of sufficiency for XAI is given by <inline-formula><mml:math id="M58"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> (local) or <inline-formula><mml:math id="M59"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> (subgroup), with &#x00177;&#x02032; &#x02260; &#x00177; and <inline-formula><mml:math id="M60"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>&#x02260;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>. The query quantifies the effect of the intervention <inline-formula><mml:math id="M61"><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> on <inline-formula><mml:math id="M62"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula>, relative to observed explanandum &#x00177; and <inline-formula><mml:math id="M63"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>.</p>
<p>Note that it is the counterfactual outcome that is the target of the sufficiency query, relative to the observation. The query is thus primarily explanatory with regards to the influence of the changed concepts toward the changed outcome. However, information about the causal influence of the observed concepts on the observed outcome is (partially) revealed, by letting sufficiency of change indicate necessity of the original value. Note that if <inline-formula><mml:math id="M64"><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mo>&#x0003E;</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>, a new value <inline-formula><mml:math id="M65"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> being sufficient for change to occur in <inline-formula><mml:math id="M66"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:math></inline-formula> is not always equivalent to the observed value <inline-formula><mml:math id="M67"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> being necessary for the observed &#x00177;. Still, the respective scenarios are related.</p>
</sec>
<sec>
<label>4.2.3</label>
<title>Concept attributions</title>
<p>Given a single data point or a subgroup, the probability of sufficiency can be seen as a measure of attribution for the set of intervened features. The probability of sufficiency is to be read as a measure of attribution of intervened value <inline-formula><mml:math id="M68"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> toward alternative outcome &#x00177;&#x02032; in a context (e.g. <bold><italic>x</italic></bold>, &#x00177;), and is only indirectly descriptive of observed <inline-formula><mml:math id="M69"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>&#x00027;s attribution toward observed &#x00177;. In the special case where <inline-formula><mml:math id="M70"><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mo>&#x003A9;</mml:mo></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mn>2</mml:mn></mml:math></inline-formula>, i.e., it is a single binary concept that is intervened, the probability of sufficiency can be interpreted as a concept importance score as defined for XAI, reflecting the probabilities for the <italic>sufficiency</italic> of the counterfactual concept value toward the counterfactual outcome and the <italic>necessity</italic> of the original concept value toward the original outcome.</p>
</sec>
<sec>
<label>4.2.4</label>
<title>Contrastive explanations</title>
<p>The presented framework enables the generation of contrastive explanations. The contrastive explanation form considered, based on the explanation form first introduced by <xref ref-type="bibr" rid="B13">Galhotra et al. (2021)</xref>, is summarized as: For a data instance <bold><italic>x</italic></bold> that has concept values <bold><italic>z</italic></bold>, and for which a model <italic>h</italic> made the decision &#x00177;, the decision would have been &#x00177;&#x02032; with probability <italic>p</italic> had the concept(s) <inline-formula><mml:math id="M71"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> taken value(s) <inline-formula><mml:math id="M72"><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> with <inline-formula><mml:math id="M73"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula> the subset of the concepts that are changed by (hypothetical) intervention. The probability <italic>p</italic> is the local probability of sufficiency <inline-formula><mml:math id="M74"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>.</p>
<p>When selecting the best contrastive explanations from a set of contrastive samples, similarity with the original data instance is typically measured (<xref ref-type="bibr" rid="B33">Wachter et al., 2018</xref>). When data features are changed independently, similarity can be calculated as number of changed features. With the contrastive form presented here, similarity is interpreted as the number of variables intervened upon, i.e. <inline-formula><mml:math id="M75"><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo></mml:math></inline-formula>. Additionally, the probability <italic>p</italic> must be considered when evaluating a potential explanation. Generally, it is reasonable to expect <italic>p</italic> to be high in order for the explanation to be useful. In some cases, a limit <italic>p</italic><sup>&#x0002A;</sup> for this probability may be given, such that it is required that <italic>p</italic> &#x02265; <italic>p</italic><sup>&#x0002A;</sup> for a sample to be considered an explanation. This in turn may allow a simplified explanation form where <italic>p</italic> is omitted, which is argued helpful in increasing understandability (<xref ref-type="bibr" rid="B25">Miller, 2019</xref>).</p>
<p>Searching for optimal contrastive explanations of the form presented, maximizing similarity and probability, is left for future work.</p>
</sec>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Examples</title>
<p>In this section, we will exemplify the explanatory process outlined above using an example. We work with the CelebA dataset (<xref ref-type="bibr" rid="B23">Liu et al., 2015</xref>). This dataset contains more than 200.000 images of celebrities&#x00027; faces, each annotated with binary attributes describing facial features and accessories (e.g., if the subject is <italic>smiling, wearing glasses</italic>, of <italic>young age</italic> or is <italic>looking attractive</italic>). We will consider two tasks: classifying whether an image is of a <sans-serif>Young</sans-serif> person and whether the person is <sans-serif>Attractive</sans-serif>.</p>
<sec>
<label>5.1</label>
<title>Models</title>
<p>We implemented the conceptual model in <xref ref-type="fig" rid="F1">Figure 1</xref> as a computational pipeline and will now describe each part separately. Each image <inline-formula><mml:math id="M76"><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>&#x02208;</mml:mo><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:math></inline-formula> in the dataset is annotated with a corresponding set of binary descriptors <bold><italic>z</italic></bold><sub><italic>i</italic></sub>, and we will use a subset of the concepts in <bold>z</bold> as vocabulary when explaining the classifier <italic>h</italic>(&#x000B7;). For each explanation task, we chose the subset by investigating which concepts correlate the most with the target concept (<sans-serif>Young</sans-serif> and <sans-serif>Attractive</sans-serif>). The resulting subsets can be identified as the node-sets of the models in <xref ref-type="fig" rid="F4">Figures 4</xref>, <xref ref-type="fig" rid="F5">5</xref>, respectively.</p>
<fig position="float" id="F4">
<label>Figure 4</label>
<caption><p>The causal model over concepts relevant for the age-classifier.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0004.tif">
<alt-text content-type="machine-generated">Diagram depicting a Bayesian network. Nodes include &#x0201C;Gender,&#x0201D; &#x0201C;Young,&#x0201D; &#x0201C;Makeup,&#x0201D; &#x0201C;Smiling,&#x0201D; &#x0201C;5 o&#x00027;Clock Shadow,&#x0201D; &#x0201C;Bushy Eyebrows,&#x0201D; &#x0201C;Big Nose,&#x0201D; &#x0201C;Arched Eyebrows,&#x0201D; and &#x0201C;Pointy Nose.&#x0201D; Directed arrows indicate dependency relationships among these nodes, showing how some attributes influence others.</alt-text>
</graphic>
</fig>
<fig position="float" id="F5">
<label>Figure 5</label>
<caption><p>The causal model over concepts relevant for the attractiveness-classifier.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0005.tif">
<alt-text content-type="machine-generated">Diagram depicting relationships between variables. &#x0201C;Gender&#x0201D; points to &#x0201C;Makeup&#x0201D; and &#x0201C;Gray Hair&#x0201D;. &#x0201C;Young&#x0201D; points to &#x0201C;Gray Hair&#x0201D; and &#x0201C;Glasses&#x0201D;. Arrows indicate directional influence among &#x0201C;Gender,&#x0201D; &#x0201C;Makeup,&#x0201D; &#x0201C;Young,&#x0201D; &#x0201C;Gray Hair,&#x0201D; and &#x0201C;Glasses&#x0201D;.</alt-text>
</graphic>
</fig>
<sec>
<label>5.1.1</label>
<title>The causal model <italic>M</italic></title>
<p>We build an FSCM over a selected subset of the concepts <bold>z</bold>. The causal structure was learned using an expert in the loop-method from pgmpy (<xref ref-type="bibr" rid="B3">Ankan and Textor, 2024</xref>), with a large language model (LLM) acting as the expert deciding on causal direction, and with the forced constraint that concepts <sans-serif>Young</sans-serif> and <sans-serif>Gender</sans-serif> should be independent. Conditional independence is also enforced for variables <sans-serif>Smiling</sans-serif> and <sans-serif>Big Nose</sans-serif>. The resulting structures are given in <xref ref-type="fig" rid="F4">Figure 4</xref> for the age classification and <xref ref-type="fig" rid="F5">Figure 5</xref> for the classification of attractiveness. The parameters of the FSCM defining the probability distribution <italic>p</italic>(<bold>u</bold>) were chosen to be sparse and meaningful, while compatible with the observed data <inline-formula><mml:math id="M77"><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:math></inline-formula>; see <xref ref-type="supplementary-material" rid="SM1">Appendix A</xref> for details. PSCM intervals are retrieved using the DCCC method for exact interval calculation (<xref ref-type="bibr" rid="B7">Bj&#x000F8;ru et al., 2025a</xref>). Counterfactual queries are calculated using BCAUSE (<xref ref-type="bibr" rid="B9">Caba&#x000F1;as, 2025</xref>).</p>
</sec>
<sec>
<label>5.1.2</label>
<title>The classifier <italic>h</italic></title>
<p>We use a 50-layer ResNet following the procedure of <xref ref-type="bibr" rid="B19">He et al. (2016)</xref>. While our framework can explain the behavior of <italic>any</italic> classifier, irrespectively of merit, we note that both classifiers performed at an acceptable level, with accuracies above 80%.</p>
</sec>
<sec>
<label>5.1.3</label>
<title>The observation model &#x003B1; and its inverse &#x003B1;<sup>&#x02212;1</sup></title>
<p>To have a complete computational pipeline for counterfactual explanations, we train a generative model as a means to represent the mapping between concept-space and data-space. In particular, we provide counterfactual data examples as follows: First, the mapping &#x003B1;<sup>&#x02212;1</sup>(<bold><italic>x</italic></bold>) &#x0003D; <bold><italic>z</italic></bold>, <bold><italic>w</italic></bold> is partially provided in the dataset itself, as each image <bold><italic>x</italic></bold><sub><italic>i</italic></sub> is annotated with concepts <bold><italic>z</italic></bold><sub><italic>i</italic></sub>. <bold><italic>w</italic></bold> is intended to capture the remaining information not described by <bold><italic>z</italic></bold>, e.g., image background. Here we simply set <bold><italic>w</italic></bold> &#x0003D; <bold><italic>x</italic></bold>, and will discuss the effects of this simplification in Section 5.3. We aim to evaluate a counterfactual explanation <inline-formula><mml:math id="M78"><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula> by calculating <inline-formula><mml:math id="M79"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, cf. Section 4.2. This requires generation of counterfactual data-objects &#x003B1;(<bold><italic>z</italic></bold>&#x02032;, <bold><italic>w</italic></bold>) where <inline-formula><mml:math id="M80"><mml:msup><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>&#x0222A;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula> is consistent with the causal model <italic>M</italic> (see Equation 1). Our implementation adopts the StarGAN architecture (<xref ref-type="bibr" rid="B10">Choi et al., 2018</xref>) for image-to-image translation in order to provide the functionality of &#x003B1;(<bold><italic>z</italic></bold>&#x02032;, <bold><italic>w</italic></bold>). StarGAN takes an image <bold><italic>x</italic></bold> and a binary vector of high-level concepts <bold><italic>z</italic></bold>&#x02032; as inputs and produces an alternation of <bold><italic>x</italic></bold> consistent with concept description <inline-formula><mml:math id="M81"><mml:msup><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:msup><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup><mml:mo>&#x0222A;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x0222A;</mml:mo><mml:mstyle mathvariant='bold'><mml:munder accentunder='true'><mml:mi>z</mml:mi><mml:mo>_</mml:mo></mml:munder></mml:mstyle></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula> but otherwise incentivized to be close to <bold><italic>x</italic></bold>.</p>
</sec>
</sec>
<sec>
<label>5.2</label>
<title>Results</title>
<sec>
<label>5.2.1</label>
<title>Local explanation</title>
<p>We first consider the images in <xref ref-type="fig" rid="F6">Figure 6</xref>. For each row, the original image is given to the left, and we look for explanations of why these people are classified as being young. The explanation engine outlined above provides justification by answering counterfactual questions of the type &#x0201C;<italic>Would the model</italic> <italic>h</italic>(&#x000B7;) <italic>classify the person as young if</italic> &#x02329;<italic>counterfactual</italic>&#x0232A;<italic>?&#x0201D;</italic>, where the counterfactual is defined using the vocabulary shown in <xref ref-type="fig" rid="F4">Figure 4</xref>. An intermediate step of producing explanations is to generate counterfactual images as described above. The counterfactual images shown in columns 2 and 3 are related to the concepts <sans-serif>Glasses</sans-serif> and <sans-serif>Gray Hair</sans-serif>. Adding glasses is not sufficient for the classifier to change its evaluation of either person in this example, but changing hair color is sufficient for the male to be classified as old<xref ref-type="fn" rid="fn0004"><sup>2</sup></xref>.</p>
<fig position="float" id="F6">
<label>Figure 6</label>
<caption><p>Example images to be explained together with several counterfactual variations. The left-most images are the originals, with <bold>z</bold>-vectors (<sans-serif>Gender</sans-serif> &#x0003D; 1, <sans-serif>Glasses</sans-serif> &#x0003D; 0, <sans-serif>Makeup</sans-serif> &#x0003D; 0, <sans-serif>Gray Hair</sans-serif> &#x0003D; 0, <sans-serif>Young</sans-serif> &#x0003D; 1) (top) and (<sans-serif>Gender</sans-serif> &#x0003D; 0, <sans-serif>Glasses</sans-serif> &#x0003D; 0, <sans-serif>Makeup</sans-serif> &#x0003D; 1, <sans-serif>Gray Hair</sans-serif> &#x0003D; 0, <sans-serif>Young</sans-serif> &#x0003D; 1) (bottom). From second from the left to right, the columns contain the counterfactuals with <sans-serif>Glasses</sans-serif> &#x0003D; 1, <sans-serif>Gray Hair</sans-serif> &#x0003D; 1, <sans-serif>Young</sans-serif> &#x0003D; 0, and <sans-serif>Gray Hair</sans-serif> &#x0003D; 1 &#x00026; <sans-serif>Young</sans-serif> &#x0003D; 0, all else as in original. The images are classified as young, young, old, old, old (top), and young, young, young, old, old (bottom). Thus, all images are correctly classified except the top third from the left, which is wrongly classified as old after intervening on gray hair only. Note that the original images shown in this figure and in the rest of the figures presented in this section are generated with the explanation generator, by inputting dataset images along with their original z-vector. This is done to ensure copyright compliance. The real dataset images can be found through the CelebA website (<ext-link ext-link-type="uri" xlink:href="https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html">https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html</ext-link>).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0006.tif">
<alt-text content-type="machine-generated">Two rows of five images show the progression of artificial aging applied to two people. The top row features a person with short hair, gradually aging from left to right. The bottom row shows a person with long hair, also aging progressively from left to right.</alt-text>
</graphic>
</fig>
<p>Note that even though <sans-serif>Young</sans-serif> is a concept in the causal model, its value is in general distinct from the predicted value &#x00177; &#x0003D; <italic>h</italic>(<bold><italic>x</italic></bold>) as the classifier is not infallible. Intervening in the causal model <italic>M</italic> with do(<sans-serif>Young</sans-serif> &#x0003D; 0) will imply higher probabilities of both <sans-serif>Gray Hair</sans-serif> and <sans-serif>Glasses</sans-serif> (consider the causal model in <xref ref-type="fig" rid="F4">Figure 4</xref>), in addition to other visual cues related to this concept, like higher affinity for wrinkles and under-eye bags. To examine counterfactuals with <inline-formula><mml:math id="M82"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula>, we need to marginalize out the uncertainty in the concepts <inline-formula><mml:math id="M83"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Glasses</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Gray Hair</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula>, cf. Equation 1. Two of the counterfactual data-points produced by &#x003B1; to make this calculation are shown in columns 4 and 5 of <xref ref-type="fig" rid="F6">Figure 6</xref>. We eventually find that <inline-formula><mml:math id="M84"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula> for both subjects, validating the explanation that the model <italic>h</italic>(&#x000B7;) would indeed consider both persons to look old if they were old.</p>
<p>We next turn to the images in <xref ref-type="fig" rid="F7">Figure 7</xref>. Following from the original image on the left, the figure shows different counterfactual images all consistent with the intervention do(<sans-serif>Young</sans-serif> &#x0003D; 0). The first counterfactual image, obtained by the intervention do(<sans-serif>Young</sans-serif> &#x0003D; 0, <sans-serif>Glasses</sans-serif> &#x0003D; 0, <sans-serif>Gray Hair</sans-serif> &#x0003D; 0), is erroneously classified as being of a young person, while the other counterfactual images are correctly identified as being of old subjects. Using these counterfactual images to marginalize out the uncertainty over <inline-formula><mml:math id="M117"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>, we can calculate <inline-formula><mml:math id="M86"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>=</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula><inline-graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-i0001.tif"/>, <inline-formula><mml:math id="M118"><mml:mrow><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, the probability that the classifier would classify the subject as old in the counterfactual world where <sans-serif>Young</sans-serif> &#x0003D; 0. The probabilistic model-class employed to do the calculations will provide different results, as showcased in <xref ref-type="table" rid="T1">Table 1</xref>.</p>
<fig position="float" id="F7">
<label>Figure 7</label>
<caption><p>Counterfactual versions of the image to the left (classification results are given in parentheses): <sans-serif>Young</sans-serif> &#x0003D; 0 (<italic>h</italic>(<bold><italic>x</italic></bold>&#x02032;) is young), <sans-serif>Young</sans-serif> &#x0003D; 0 &#x00026; <sans-serif>Gray Hair</sans-serif> &#x0003D; 1 (Old), <sans-serif>Young</sans-serif> &#x0003D; 0 &#x00026; <sans-serif>Glasses</sans-serif> &#x0003D; 1 (Old), <sans-serif>Young</sans-serif> &#x0003D; 0 &#x00026; <sans-serif>Gray Hair</sans-serif> &#x0003D; 1 &#x00026; <sans-serif>Glasses</sans-serif> &#x0003D; 1 (Old). The <bold>z</bold>-vector of the original image is (<sans-serif>Gender</sans-serif> &#x0003D; 0, <sans-serif>Glasses</sans-serif> &#x0003D; 0, <sans-serif>Makeup</sans-serif> &#x0003D; 1, <sans-serif>Gray Hair</sans-serif> &#x0003D; 0, <sans-serif>Young</sans-serif> &#x0003D; 1). Note that the original images shown in this figure and in the rest of the figures presented in this section are generated with the explanation generator, by inputting dataset images along with their original z-vector. This is done to ensure copyright compliance. The real dataset images can be found through the CelebA website (<ext-link ext-link-type="uri" xlink:href="https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html">https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html</ext-link>).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0007.tif">
<alt-text content-type="machine-generated">Five portraits of a woman displayed in a row show counterfactual versions of an original image. The first image depicts the original image, of a young woman with long blonde hair and without glasses. The subsequent images show the woman with an aged face; with an aged face and with gray hair; with an aged face and with glasses; and with an aged face, gray hair and glasses.</alt-text>
</graphic>
</fig>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>Probability of sufficiency for counterfactual intervention on the variable <inline-formula><mml:math id="M87"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle></mml:math></inline-formula> for the leftmost image in <xref ref-type="fig" rid="F7">Figure 7</xref>.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="left"><bold>Model type</bold></th>
<th valign="top" align="center"><bold><inline-formula><mml:math id="M88"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>x</mml:mi></mml:mstyle><mml:mo>=</mml:mo></mml:mrow></mml:mrow></mml:math></inline-formula><inline-graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-i0001.tif"/>, <inline-formula><mml:math id="M85"><mml:mrow><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">FSCM</td>
<td valign="top" align="center">0.121</td>
</tr>
<tr>
<td valign="top" align="left">PSCM (canonical)</td>
<td valign="top" align="center">[0.121, 0.138]</td>
</tr>
<tr>
<td valign="top" align="left">Independence</td>
<td valign="top" align="center">0.0</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p><italic>FSCM</italic>: The fully specified SCM is the only model representation able to calculate the counterfactual probabilities directly; <italic>PSCM</italic>: The canonical partially specified SCM bounds the query according to all possible FSCMs compatible with the dataset; <italic>Independence</italic>: Assumes all variables in <bold>z</bold> are independent; <italic>CBN</italic>: For comparison, while not able to compute the query shown in the table, a CBN can compute the interventional query <inline-formula><mml:math id="M89"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Gender</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Makeup</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle><mml:mo>=</mml:mo><mml:mrow><mml:msubsup><mml:mi>&#x003B1;</mml:mi><mml:mstyle mathvariant="bold-italic"><mml:mi>w</mml:mi></mml:mstyle><mml:mrow><mml:mo>&#x02212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:mrow></mml:mrow></mml:mrow></mml:math></inline-formula> (<inline-graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-i0001.tif"/>)) = 0.137, which has a slightly different interpretation. Intervening on <sans-serif>Young</sans-serif> with the CBN resamples <sans-serif>Gray Hair</sans-serif> and <sans-serif>Glasses</sans-serif> disregarding their observed values. Note that while the CBN value is contained in the PSCM interval, it is in this case in the opposite end of the interval compared to the FSCM value, suggesting the interventional query is not always a reliable approximation.</p>
</table-wrap-foot>
</table-wrap>
<p>While XAI systems that solely rely on visual assessment can be misleading (<xref ref-type="bibr" rid="B1">Adebayo et al., 2018</xref>), saliency maps are still an often-used technique for attribution-based explanations of image classification systems. We, therefore, compare the results of our causal concept-based explanations with the results of Grad-CAM (<xref ref-type="bibr" rid="B32">Selvaraju et al., 2017</xref>) using the implementation by <xref ref-type="bibr" rid="B16">Gildenblat (2021)</xref>. Consider first the results in <xref ref-type="fig" rid="F8">Figure 8</xref> which are intended to explain why the two actual (far left) images in <xref ref-type="fig" rid="F6">Figure 6</xref> were classified as being young. Surprisingly, the top of the head is important for the female&#x00027;s classification while the area around the eyes and one of the ears are of most importance for the classification of the male. Next, <xref ref-type="fig" rid="F9">Figure 9</xref> investigates the classification of the subject in <xref ref-type="fig" rid="F7">Figure 7</xref>. The first image was correctly classified as young, but according to the Grad-CAM explanation, the classifier has based this decision on elements detected in the image background. The explanation of the erroneously classified image to the right focuses on the forehead and the chin. Grad-CAM provides non-causal explanations, and therefore fails at giving counterfactual information. Instead of considering change, the explanation rather focuses on what part of the input space that are most indicative about the class being chosen the classifier. Furthermore, since the explanations are pixel-based, we do not get insights regarding <italic>why</italic> the highlighted areas are considered important.</p>
<fig position="float" id="F8">
<label>Figure 8</label>
<caption><p>The results of feature attribution by Grad-CAM on the original images in <xref ref-type="fig" rid="F6">Figure 6</xref>. Note that the original images shown in this figure and in the rest of the figures presented in this section are generated with the explanation generator, by inputting dataset images along with their original z-vector. This is done to ensure copyright compliance. The real dataset images can be found through the CelebA website (<ext-link ext-link-type="uri" xlink:href="https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html">https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html</ext-link>).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0008.tif">
<alt-text content-type="machine-generated">Two comparisons are shown of two images of faces next to heatmaps of the respective images. The first heatmap highlights the person's chin. The second heatmap highlights the area underneath the person&#x02019;s eyes.</alt-text>
</graphic>
</fig>
<fig position="float" id="F9">
<label>Figure 9</label>
<caption><p>The figure shows (from left to right) the original image from <xref ref-type="fig" rid="F7">Figure 7</xref>, Grad-CAM explanation of why the subject was classified as young, counterfactual image after do(<sans-serif>Young</sans-serif> &#x0003D; 0), Grad-CAM explanation of the erroneous classification that the subject is young. Note that the original images shown in this figure and in the rest of the figures presented in this section are generated with the explanation generator, by inputting dataset images along with their original z-vector. This is done to ensure copyright compliance. The real dataset images can be found through the CelebA website (<ext-link ext-link-type="uri" xlink:href="https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html">https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html</ext-link>).</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-g0009.tif">
<alt-text content-type="machine-generated">Two side-by-side comparisons of images of faces next to heatmap overlays. The first heatmap highlights the area underneath the person&#x02019;s eyes. The second heatmap highlights the person&#x02019;s forehead and chin.</alt-text>
</graphic>
</fig>
</sec>
<sec>
<label>5.2.2</label>
<title>Global explanation</title>
<p>As an example of subgroup-explanations, we provide the probability that changing a single concept would suffice to change <italic>h</italic>(&#x000B7;)&#x00027;s prediction of a person from being young (<inline-formula><mml:math id="M90"><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>) to being old in <xref ref-type="table" rid="T2">Table 2</xref>. We can write this probability compactly as <inline-formula><mml:math id="M91"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula>, cf. Equation 2, where the conditioning on <inline-formula><mml:math id="M92"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is used to ensure that the value of <bold>z</bold> is indeed changed by the intervention. For simplicity we restrict ourselves to the most relevant singleton interventions, <inline-formula><mml:math id="M93"><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>. As an example, consider the effect of setting <inline-formula><mml:math id="M94"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Gray Hair</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula>, <bold><italic>z</italic></bold><sub><italic>s</italic></sub> &#x0003D; 0 and <inline-formula><mml:math id="M95"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>. Now we are doing an investigation of the subpopulation of subjects that are classified as being young but do not have gray hair, looking for the counterfactual probability that the classifier would consider the subject to be old if their hair color had been changed to gray. The relatively large value for this probability shows that hair color is an important concept to explain the behavior of the classifier, which may be used to spark further investigation into potential bias in the classifier before it can be deployed. We investigate this further in <xref ref-type="table" rid="T3">Table 3</xref>, where the same calculation is broken down by gender and whether or not the subjects wear glasses. The effect is stronger among males than females, and albeit with a limited dataset, it also seems like the effect is stronger among those wearing glasses.</p>
<table-wrap position="float" id="T2">
<label>Table 2</label>
<caption><p>Probability of sufficiency for singleton interventions (i.e., <inline-formula><mml:math id="M99"><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>|</mml:mo><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>).</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="left"><bold>Intervention</bold></th>
<th valign="top" align="center"><bold><inline-formula><mml:math id="M100"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left"><sans-serif>Gray Hair</sans-serif> &#x0003D; 1</td>
<td valign="top" align="center">0.318</td>
</tr>
<tr>
<td valign="top" align="left"><sans-serif>Glasses</sans-serif> &#x0003D; 1</td>
<td valign="top" align="center">0.002</td>
</tr>
<tr>
<td valign="top" align="left"><sans-serif>Makeup</sans-serif> &#x0003D; 0</td>
<td valign="top" align="center">0.000</td>
</tr>
<tr>
<td valign="top" align="left"><sans-serif>Young</sans-serif> &#x0003D; 0</td>
<td valign="top" align="center">0.972</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>Interpreted as an attribution score, it reflects the probability that the counterfactual intervention is sufficient to change the prediction from young to old.</p>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T3">
<label>Table 3</label>
<caption><p>Probability of sufficiency for <sans-serif>Gray Hair</sans-serif>, broken down on each subject&#x00027;s <sans-serif>Gender</sans-serif> and status regarding <sans-serif>Glasses</sans-serif>.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="center" colspan="3"><bold>Subgroup</bold></th>
<th valign="top" align="center"><bold><inline-formula><mml:math id="M101"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:msub><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></bold></th>
</tr>
<tr>
<th valign="top" align="left"><sans-serif>Gender</sans-serif></th>
<th valign="top" align="left"><sans-serif>Glasses</sans-serif></th>
<th valign="top" align="center"><bold>Count</bold></th>
<th/>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Male</td>
<td valign="top" align="left">Both</td>
<td valign="top" align="center">519</td>
<td valign="top" align="center">0.580</td>
</tr>
<tr>
<td valign="top" align="left">Male</td>
<td valign="top" align="left">True</td>
<td valign="top" align="center">43</td>
<td valign="top" align="center">0.814</td>
</tr>
<tr>
<td valign="top" align="left">Male</td>
<td valign="top" align="left">False</td>
<td valign="top" align="center">476</td>
<td valign="top" align="center">0.559</td>
</tr>
<tr>
<td valign="top" align="left">Female</td>
<td valign="top" align="left">Both</td>
<td valign="top" align="center">986</td>
<td valign="top" align="center">0.181</td>
</tr>
<tr>
<td valign="top" align="left">Female</td>
<td valign="top" align="left">True</td>
<td valign="top" align="center">15</td>
<td valign="top" align="center">0.400</td>
</tr>
<tr>
<td valign="top" align="left">Female</td>
<td valign="top" align="left">False</td>
<td valign="top" align="center">971</td>
<td valign="top" align="center">0.177</td>
</tr>
<tr>
<td valign="top" align="left">Both</td>
<td valign="top" align="left">Both</td>
<td valign="top" align="center">1505</td>
<td valign="top" align="center">0.318</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>The <italic>Count</italic>-column shows the number of observations in the test-set (out of 2000) that met the requirements. There were, for instance, 43 males without gray hair wearing glasses that were initially classified as young in the test-set.</p>
</table-wrap-foot>
</table-wrap>
<p>Since setting <inline-formula><mml:math id="M96"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mrow><mml:mo stretchy="false">{</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle></mml:mrow><mml:mo stretchy="false">}</mml:mo></mml:mrow></mml:math></inline-formula> implies <inline-formula><mml:math id="M97"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02260;</mml:mo><mml:mi>&#x02205;</mml:mi></mml:math></inline-formula>, we must again marginalize out the uncertainty over <inline-formula><mml:math id="M98"><mml:mover accent="true"><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula>. How this is done depends on how the causal model <italic>M</italic> is represented (cf. <xref ref-type="table" rid="T4">Table 4</xref>). For this particular query, the canonical interval is narrow, such that the choice of FSCM has limited influence on the calculated probability of sufficiency. Using a model with independent concept variables slightly underestimates the global effect of the intervention, as was also shown to be the case locally for the image in <xref ref-type="fig" rid="F7">Figure 7</xref>.</p>
<table-wrap position="float" id="T4">
<label>Table 4</label>
<caption><p>Probability of sufficiency for counterfactual intervention on the variable <inline-formula><mml:math id="M104"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle></mml:math></inline-formula>.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="left"><bold>Model type</bold></th>
<th valign="top" align="center"><bold><inline-formula><mml:math id="M105"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>|</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">FSCM</td>
<td valign="top" align="center">0.972</td>
</tr>
<tr>
<td valign="top" align="left">PSCM (canonical)</td>
<td valign="top" align="center">[0.970, 0.973]</td>
</tr>
<tr>
<td valign="top" align="left">Independence</td>
<td valign="top" align="center">0.966</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p><italic>FSCM</italic>: The FSCM is the only model representation able to calculate the counterfactual probabilities directly; <italic>PSCM</italic>: The canonical PSCM bounds the query according to all possible FSCMs compatible with the dataset; <italic>Independence</italic>: Assumes all variables in <bold>z</bold> are independent.</p>
</table-wrap-foot>
</table-wrap>
<p>Global explanations are shown for the attractiveness classifier in <xref ref-type="table" rid="T5">Tables 5</xref>, <xref ref-type="table" rid="T6">6</xref>. <xref ref-type="table" rid="T5">Table 5</xref> shows the effect of singleton interventions in young people, grouped by their gender. The numbers are understood as follows, using the value 0.139 in the first row as an example: This is the probability that a female (<sans-serif>Gender</sans-serif> &#x0003D; 0) currently classified as unattractive (&#x00177; &#x0003D; 0) not having <sans-serif>5 o&#x00027;Clock Shadow</sans-serif> (<inline-formula><mml:math id="M102"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>&#x000AC;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> would be classified as attractive (&#x00177; &#x0003D; 1) if she did (<inline-formula><mml:math id="M103"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>). The table indicates that females improve their chance of being classified as attractive the most if they remove a possible <sans-serif>Big Nose</sans-serif>, whereas the best strategy for men is to obtain a <sans-serif>Pointy Nose</sans-serif> if they do not already have one. For comparison, concept attributions using TCAV scores (<xref ref-type="bibr" rid="B21">Kim et al., 2018</xref>) are included in <xref ref-type="table" rid="T7">Table 7</xref>. These values reflect how concept interventions are moving the prediction toward the subject being seen as more attractive. According to the TCAV scores, obtaining <sans-serif>Arched Eyebrows</sans-serif> is most beneficial for both genders, followed by the removal of <sans-serif>Bushy Eyebrows</sans-serif>. The differences in attribution from the two approaches are to be expected. TCAV concept directions are identified with labeled data per concept, with no causal considerations. Sufficiency scores, however, directly reference the probability of crossing a decision boundary, with sound causal interpretation. As an example, the sufficiency attributions for <sans-serif>Arched Eyebrows</sans-serif> in <xref ref-type="table" rid="T5">Table 5</xref> are estimated based on controlled generation of data where only the eyebrows change, thus reflecting the isolated effects of this change. The TCAV scores using observed data (conditioning on a value for <sans-serif>Arched Eyebrows</sans-serif>) are more prone to influence from correlated concepts. This could be an explanation for the contrasting results obtained for this concept by the two approaches.</p>
<table-wrap position="float" id="T5">
<label>Table 5</label>
<caption><p>Probability of sufficiency for singleton interventions to leaf variables in the explanation graph in <xref ref-type="fig" rid="F5">Figure 5</xref>, conditioned on <sans-serif>Young</sans-serif> = 1 and <sans-serif>Gender</sans-serif>, for changing the output of the attractiveness classifier from not attractive to attractive.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="center" colspan="2"><bold>Intervention</bold></th>
<th valign="top" align="center" colspan="2"><inline-formula><mml:math id="M106"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo class="qopname">&#x00304;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>|</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>&#x000AC;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Gender</mml:mtext></mml:mstyle><mml:mo>,</mml:mo><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></th>
</tr>
<tr>
<th valign="top" align="left"><inline-formula><mml:math id="M107"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula></th>
<th valign="top" align="center"><inline-formula><mml:math id="M108"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula></th>
<th valign="top" align="center"><sans-serif><bold>Gender</bold></sans-serif> = <bold>0</bold></th>
<th valign="top" align="center"><sans-serif><bold>Gender</bold></sans-serif> = <bold>1</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>5 o&#x00027;Clock shadow</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.139</td>
<td valign="top" align="center">0.117</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">-</td>
<td valign="top" align="center">0.000</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Arched eyebrows</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.034</td>
<td valign="top" align="center">0.003</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.085</td>
<td valign="top" align="center">0.214</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Bushy eyebrows</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.177</td>
<td valign="top" align="center">0.109</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.000</td>
<td valign="top" align="center">0.000</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Big nose</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.000</td>
<td valign="top" align="center">0.004</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.574</td>
<td valign="top" align="center">0.147</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Pointy nose</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.350</td>
<td valign="top" align="center">0.306</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.000</td>
<td valign="top" align="center">0.000</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Smiling</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.242</td>
<td valign="top" align="center">0.181</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.000</td>
<td valign="top" align="center">0.009</td>
</tr></tbody>
</table>
</table-wrap>
<table-wrap position="float" id="T6">
<label>Table 6</label>
<caption><p>Probability of sufficiency for counterfactual intervention do(<sans-serif>Makeup</sans-serif> &#x0003D; 1) for the subgroup <sans-serif>Young</sans-serif> = 1, <sans-serif>Gender</sans-serif> = 0 and <sans-serif>Makeup</sans-serif> = 0 classified as not attractive.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="left"><bold>Model type</bold></th>
<th valign="top" align="center"><bold><inline-formula><mml:math id="M109"><mml:mi>p</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:msub><mml:mrow><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mo class="qopname">do</mml:mo><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mstyle mathvariant="sans-serif"><mml:mtext>Makeup</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>|</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Gender</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Makeup</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext>y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">FSCM</td>
<td valign="top" align="center">0.410</td>
</tr>
<tr>
<td valign="top" align="left">PSCM (canonical)</td>
<td valign="top" align="center">[0.401,0.442]</td>
</tr>
<tr>
<td valign="top" align="left">Independence</td>
<td valign="top" align="center">0.353</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>Values for FSCM, PSCM, and Independence calculated as detailed for <xref ref-type="table" rid="T4">Table 4</xref>.</p>
</table-wrap-foot>
</table-wrap>
<table-wrap position="float" id="T7">
<label>Table 7</label>
<caption><p>TCAV scores quantifying the importance of various concepts for classifying attractiveness.</p></caption>
<table frame="box" rules="all">
<thead>
<tr>
<th valign="top" align="center" colspan="2"><bold>Intervention</bold></th>
<th valign="top" align="center" colspan="2"><inline-formula><mml:math id="M110"><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">TCAV</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mi>&#x02113;</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>&#x00177;</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>&#x02229;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mo>&#x000AC;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>&#x02229;</mml:mo><mml:mstyle mathvariant="sans-serif"><mml:mtext>Gender</mml:mtext></mml:mstyle></mml:mrow></mml:msub></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:math></inline-formula></th>
</tr>
<tr>
<th valign="top" align="left"><inline-formula><mml:math id="M111"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold"><mml:mtext>z</mml:mtext></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula></th>
<th valign="top" align="center"><inline-formula><mml:math id="M112"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover></mml:math></inline-formula></th>
<th valign="top" align="center"><sans-serif><bold>Gender</bold></sans-serif> <bold>= 0</bold></th>
<th valign="top" align="center"><sans-serif><bold>Gender</bold></sans-serif> <bold>= 1</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>5 o&#x00027;clock shadow</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.256</td>
<td valign="top" align="center">0.251</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">-</td>
<td valign="top" align="center">0.788</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Arched eyebrows</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.995</td>
<td valign="top" align="center">0.977</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.011</td>
<td valign="top" align="center">0.011</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Bushy eyebrows</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.182</td>
<td valign="top" align="center">0.292</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.835</td>
<td valign="top" align="center">0.796</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Big nose</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.314</td>
<td valign="top" align="center">0.270</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.745</td>
<td valign="top" align="center">0.714</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Pointy nose</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.660</td>
<td valign="top" align="center">0.646</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.325</td>
<td valign="top" align="center">0.344</td>
</tr>
<tr>
<td valign="top" align="left" rowspan="2"><sans-serif>Smiling</sans-serif></td>
<td valign="top" align="center">1</td>
<td valign="top" align="center">0.642</td>
<td valign="top" align="center">0.588</td>
</tr>
 <tr>
<td valign="top" align="center">0</td>
<td valign="top" align="center">0.408</td>
<td valign="top" align="center">0.443</td>
</tr></tbody>
</table>
<table-wrap-foot>
<p>Concept directions are probed at the penultimate convolutional layer, as is commonly done due to later layers having the highest linear separability. The held-out background dataset <inline-formula><mml:math id="M113"><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="script">D</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mo>*</mml:mo></mml:mrow></mml:msup></mml:math></inline-formula> is limited to samples classified as not attractive and is further partitioned based on <sans-serif>Gender</sans-serif> and intervened concepts. For <inline-formula><mml:math id="M114"><mml:mover accent="true"><mml:mrow><mml:mstyle mathvariant="bold-italic"><mml:mi>z</mml:mi></mml:mstyle></mml:mrow><mml:mo>&#x00304;</mml:mo></mml:mover><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>, we flip the concept direction to &#x02212;<bold><italic>v</italic></bold><sub><bold>z</bold></sub>, simulating removal of the concept.</p>
</table-wrap-foot>
</table-wrap>
<p>Note that the sufficiency scores also better reflect subgroup tendencies, with the effect of interventions to, e.g., <sans-serif>Big Nose</sans-serif>, <sans-serif>Arched Eyebrows</sans-serif> and <sans-serif>Smiling</sans-serif> being more distinct when comparing the male and female subgroups, than what is reflected by the TCAV scores.</p>
<p>Lastly, <xref ref-type="table" rid="T6">Table 6</xref> is included as an example of an explanation based on an intervention to a non-leaf variable in the explanation graph for the attractiveness classifier. For young females without makeup, the intervention <sans-serif>Makeup</sans-serif> = 1 is considered. It is shown that accounting for the causal influence of <sans-serif>Makeup</sans-serif> on the concepts representing appearance of <sans-serif>Pointy Nose</sans-serif> and <sans-serif>Arched Eyebrows</sans-serif>, attributes a higher effect of <sans-serif>Makeup</sans-serif> on the attractiveness prediction, as measured by the probability of sufficiency, compared to the independent intervention. The probability of sufficiency for <sans-serif>Pointy Nose</sans-serif> = 1 in particular, shown in <xref ref-type="table" rid="T5">Table 5</xref>, suggests that <sans-serif>Pointy Nose</sans-serif> = 1 increases the chance of predicted attractiveness, which is accounted for by the FSCM-based calculation of the probability of sufficiency of <sans-serif>Makeup</sans-serif> = 1. Independent intervention on <sans-serif>Makeup</sans-serif>, however, will not influence the value of <sans-serif>Pointy Nose</sans-serif>, and so the appearance of a pointy nose in the generated image will not change. The PSCM interval included in <xref ref-type="table" rid="T6">Table 6</xref> further suggest the independence-model underestimates the true causal effect of <sans-serif>Makeup</sans-serif> compared to all possible FSCMs compatible with the data, with the independent attribution notably lower than that of the lower PSCM bound.</p>
</sec>
</sec>
<sec>
<label>5.3</label>
<title>Discussion</title>
<sec>
<label>5.3.1</label>
<title>Assumptions</title>
<p>Section 5.2 presents a set of results obtained by implementing and testing a proof-of-concept explanation model for classifiers trained on the CelebA dataset. As discussed in Section 1, understandability and fidelity of explanations are contingent on the viability of the model assumptions under which explanations are generated. Thus, this section discusses the assumptions made for the proof-of-concept model presented, and their implications regarding explanation interpretation. While the design of this model is intentionally simplistic in order to feasibly illustrate the potential of the general framework, implementation-specific weaknesses are discussed to highlight challenges that may arise when model assumptions are violated.</p>
<sec>
<label>5.3.1.1</label>
<title>The explanation vocabulary</title>
<p>The CelebA dataset includes labels for 40 binary attributes. To feasibly model the SCM over the explanation vocabulary <bold>z</bold>, a subset of these 40 attributes is chosen for <bold>z</bold>, as detailed in Section 5.1. The remaining attributes are considered part of <bold>w</bold>. Two assumptions are made for this to be meaningful. The first is that the attributes included in <bold>z</bold> are independent of those left to be encoded in <bold>w</bold>, such that the effects of interventions in <bold>z</bold> are reliably mapped to <bold>x</bold> via &#x003B1;. The second is that the selection of concepts for <bold>z</bold> is reasonable for explaining <italic>h</italic> in areas of interest. As this is typically the decision boundary of <italic>h</italic>, this means that <bold>z</bold> should include those concepts that, when intervened upon, will move the corresponding input across this boundary (locally or globally). This selection should however not be influenced by expectations regarding which concepts should ideally guide <italic>h</italic>, as such a restriction for <bold>z</bold> could prevent the framework from detecting unexpected and potentially unwanted behavior in <italic>h</italic>.</p>
</sec>
<sec>
<label>5.3.1.2</label>
<title>The causal model</title>
<p>Given a selection of variables <bold>z</bold> now assumed to be independent of all other information present in <bold>x</bold>, the assumption that the causal structure and the structural equations of the SCM <italic>M</italic> accurately reflect the world, concludes the vocabulary context. The causal structure in the CelebA examples are mainly learned from data, by detecting (conditional) dependence among pairs of variables and querying an expert (an LLM or the model designer) for the most likely causal direction of this dependence. This results in substructures such as <sans-serif>Gender</sans-serif> &#x02192; <sans-serif>Smiling</sans-serif>, which could be argued not a true causal process. While a person&#x00027;s gender is not expected to have direct causal influence on the likelihood of them smiling, the dependence in the data is more likely a result of either an indirect effect through a mediator, such as a person&#x00027;s smiling habits being a result of the person&#x00027;s previous experiences with their society&#x00027;s gender biased expectations, or a confounder, such as the data selection process. If the former is the case, it is reasonable to keep the simplified causal component as part of the causal structure, omitting lower level details regarding the unobserved mediating factor. This argument is made in favor of including the components <sans-serif>Gender</sans-serif> &#x02192; <sans-serif>Smiling</sans-serif> and <sans-serif>Gender</sans-serif> &#x02192; <sans-serif>Makeup</sans-serif> in the example. If the latter is the case, one might wish to enforce independence in the final causal structure used for explanation, or otherwise adapt the causal model to include the unobserved confounder. In the discussed examples, the variables <sans-serif>Young</sans-serif> and <sans-serif>Gender</sans-serif> are modeled as independent despite dependence present in the data, according to such an argument. As the final choice of causal structure determines how explanations should be interpreted, this highlights the importance of including expert knowledge when designing the causal model.</p>
<p>Finally, when designing the structural equations of the model, reliable expert knowledge is again important. The PSCM intervals included illustrate that data and causal structure are not sufficient for exact counterfactual calculation, and knowledge about causal relationships may improve upon this.</p>
</sec>
<sec>
<label>5.3.1.3</label>
<title>StarGAN concept interventions</title>
<p>The StarGAN generator implemented to represent &#x003B1; takes an image <bold><italic>x</italic></bold> (consistent with concepts <bold><italic>z</italic></bold>) and a concept vector <bold><italic>z</italic></bold>&#x02032; as input, and generates <bold><italic>x</italic></bold>&#x02032; by minimal alterations to original <bold><italic>x</italic></bold> such that <bold><italic>x</italic></bold>&#x02032; is consistent with <bold><italic>z</italic></bold>&#x02032;. This domain translation is learned by optimizing over the ability of a set of concept classifiers to correctly classify generated samples, including a reconstruction loss encouraging &#x003B1;(<bold><italic>x</italic></bold>&#x02032;, <bold><italic>z</italic></bold>) &#x0003D; <bold><italic>x</italic></bold>. Thus, <bold>w</bold> &#x0003D; <bold>x</bold> which violates the framework assumption <bold>w</bold>&#x02AEB;<bold>z</bold>. It is rather assumed that the design of &#x003B1; ensures that when generating <bold><italic>x</italic></bold>&#x02032; &#x0003D; &#x003B1;(<bold><italic>x</italic></bold>, <bold><italic>z</italic></bold>&#x02032;), all information in <bold><italic>x</italic></bold> pertaining to original concept values <bold><italic>z</italic></bold> is replaced by introduced <bold><italic>z</italic></bold>&#x02032;, without influence from <bold><italic>z</italic></bold>. This assumption is validated to the extent of inspection of generated samples.</p>
<p>The focus of the implemented generator is efficient and reliable modeling of concept interventions, leaving state-of-the-art generative quality for future work. While the general quality of the generated images, as illustrated in <xref ref-type="fig" rid="F6">Figures 6</xref>, <xref ref-type="fig" rid="F7">7</xref>, may have unintended influence on the presented results, this is assumed negligible for the purpose of this proof-of-concept example.</p>
<p>The generator is learned from observations, and is therefore not guaranteed to isolate concepts as intended. For instance, if <bold>z</bold> &#x0003D; {<sans-serif>Young</sans-serif>}, it is plausible that the generator may learn to include gray hair as a data instance is mapped from young to old, as these attributes are expected to be dependent. However, if <bold>z</bold> &#x0003D; {<sans-serif>Young</sans-serif>, <sans-serif>Gray Hair</sans-serif>}, the generator is incentivized to avoid confusing the two attributes, as classifiers predicting both attributes influence learning. Because it is assumed that the explanation vocabulary is independent of all other information in <bold>x</bold>, it is therefore assumed that a single StarGAN generator trained with the complete vocabulary vector <bold>z</bold> as input, will both distinguish these concepts successfully, as well as avoid that any concept retains information expected to be part of <bold>w</bold>. This is verified by inspection.</p>
<p>Finally, some of the attributes of the CelebA dataset are highly simplistic, binarized versions of complex concepts, an example of this being the attribute <sans-serif>Young</sans-serif> representing a person&#x00027;s age as either young or old. Data generation is influenced accordingly. While the original dataset contains people of varied age, generated data are mapped to either young or old as learned binary categories. If an instance <bold><italic>x</italic></bold> representing a young person is input to the generator with a concept vector where <sans-serif>Young</sans-serif> = 1 is retained, the expectation is that the age of the generated image will remain unaltered. However, the generator will map the input to the binary representation of young, such that a very young person may be aged, while a close to old person will appear younger in the generated counterpart. Note that in the latter case, this can be especially adverse when explaining misclassified instances. Generated explanations for a person who is close to old may wrongly attribute a change in prediction to a change to a given concept, while it is the slight, unintended age adjustment that ensures the decision boundary is crossed. The results presented in Section 5.2 again assume this effect to be negligible for the data instances chosen to be explained. As this assumption is expected to be violated in a more general context, it illustrates the challenge of ensuring that explanations are generated and interpreted in the appropriate context.</p>
</sec>
<sec>
<label>5.3.1.4</label>
<title>Dataset</title>
<p>In the examples presented here, both the model <italic>h</italic> to be explained and the models that generate the explanations &#x003B1; and (parts of) <italic>M</italic> are learned from the same dataset. While this is not uncommon for XAI, it is briefly discussed as a potential cause of explanation bias.</p>
<p>The ability to explain decisions is important for many reasons, one of which is to detect unintended behavior of <italic>h</italic>, as can be a result of learning <italic>h</italic> from spurious correlations present in biased datasets. In this case, learning &#x003B1; and <italic>M</italic> from the same dataset could hinder detection of this particular behavior. Considering two concepts that are expected to be independent, but are in fact correlated in the data by some unknown confounder in the data generation process. If during vocabulary selection, one of these concepts are included in <bold>z</bold> while the other is left in <bold>w</bold>, the generator may learn a joint version of these concepts while referencing this information by name of the concept in <bold>z</bold> only. This highlights the importance of a sufficiently extensive vocabulary.</p>
<p>When learning the causal model <italic>M</italic>, it is typically a combination of data and expert knowledge that decides the final model, such that spurious correlations are more easily detected and removed if present among concepts at this level. For instance, there is a correlation between attributes age and gender in the CelebA dataset. This is identified in the presented example as spurious, such that these two concepts are modeled as independent in the explanation model considered. The ability to incorporate this type of expert knowledge is an important advantage of the causal framework. However, whenever data guides the learning, the causal model risks being biased by spurious correlations similarly to <italic>h</italic> and &#x003B1;.</p>
</sec>
</sec>
<sec>
<label>5.3.2</label>
<title>Choice of abstraction of model</title>
<p>The level of abstraction of a causal model <italic>M</italic> determines how the total causal influence of one variable on another is divided between direct and indirect causal influence. If the explanation vocabulary is restricted to be <bold>z</bold> &#x0003D; {<sans-serif>Young</sans-serif>}, the causal structure considered is</p>
<disp-formula id="E6"><mml:math id="M115"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>&#x02192;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>&#x02192;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>modeling the total causal effect as direct effect, abstracting away any mediators.</p>
<p>The example presented in <xref ref-type="fig" rid="F4">Figure 4</xref>, considers the structure</p>
<p><inline-graphic mimetype="image" mime-subtype="tiff" xlink:href="frai-08-1759000-i0002.tif"/></p>
<p>such that some of the total effect is mediated through variables gray hair and glasses.</p>
<p>With the data being images of people limited to visual information, it is conceivable that the vocabulary could be extended further such that all causal effect from young to an image <bold><italic>x</italic></bold> is mediated through some physical feature explicit in <bold>z</bold>:</p>
<disp-formula id="E7"><mml:math id="M116"><mml:mtable columnalign="left"><mml:mtr><mml:mtd><mml:mstyle mathvariant="sans-serif"><mml:mtext>Young</mml:mtext></mml:mstyle><mml:mo>&#x02192;</mml:mo><mml:mtext class="textrm" mathvariant="normal">all physical features</mml:mtext><mml:mo>&#x02192;</mml:mo><mml:mstyle mathvariant="bold"><mml:mtext>x</mml:mtext></mml:mstyle><mml:mo>&#x02192;</mml:mo><mml:mover accent="true"><mml:mrow><mml:mtext class="textrm" mathvariant="normal">y</mml:mtext></mml:mrow><mml:mo>^</mml:mo></mml:mover></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>In all three models, the total causal influence of young on the image and prediction is the same, illustrating that it is a reliable measure independent of abstraction. However, if an explanation model ignores the causal structure by intervening on variables as if independent, only the direct effect is captured, which varies from equal to the total effect for the first model, to 0 for the last model. Thus, direct influence is not a consistent measure.</p>
</sec>
</sec>
</sec>
<sec sec-type="discussion" id="s6">
<label>6</label>
<title>Discussion</title>
<p>The framework for causal post-hoc XAI presented in this study constitutes a substantial extension to a model <italic>h</italic> to be explained, requiring several additional model components and more extensive datasets than those used to train <italic>h</italic>. While implementation is more demanding than feature-based or non-causal XAI methods, the main argument in favor of this framework is the understandability it facilitates, both in terms of vocabulary and causal interpretation. The concept vocabulary requires concept information such as labels, but allows explanation of the model in an extended context in which changes to the model input, and subsequently output, has meaningful interpretation. The causal modeling additionally requires expert knowledge, but lets the framework admit counterfactual reasoning within the extended context to identify the causes of model outputs, a property identified as especially advantageous for human explainees (<xref ref-type="bibr" rid="B25">Miller, 2019</xref>). As discussed in Section 5.3.2, having a causal model over the considered vocabulary allows estimating the total causal effect between variables, argued a more consistent measure than direct causal effect. This illustrates how even though causal modeling is required for generation of explanations, interpretation of the resulting explanations will require less awareness of model details.</p>
<p>Section 5.3.1 discusses the challenges arising when model assumptions are violated, which suggests that model choices should be made carefully. Whenever model assumptions are found to introduce a bias in explanations, either the model must be adapted or, if not feasible, the explainee must be informed about the biased context in which the explanations are valid. This is, however, not meant to indicate that complex models with less assumptions are always favored over simpler ones. For instance, to ensure that explanations are generated in accordance with their expected causal interpretation, the causal model is primarily required to reflect a level of abstraction consistent with that of the explainee&#x00027;s causal understanding of the world (assumed imprecise but not false). With understandability as a main goal, abstracting away certain low-level singular causal mechanisms is preferable, condensing relevant information into a more accessible representation.</p>
<p>Another significant advantage of the causal explanation model discussed in Section 5.3.1 is that the process of causal modeling of concepts, reliant on some contribution of expert knowledge, is more robust regarding detecting and removing spurious correlations than data-driven modeling. Thus, the explanation model can identify spurious relationships learned by the predictor, even in some cases where the same dataset is used to learn the explanation model. With expert knowledge becoming more accessible through LLMs, as demonstrated with the example presented, this has potential particularly for XAI targeting model improvement through detecting unintended model behavior.</p>
<p>The part of the explanation model that is the most challenging to design is typically the structural equations of the FSCM. Canonical PSCM intervals for counterfactual queries are included in the results presented in Section 5.2 to illustrate what is lost when the true causal mechanisms cannot be determined. For some queries, as seen in the results, the intervals are narrow, suggesting a reasonable approximation of the true value may be given by the interval mean or even by approximate queries using a CBN, as exact model choice is of less consequence. However, this is not guaranteed to be the case. In general, when conditioning on observed events of low probability, a counterfactual probability may range from 0 to 1 depending on the model considered. Two different FSCMs that are both consistent with the data may therefore generate opposite explanations of the same model, and even claim these as certain outcomes. Considering that less likely observations can be especially important to explain reliably, for instance when making sure predictions are meaningful even in areas with limited training data, the general framework still requires access to an FSCM to guarantee arbitrary query calculation. Note that non-canonical PSCMs defined by partial expert knowledge may reduce the size of the intervals, extending the scope of queries that may be approximated. Future work may further compare the feasibility and capacity of various approaches to exact and approximate calculations.</p>
<p>While the types of explanations discussed in this work are based on calculating the probability of sufficiency of concept interventions, this is not a limitation of the framework, and future work on extending the types of explanations considered may explore probabilities of necessity, as well as considering explanations exploring actual causation in line with <xref ref-type="bibr" rid="B6">Beckers (2022)</xref>.</p>
<p>Other lines of future work include developing general architectures for modeling the concept-to-data generative process, respecting the requirements detailed for the concept space while improving generative quality. Automated selection and detection of relevant concepts for the explanation vocabulary may be further explored by inspection of the model to be explained prior to designing the causal model for explanation. In a similar vein, comparing concept attributions can guide the selection of a reasonable vocabulary from a larger set of predefined concepts. Techniques for concept detection such as sparse autoencoders, that have been shown to be useful for detecting interpretable concepts without access to human-annotated data (<xref ref-type="bibr" rid="B11">Cunningham et al., 2023</xref>), may further help suggest relevant concepts to be included in the vocabulary without being influenced by preconceptions about concept importance. Automated concept detection could help ensure that the vocabulary contains the most relevant concepts by considering how well they approximate the original model, and whether interventions to the concepts are likely to cross a decision boundary.</p>
<p>Additionally, existing concept attribution methods may be used to guide the search for selecting optimal explanations. Specifically, the number of counterfactuals that can be considered grows exponentially in the number of concepts, for instance 2<sup>|<bold>z</bold>|</sup> for binary concepts. In those computationally heavy cases, concept attribution can serve as a heuristic, for example, by ordering concepts to intervene on, combined with early stopping strategies.</p>
<p>Finally, future work on testing the quality of the explanations is necessary. This in particular applies to the choice of causal model, which because it relies on expert knowledge, is required verified for each application. The wrong choice of causal model will, in the worst case, compromise both fidelity and understandability. First, to ensure fidelity, the chosen causal model must align as closely as possible with the ground truth causal mechanisms governing the environment modeled, to the chosen degree of abstraction. The comparison of causal calculations with independent concepts and with a more complex causal structure presented in Section 5.2 provides a preliminary illustration regarding the influence of the choice of causal structure. The PSCM intervals further illustrate that even assuming a correctly designed structure, multiple models can be considered with different structural function configurations, which give inconsistent explanations. The sensitivity of the explanation framework with regards to the choice of structural equations is given by the size of the PSCM interval, and is thus quantifiable. Future work is needed to analyze the sensitivity of the framework with regards to the choice of variables and their structure.</p>
<p>To ensure understandability, the model should align with the user&#x00027;s mental causal model. Ideally, the user&#x00027;s model aligns with the ground truth, presenting a unified goal. If this is not the case, however, fidelity should not be compromised. Further research employing user studies can investigate how to ensure that the explanations are presented for optimal understandability with reference to the causal model of the framework, if this model deviates from the user&#x00027;s mental model.</p>
</sec>
<sec sec-type="conclusions" id="s7">
<label>7</label>
<title>Conclusion</title>
<p>This study introduces a conceptual framework for causal concept-based XAI, that is designed to allow generation of causal and counterfactual explanations in a concept vocabulary. The framework consists of a causal model over the concepts in the vocabulary, and a causal generator that maps concepts to data features. The generation of local and global explanations using this framework, based on the probability of sufficiency of concept interventions, is detailed. A proof-of-concept explanation model is applied to classifiers trained on the CelebA dataset, and a selection of explanations generated is presented. These results show promise and motivate future work toward improved realization of the conceptual framework in generalized domains, and toward testing the achieved understandability and fidelity of the explanations.</p>
</sec>
</body>
<back>
<sec sec-type="data-availability" id="s8">
<title>Data availability statement</title>
<p>Publicly available datasets were analyzed in this study. This data can be found here: <ext-link ext-link-type="uri" xlink:href="https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html">https://mmlab.ie.cuhk.edu.hk/projects/CelebA.html</ext-link>.</p>
</sec>
<sec sec-type="author-contributions" id="s9">
<title>Author contributions</title>
<p>ARB: Visualization, Formal analysis, Methodology, Validation, Project administration, Investigation, Software, Writing &#x02013; original draft, Writing &#x02013; review &#x00026; editing, Conceptualization. JL-L: Writing &#x02013; review &#x00026; editing, Investigation, Software, Formal analysis, Visualization, Validation. OJ: Writing &#x02013; review &#x00026; editing, Formal analysis, Software, Investigation, Validation, Visualization. IS: Writing &#x02013; review &#x00026; editing, Validation, Supervision. HL: Supervision, Writing &#x02013; original draft, Writing &#x02013; review &#x00026; editing, Funding acquisition, Conceptualization, Investigation, Methodology.</p>
</sec>
<sec sec-type="COI-statement" id="conf1">
<title>Conflict of interest</title>
<p>The author(s) declared that this work was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="ai-statement" id="s11">
<title>Generative AI statement</title>
<p>The author(s) declared that generative AI was not used in the creation of this manuscript.</p>
<p>Any alternative text (alt text) provided alongside figures in this article has been generated by Frontiers with the support of artificial intelligence and reasonable efforts have been made to ensure accuracy, including review by the authors wherever possible. If you identify any issues, please contact us.</p>
</sec>
<sec sec-type="disclaimer" id="s12">
<title>Publisher&#x00027;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<sec sec-type="supplementary-material" id="s13">
<title>Supplementary material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/frai.2025.1759000/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/frai.2025.1759000/full#supplementary-material</ext-link></p>
<supplementary-material xlink:href="Data_Sheet_1.zip" id="SM1" mimetype="application/zip" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Adebayo</surname> <given-names>J.</given-names></name> <name><surname>Gilmer</surname> <given-names>J.</given-names></name> <name><surname>Muelly</surname> <given-names>M.</given-names></name> <name><surname>Goodfellow</surname> <given-names>I.</given-names></name> <name><surname>Hardt</surname> <given-names>M.</given-names></name> <name><surname>Kim</surname> <given-names>B.</given-names></name></person-group> (<year>2018</year>). <article-title>&#x0201C;Sanity checks for saliency maps,&#x0201D;</article-title> in <source>Proceedings of the International Conference on Neural Information Processing Systems</source> (<publisher-loc>Montr&#x000E9;al, QC</publisher-loc>: <publisher-name>NeurIPS 2018</publisher-name>), <fpage>9525</fpage>&#x02013;<lpage>9536</lpage>.</mixed-citation>
</ref>
<ref id="B2">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Angelov</surname> <given-names>P. P.</given-names></name> <name><surname>Soares</surname> <given-names>E. A.</given-names></name> <name><surname>Jiang</surname> <given-names>R.</given-names></name> <name><surname>Arnold</surname> <given-names>N. I.</given-names></name> <name><surname>Atkinson</surname> <given-names>P. M.</given-names></name></person-group> (<year>2021</year>). <article-title>Explainable artificial intelligence: an analytical review</article-title>. <source>WIREs Data Mining Knowl. Discov</source>. <volume>11</volume>:<fpage>e1424</fpage>. doi: <pub-id pub-id-type="doi">10.1002/widm.1424</pub-id></mixed-citation>
</ref>
<ref id="B3">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Ankan</surname> <given-names>A.</given-names></name> <name><surname>Textor</surname> <given-names>J.</given-names></name></person-group> (<year>2024</year>). <article-title>pgmpy: A Python toolkit for Bayesian networks</article-title>. <source>J. Mach. Learn. Res</source>. <volume>25</volume>, <fpage>1</fpage>&#x02013;<lpage>8</lpage>.</mixed-citation>
</ref>
<ref id="B4">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Avin</surname> <given-names>C.</given-names></name> <name><surname>Shpitser</surname> <given-names>I.</given-names></name> <name><surname>Pearl</surname> <given-names>J.</given-names></name></person-group> (<year>2005</year>). <article-title>&#x0201C;Identifiability of path-specific effects,&#x0201D;</article-title> in <source>Proceedings of the International Joint Conference on Artificial Intelligence</source> (<publisher-loc>Edinburgh</publisher-loc>: <publisher-name>IJCAI 2005</publisher-name>), <fpage>357</fpage>&#x02013;<lpage>363</lpage>.</mixed-citation>
</ref>
<ref id="B5">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Barredo Arrieta</surname> <given-names>A.</given-names></name> <name><surname>D&#x000ED;az-Rodr&#x000ED;guez</surname> <given-names>N.</given-names></name> <name><surname>Del Ser</surname> <given-names>J.</given-names></name> <name><surname>Bennetot</surname> <given-names>A.</given-names></name> <name><surname>Tabik</surname> <given-names>S.</given-names></name> <name><surname>Barbado</surname> <given-names>A.</given-names></name> <etal/></person-group>. (<year>2020</year>). <article-title>Explainable artificial intelligence (XAI): concepts, taxonomies, opportunities and challenges toward responsible AI</article-title>. <source>Inform. Fusion</source> <volume>58</volume>, <fpage>82</fpage>&#x02013;<lpage>115</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.inffus.2019.12.012</pub-id></mixed-citation>
</ref>
<ref id="B6">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Beckers</surname> <given-names>S.</given-names></name></person-group> (<year>2022</year>). <article-title>&#x0201C;Causal explanations and XAI,&#x0201D;</article-title> in <source>Proceedings of the First Conference on Causal Learning and Reasoning</source> (<publisher-loc>Eureka, CA</publisher-loc>: <publisher-name>CLeaR 2022</publisher-name>), <fpage>90</fpage>&#x02013;<lpage>109</lpage>.</mixed-citation>
</ref>
<ref id="B7">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Bj&#x000F8;ru</surname> <given-names>A. R.</given-names></name> <name><surname>Caba&#x000F1;as</surname> <given-names>R.</given-names></name> <name><surname>Langseth</surname> <given-names>H.</given-names></name> <name><surname>Salmer&#x000F3;n</surname> <given-names>A.</given-names></name></person-group> (<year>2025a</year>). <article-title>Divide and conquer for causal computation</article-title>. <source>Int. J. Approxim. Reason</source>. <volume>186</volume>:<fpage>109520</fpage>. doi: <pub-id pub-id-type="doi">10.1016/j.ijar.2025.109520</pub-id></mixed-citation>
</ref>
<ref id="B8">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Bj&#x000F8;ru</surname> <given-names>A. R.</given-names></name> <name><surname>Langseth</surname> <given-names>H.</given-names></name> <name><surname>Str&#x000FC;mke</surname> <given-names>I.</given-names></name> <name><surname>Bach</surname> <given-names>K.</given-names></name></person-group> (<year>2025b</year>). <article-title>Causal post-hoc XAI: categorization and systematic literature review</article-title>. <source>TechRxiv</source>. doi: <pub-id pub-id-type="doi">10.36227/techrxiv.176945882.23563107/v1</pub-id></mixed-citation>
</ref>
<ref id="B9">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Caba&#x000F1;as</surname> <given-names>R.</given-names></name></person-group> (<year>2025</year>). <source>BCAUSE: A Python Package for Causal and Counterfactual Reasoning Using Probabilistic Graphical models</source>.</mixed-citation>
</ref>
<ref id="B10">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Choi</surname> <given-names>Y.</given-names></name> <name><surname>Choi</surname> <given-names>M.</given-names></name> <name><surname>Kim</surname> <given-names>M.</given-names></name> <name><surname>Ha</surname> <given-names>J.-W.</given-names></name> <name><surname>Kim</surname> <given-names>S.</given-names></name> <name><surname>Choo</surname> <given-names>J.</given-names></name></person-group> (<year>2018</year>). <article-title>&#x0201C;StarGAN: Unified generative adversarial networks for multi-domain image-to-image translation,&#x0201D;</article-title> in <source>Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition</source> (<publisher-loc>Salt Lake City, UT</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>8789</fpage>&#x02013;<lpage>8797</lpage>.</mixed-citation>
</ref>
<ref id="B11">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Cunningham</surname> <given-names>H.</given-names></name> <name><surname>Ewart</surname> <given-names>A.</given-names></name> <name><surname>Riggs</surname> <given-names>L.</given-names></name> <name><surname>Huben</surname> <given-names>R.</given-names></name> <name><surname>Sharkey</surname> <given-names>L.</given-names></name></person-group> (<year>2023</year>). <article-title>Sparse autoencoders find highly interpretable features in language models</article-title>. <source>arXiv</source> [preprint] arXiv:2309.08600. doi: <pub-id pub-id-type="doi">10.48550/arXiv.2309.08600</pub-id></mixed-citation>
</ref>
<ref id="B12">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Dash</surname> <given-names>S.</given-names></name> <name><surname>Balasubramanian</surname> <given-names>V. N.</given-names></name> <name><surname>Sharma</surname> <given-names>A.</given-names></name></person-group> (<year>2022</year>). <article-title>&#x0201C;Evaluating and mitigating bias in image classifiers: A causal perspective using counterfactuals,&#x0201D;</article-title> in <source>Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision</source> (<publisher-loc>Waikoloa, HI</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>3879</fpage>&#x02013;<lpage>3888</lpage>.</mixed-citation>
</ref>
<ref id="B13">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Galhotra</surname> <given-names>S.</given-names></name> <name><surname>Pradhan</surname> <given-names>R.</given-names></name> <name><surname>Salimi</surname> <given-names>B.</given-names></name></person-group> (<year>2021</year>). <article-title>&#x0201C;Explaining black-box algorithms using probabilistic contrastive counterfactuals,&#x0201D;</article-title> in <source>Proceedings of the ACM SIGMOD International Conference on Management of Data</source> (<publisher-loc>New York, NY</publisher-loc>: <publisher-name>Association for Computing Machinery</publisher-name>), <fpage>577</fpage>&#x02013;<lpage>590</lpage>.</mixed-citation>
</ref>
<ref id="B14">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Galles</surname> <given-names>D.</given-names></name> <name><surname>Pearl</surname> <given-names>J.</given-names></name></person-group> (<year>1997</year>). <article-title>Axioms of causal relevance</article-title>. <source>Artif. Intell</source>. <volume>97</volume>, <fpage>9</fpage>&#x02013;<lpage>43</lpage>. doi: <pub-id pub-id-type="doi">10.1016/S0004-3702(97)00047-7</pub-id></mixed-citation>
</ref>
<ref id="B15">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Gerlings</surname> <given-names>J.</given-names></name> <name><surname>Shollo</surname> <given-names>A.</given-names></name> <name><surname>Constantiou</surname> <given-names>I.</given-names></name></person-group> (<year>2021</year>). <article-title>&#x0201C;Reviewing the need for explainable artificial intelligence (xAI),&#x0201D;</article-title> in <source>Proceedings of the Hawaii International Conference on System Sciences</source>.</mixed-citation>
</ref>
<ref id="B16">
<mixed-citation publication-type="web"><person-group person-group-type="author"><name><surname>Gildenblat</surname> <given-names>J.</given-names></name></person-group> (<year>2021</year>). <source>PyTorch Library for CAM Methods</source>. Available online at: <ext-link ext-link-type="uri" xlink:href="https://github.com/jacobgil/pytorch-grad-cam">https://github.com/jacobgil/pytorch-grad-cam</ext-link></mixed-citation>
</ref>
<ref id="B17">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Goodman</surname> <given-names>B.</given-names></name> <name><surname>Flaxman</surname> <given-names>S.</given-names></name></person-group> (<year>2017</year>). <article-title>European union regulations on algorithmic decision-making and a &#x0201C;right to explanation&#x0201D;</article-title>. <source>AI Magazine</source> <volume>38</volume>, <fpage>50</fpage>&#x02013;<lpage>57</lpage>. doi: <pub-id pub-id-type="doi">10.1609/aimag.v38i3.2741</pub-id></mixed-citation>
</ref>
<ref id="B18">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Gunning</surname> <given-names>D.</given-names></name> <name><surname>Aha</surname> <given-names>D. W.</given-names></name></person-group> (<year>2019</year>). <article-title>DARPA&#x00027;s explainable artificial intelligence program</article-title>. <source>AI Magazine</source> <volume>40</volume>, <fpage>44</fpage>&#x02013;<lpage>58</lpage>. doi: <pub-id pub-id-type="doi">10.1609/aimag.v40i2.2850</pub-id></mixed-citation>
</ref>
<ref id="B19">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>He</surname> <given-names>K.</given-names></name> <name><surname>Zhang</surname> <given-names>X.</given-names></name> <name><surname>Ren</surname> <given-names>S.</given-names></name> <name><surname>Sun</surname> <given-names>J.</given-names></name></person-group> (<year>2016</year>). <article-title>&#x0201C;Deep residual learning for image recognition,&#x0201D;</article-title> in <source>Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition</source> (<publisher-loc>Las Vegas, NV</publisher-loc>: <publisher-name>IEEE</publisher-name>), <fpage>770</fpage>&#x02013;<lpage>778</lpage>.</mixed-citation>
</ref>
<ref id="B20">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Jacovi</surname> <given-names>A.</given-names></name> <name><surname>Goldberg</surname> <given-names>Y.</given-names></name></person-group> (<year>2020</year>). <article-title>&#x0201C;Towards faithfully interpretable NLP systems: How should we define and evaluate faithfulness?,&#x0201D;</article-title> in <source>Proceedings of the Annual Meeting of the Association for Computational Linguistics</source> (<publisher-loc>Stroudsburg, PA</publisher-loc>: <publisher-name>Association for Computational Linguistics</publisher-name>), <fpage>4198</fpage>&#x02013;<lpage>4205</lpage>.</mixed-citation>
</ref>
<ref id="B21">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Kim</surname> <given-names>B.</given-names></name> <name><surname>Wattenberg</surname> <given-names>M.</given-names></name> <name><surname>Gilmer</surname> <given-names>J.</given-names></name> <name><surname>Cai</surname> <given-names>C.</given-names></name> <name><surname>Wexler</surname> <given-names>J.</given-names></name> <name><surname>Viegas</surname> <given-names>F.</given-names></name> <etal/></person-group>. (<year>2018</year>). <article-title>&#x0201C;Interpretability beyond feature attribution: Quantitative testing with concept activation vectors (TCAV),&#x0201D;</article-title> in <source>International Conference on Machine Learning</source> (<publisher-loc>New York</publisher-loc>: <publisher-name>PMLR</publisher-name>), <fpage>2668</fpage>&#x02013;<lpage>2677</lpage>.</mixed-citation>
</ref>
<ref id="B22">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Komanduri</surname> <given-names>A.</given-names></name> <name><surname>Zhao</surname> <given-names>C.</given-names></name> <name><surname>Chen</surname> <given-names>F.</given-names></name> <name><surname>Wu</surname> <given-names>X.</given-names></name></person-group> (<year>2024</year>). <article-title>Causal diffusion autoencoders: Toward counterfactual generation via diffusion probabilistic models</article-title>. <source>Front. Artif. Intellig. Appl</source>. <volume>392</volume>, <fpage>2516</fpage>&#x02013;<lpage>2523</lpage>. doi: <pub-id pub-id-type="doi">10.3233/FAIA240780</pub-id></mixed-citation>
</ref>
<ref id="B23">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Liu</surname> <given-names>Z.</given-names></name> <name><surname>Luo</surname> <given-names>P.</given-names></name> <name><surname>Wang</surname> <given-names>X.</given-names></name> <name><surname>Tang</surname> <given-names>X.</given-names></name></person-group> (<year>2015</year>). <article-title>&#x0201C;Deep learning face attributes in the wild,&#x0201D;</article-title> in <source>Proceedings of International Conference on Computer Vision (ICCV</source>) (Santiago: IEEE Computer Society).</mixed-citation>
</ref>
<ref id="B24">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Lundberg</surname> <given-names>S. M.</given-names></name> <name><surname>Lee</surname> <given-names>S.-I.</given-names></name></person-group> (<year>2017</year>). <article-title>&#x0201C;A unified approach to interpreting model predictions,&#x0201D;</article-title> in <source>Proceedings of the International Conference on Neural Information Processing Systems</source> (<publisher-loc>Long Beach, CA</publisher-loc>: <publisher-name>NeurIPS 2017</publisher-name>), <fpage>4768</fpage>&#x02013;<lpage>4777</lpage>.</mixed-citation>
</ref>
<ref id="B25">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Miller</surname> <given-names>T.</given-names></name></person-group> (<year>2019</year>). <article-title>Explanation in artificial intelligence: insights from the social sciences</article-title>. <source>Artif. Intell</source>. <volume>267</volume>, <fpage>1</fpage>&#x02013;<lpage>38</lpage>. doi: <pub-id pub-id-type="doi">10.1016/j.artint.2018.07.007</pub-id></mixed-citation>
</ref>
<ref id="B26">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Mothilal</surname> <given-names>R. K.</given-names></name> <name><surname>Mahajan</surname> <given-names>D.</given-names></name> <name><surname>Tan</surname> <given-names>C.</given-names></name> <name><surname>Sharma</surname> <given-names>A.</given-names></name></person-group> (<year>2021</year>). <article-title>&#x0201C;Towards unifying feature attribution and counterfactual explanations: different means to the same end,&#x0201D;</article-title> in <source>Proceedings of the AAAI/ACM Conference on AI, Ethics, and Society</source> (<publisher-loc>New York, NY</publisher-loc>: <publisher-name>Association for Computing Machinery</publisher-name>), <fpage>652</fpage>&#x02013;<lpage>663</lpage>.</mixed-citation>
</ref>
<ref id="B27">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Parafita</surname> <given-names>&#x000C1;.</given-names></name> <name><surname>Vitri&#x000E0;</surname> <given-names>J.</given-names></name></person-group> (<year>2019</year>). <article-title>&#x0201C;Explaining visual models by causal attribution,&#x0201D;</article-title> in <source>Proceedings of the International Conference on Computer Vision Workshop</source> (<publisher-loc>Seoul</publisher-loc>: <publisher-name>IEEE Computer Society</publisher-name>), <fpage>4167</fpage>&#x02013;<lpage>4175</lpage>.</mixed-citation>
</ref>
<ref id="B28">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Pawar</surname> <given-names>U.</given-names></name> <name><surname>Beder</surname> <given-names>C.</given-names></name> <name><surname>O&#x00027;Reilly</surname> <given-names>R.</given-names></name> <name><surname>O&#x00027;Shea</surname> <given-names>D.</given-names></name></person-group> (<year>2024</year>). <article-title>&#x0201C;On the impact of neighbourhood sampling to satisfy sufficiency and necessity criteria in explainable AI,&#x0201D;</article-title> in <source>Proceedings of the Conference on Causal Learning and Reasoning</source> (<publisher-loc>Los Angeles, CA</publisher-loc>: <publisher-name>CLeaR 2024</publisher-name>), <fpage>570</fpage>&#x02013;<lpage>586</lpage>.</mixed-citation>
</ref>
<ref id="B29">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Pearl</surname> <given-names>J.</given-names></name></person-group> (<year>2009</year>). <source>Causality</source>. Cambridge: Cambridge University Press.</mixed-citation>
</ref>
<ref id="B30">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Poeta</surname> <given-names>E.</given-names></name> <name><surname>Ciravegna</surname> <given-names>G.</given-names></name> <name><surname>Pastor</surname> <given-names>E.</given-names></name> <name><surname>Cerquitelli</surname> <given-names>T.</given-names></name> <name><surname>Baralis</surname> <given-names>E.</given-names></name></person-group> (<year>2025</year>). <article-title>&#x0201C;Concept-based explainable artificial intelligence: a survey,&#x0201D;</article-title> in <source>ACM Computing Surveys</source> (<publisher-loc>New York, NY</publisher-loc>: <publisher-name>Association for Computing Machinery</publisher-name>).</mixed-citation>
</ref>
<ref id="B31">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Ribeiro</surname> <given-names>M. T.</given-names></name> <name><surname>Singh</surname> <given-names>S.</given-names></name> <name><surname>Guestrin</surname> <given-names>C.</given-names></name></person-group> (<year>2016</year>). &#x0201C;&#x0201C;Why should I trust you?&#x0201D;: Explaining the predictions of any classifier,&#x0201D; in <source>Proceedings of the ACM SIGKDD International Conference on Knowledge Discovery and Data Mining</source>, 1135&#x02013;1144.</mixed-citation>
</ref>
<ref id="B32">
<mixed-citation publication-type="book"><person-group person-group-type="author"><name><surname>Selvaraju</surname> <given-names>R. R.</given-names></name> <name><surname>Cogswell</surname> <given-names>M.</given-names></name> <name><surname>Das</surname> <given-names>A.</given-names></name> <name><surname>Vedantam</surname> <given-names>R.</given-names></name> <name><surname>Parikh</surname> <given-names>D.</given-names></name> <name><surname>Batra</surname> <given-names>D.</given-names></name></person-group> (<year>2017</year>). <article-title>&#x0201C;Grad-CAM: visual explanations from deep networks via gradient-based localization,&#x0201D;</article-title> in <source>Proceedings of the IEEE International Conference on Computer Vision</source> (<publisher-loc>Venice</publisher-loc>: <publisher-name>IEEE Computer Society</publisher-name>), <fpage>618</fpage>&#x02013;<lpage>626</lpage>.</mixed-citation>
</ref>
<ref id="B33">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Wachter</surname> <given-names>S.</given-names></name> <name><surname>Mittelstadt</surname> <given-names>B.</given-names></name> <name><surname>Russell</surname> <given-names>C.</given-names></name></person-group> (<year>2018</year>). <article-title>Counterfactual explanations without opening the black box: Automated decisions and the GDPR</article-title>. <source>Harv. J. Law Technol</source>. <volume>31</volume>, <fpage>841</fpage>&#x02013;<lpage>887</lpage>. doi: <pub-id pub-id-type="doi">10.2139/ssrn.3063289</pub-id></mixed-citation>
</ref>
<ref id="B34">
<mixed-citation publication-type="journal"><person-group person-group-type="author"><name><surname>Zaffalon</surname> <given-names>M.</given-names></name> <name><surname>Antonucci</surname> <given-names>A.</given-names></name> <name><surname>Caba&#x000F1;as</surname> <given-names>R.</given-names></name> <name><surname>Huber</surname> <given-names>D.</given-names></name> <name><surname>Azzimonti</surname> <given-names>D.</given-names></name></person-group> (<year>2024</year>). <article-title>Efficient computation of counterfactual bounds</article-title>. <source>Int. J. Approx. Reason</source>. <volume>171</volume>:<fpage>109111</fpage>. doi: <pub-id pub-id-type="doi">10.1016/j.ijar.2023.109111</pub-id></mixed-citation>
</ref>
</ref-list>
<fn-group>
<fn fn-type="custom" custom-type="edited-by" id="fn0001">
<p>Edited by: <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1127728/overview">Joao Gama</ext-link>, University of Porto, Portugal</p>
</fn>
<fn fn-type="custom" custom-type="reviewed-by" id="fn0002">
<p>Reviewed by: <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/3309767/overview">Christian Beder</ext-link>, Munster Technological University, Ireland</p>
<p><ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/3309838/overview">Helmut Degen</ext-link>, Siemens Corporation, United States</p>
</fn>
</fn-group>
<fn-group>
<fn id="fn0003"><label>1</label><p>A more common notation for a counterfactual variable w given intervention do(v &#x0003D; <italic>v</italic>&#x02032;) is <inline-formula><mml:math id="M10"><mml:msub><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">w</mml:mtext></mml:mstyle></mml:mrow><mml:mrow><mml:mstyle class="text"><mml:mtext class="textrm" mathvariant="normal">v</mml:mtext></mml:mstyle><mml:mo>=</mml:mo><mml:msup><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x02032;</mml:mi></mml:mrow></mml:msup></mml:mrow></mml:msub></mml:math></inline-formula>. Here, do(&#x000B7;) is kept in the subscript to emphasize that the counterfactual value assignment is an intervention.</p></fn>
<fn id="fn0004"><label>2</label><p>We acknowledge that the comparatively poorer quality of the generated images with gray hair, presumably caused by an imbalanced dataset, can be a contributing factor to this result. We discuss this further in Section 5.3.</p></fn>
</fn-group>
</back>
</article>