Explainable AI develops representations and methods that help people understand, inspect, contest, and act on AI-system behavior. Explanations support debugging, scientific insight, model validation, regulated or high-impact decisions, operator trust calibration, failure analysis, and user recourse, but can mislead when they are unstable or unfaithful. Interpretability may be intrinsic to a transparent model or post-hoc for a complex model; explanations may be global or local, feature-based, example-based, concept-based, counterfactual, causal, mechanistic, or natural-language. Audience and decision determine the useful form. A professional responsible-AI claim identifies affected people, intended benefit, prohibited use, decision authority, data provenance, model capability, foreseeable misuse, uncertainty, recourse, monitoring, and accountable owner. Fairness, privacy, transparency, safety, accessibility, autonomy, and reliability can conflict and require explicit tradeoffs rather than a single ethics score.
Architecture, representation, and operating mechanism. SHAP attributes a prediction using Shapley-inspired values under a background/feature-dependence choice; LIME fits a local surrogate around perturbed samples; gradients and integrated gradients attribute differentiable outputs; saliency visualizes inputs; concept activation probes human concepts; counterfactuals search actionable changes. An explanation method receives model, input, output, reference distribution or perturbation process, and constraints, then produces attributions, examples, rules, concepts, or alternatives. A user interface communicates scope and uncertainty, and feedback/testing checks whether the explanation supports the intended task. Fidelity to model behavior, stability, sensitivity, completeness, localization, sparsity, plausibility, actionability, computational cost, human comprehension, decision improvement, trust calibration, subgroup consistency, and resistance to manipulation matter. Interfaces, defaults, incentives, human workflow, automation level, tool permissions, business policy, organizational governance, and downstream action often determine harm more than the model score. Defense in depth limits consequence when predictions are wrong or misused. Evaluation combines task utility with subgroup and intersectional performance, calibration, harmful-error severity, robustness, privacy risk, explanation fidelity, human override, complaint and appeal outcomes, incident rate, latency, cost, and uncertainty. Aggregate accuracy can conceal systematic harm, and a fairness metric chosen after seeing results can rationalize rather than govern.
Implementation, infrastructure, and failure modes. Tree/rule models offer intrinsic structure; local surrogate sampling must respect data manifold; SHAP approximations choose explainers/backgrounds; attention visualization is not automatically causal explanation; concept probes require validated concepts; mechanistic interpretability traces circuits/features in networks. Post-hoc methods may require many forward/backward evaluations and large activation capture, stressing GPUs and storage. Efficient batching, sampling, low-rank probes, activation caches, on-device summaries, and privacy-aware logging shape deployability. Saliency changes under tiny perturbations, correlated features make attribution ambiguous, explanations are cherry-picked, natural-language rationales are plausible but unfaithful, attention weights are overclaimed, counterfactuals are infeasible, and users become overconfident. Engineering includes data movement, finite precision, concurrency, resource contention, security boundaries, error propagation, and deterministic behavior when assumptions fail. Problem selection, impact assessment, collection, consent or lawful basis, labeling, training, evaluation, deployment, monitoring, feedback, incident response, update, retention, deletion, and retirement form one lifecycle. Decisions, datasets, model cards, approvals, exceptions, and user communications remain traceable.
Evaluation, governance, and deployment. Use sanity checks with randomized model/labels, deletion/insertion or retraining tests, repeated seeds/backgrounds, correlated-feature stress, adversarial explanation manipulation, domain-expert review, user studies measuring decisions, and comparison with known synthetic ground truth. Prediction, explanation service, data provenance, model/version, confidence, policy, user interface, human review, appeal, audit log, and corrective action form the workflow. Explanation does not replace accuracy, fairness, privacy, or accountability. High-impact uses document explanation purpose, audience, limitations, trade secrets, privacy, accessibility, retention, contestability, and who can override. Legal requirements vary and should not be reduced to a generic right-to-explanation slogan. Assurance combines documentation, data and label audits, red teaming, robustness and privacy tests, subgroup evaluation, causal or counterfactual analysis where appropriate, human-factors studies, accessibility testing, external review, incident exercises, and post-deployment monitoring. Technical tests do not replace legal, domain, or community judgment. Problem selection, impact assessment, collection, consent or lawful basis, labeling, training, evaluation, deployment, monitoring, feedback, incident response, update, retention, deletion, and retirement form one lifecycle. Decisions, datasets, model cards, approvals, exceptions, and user communications remain traceable. Evaluation combines task utility with subgroup and intersectional performance, calibration, harmful-error severity, robustness, privacy risk, explanation fidelity, human override, complaint and appeal outcomes, incident rate, latency, cost, and uncertainty. Aggregate accuracy can conceal systematic harm, and a fairness metric chosen after seeing results can rationalize rather than govern.
| Method | Scope | Output | Strength | Limitation |
|---|---|---|---|---|
| SHAP | Local aggregated/global | Feature attributions | Consistent additive framework | Background/dependence/cost |
| LIME | Local | Sparse surrogate weights | Model-agnostic/simple | Sampling instability/fidelity |
| Gradient methods | Local differentiable | Input attribution map | Fast model-aware | Saturation/noise |
| Attention visualization | Internal/local | Attention patterns | Easy Transformer inspection | Not causal proof |
| Concept/counterfactual | Concept or actionable local | Concept score/alternative | Human-oriented | Concept validity/feasibility |
<svg viewBox="0 0 760 470" xmlns="http://www.w3.org/2000/svg" font-family="-apple-system,Segoe UI,Roboto,sans-serif">
<rect width="760" height="470" fill="#0d1117"/>
<defs>
<marker id="xaBlueArrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto">
<path d="M0 0L10 5L0 10Z" fill="#60a5fa"/>
</marker>
<marker id="xaGreenArrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto">
<path d="M0 0L10 5L0 10Z" fill="#34d399"/>
</marker>
<marker id="xaRedArrow" viewBox="0 0 10 10" refX="8" refY="5" markerWidth="6" markerHeight="6" orient="auto">
<path d="M0 0L10 5L0 10Z" fill="#f87171"/>
</marker>
<linearGradient id="xaScore" x1="0" x2="1">
<stop offset="0" stop-color="#f87171"/>
<stop offset=".5" stop-color="#fbbf24"/>
<stop offset="1" stop-color="#34d399"/>
</linearGradient>
<filter id="xaDecisionGlow" x="-70%" y="-70%" width="240%" height="240%">
<feGaussianBlur stdDeviation="4" result="blur"/>
<feMerge><feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/></feMerge>
</filter>
</defs>
<text x="380" y="31" fill="#e6edf3" font-size="21" font-weight="700" text-anchor="middle">Explainable AI — Why Did This Prediction Happen?</text>
<text x="380" y="53" fill="#8b98a5" font-size="12.5" text-anchor="middle">a local explanation traces one decision from input features through contributions to an actionable counterfactual</text>
<!-- One concrete applicant, not an abstract tensor -->
<g transform="translate(24 91)">
<text x="91" y="-10" fill="#93c5fd" font-size="10.5" font-weight="700" text-anchor="middle">THIS APPLICANT</text>
<path d="M0 0h182v191H0Z" fill="#0b1726" stroke="#60a5fa" stroke-width="1.7"/>
<circle cx="39" cy="42" r="19" fill="#142b44" stroke="#60a5fa"/>
<circle cx="39" cy="36" r="7" fill="#93c5fd"/>
<path d="M24 57q3-14 15-14t15 14" fill="#93c5fd"/>
<text x="69" y="37" fill="#e6edf3" font-size="10.5" font-weight="700">Loan application</text>
<text x="69" y="53" fill="#8b98a5" font-size="8.5">$20,000 · 36 months</text>
<path d="M13 70h156" stroke="#233043"/>
<g font-size="9">
<g transform="translate(15 88)"><text fill="#8b98a5">annual income</text><text x="151" fill="#6ee7b7" font-weight="700" text-anchor="end">$72k</text></g>
<g transform="translate(15 113)"><text fill="#8b98a5">debt / income</text><text x="151" fill="#fca5a5" font-weight="700" text-anchor="end">48%</text></g>
<g transform="translate(15 138)"><text fill="#8b98a5">credit history</text><text x="151" fill="#fbbf24" font-weight="700" text-anchor="end">3 years</text></g>
<g transform="translate(15 163)"><text fill="#8b98a5">missed payments</text><text x="151" fill="#fca5a5" font-weight="700" text-anchor="end">2</text></g>
</g>
<text x="91" y="183" fill="#6b7684" font-size="8" text-anchor="middle">values actually supplied to the model</text>
</g>
<path d="M206 184H244" stroke="#60a5fa" stroke-width="2.7" marker-end="url(#xaBlueArrow)"/>
<!-- The predictive model remains complex; explanation probes its behavior -->
<g transform="translate(251 104)">
<text x="85" y="-10" fill="#c4b5fd" font-size="10.5" font-weight="700" text-anchor="middle">PREDICTIVE MODEL</text>
<path d="M0 0h170v150H0Z" fill="#171426" stroke="#a78bfa" stroke-width="1.8"/>
<g stroke="#69538d" stroke-width="1.2">
<path d="M28 35L83 24M28 35l55 39M28 75L83 24M28 75l55 50M28 115L83 74M28 115l55 10M83 24l56 25M83 74l56-25M83 74l56 53M83 125l56-76M83 125l56 2"/>
</g>
<g fill="#211936" stroke="#a78bfa" stroke-width="1.6">
<circle cx="28" cy="35" r="8"/><circle cx="28" cy="75" r="8"/><circle cx="28" cy="115" r="8"/>
<circle cx="83" cy="24" r="9"/><circle cx="83" cy="74" r="9"/><circle cx="83" cy="125" r="9"/>
<circle cx="139" cy="49" r="9"/><circle cx="139" cy="127" r="9"/>
</g>
<text x="85" y="145" fill="#8b98a5" font-size="8.2" text-anchor="middle">learned nonlinear interactions</text>
</g>
<!-- Prediction goes right; explanation interrogates the same model -->
<path d="M421 155H457" stroke="#a78bfa" stroke-width="2.7" marker-end="url(#xaBlueArrow)"/>
<g transform="translate(464 100)">
<text x="132" y="-7" fill="#fca5a5" font-size="10.5" font-weight="700" text-anchor="middle">MODEL OUTPUT</text>
<rect width="264" height="90" rx="11" fill="#211318" stroke="#f87171" stroke-width="1.7"/>
<text x="18" y="24" fill="#8b98a5" font-size="9">approval score</text>
<text x="238" y="29" fill="#fca5a5" font-size="20" font-weight="700" text-anchor="end">0.13</text>
<path d="M19 49H245" stroke="url(#xaScore)" stroke-width="7" stroke-linecap="round"/>
<path d="M132 40v28" stroke="#e6edf3" stroke-width="1.5" stroke-dasharray="3 2"/>
<text x="132" y="78" fill="#8b98a5" font-size="8" text-anchor="middle">0.50 approval threshold</text>
<circle cx="47" cy="49" r="8" fill="#f87171" stroke="#fecaca" filter="url(#xaDecisionGlow)"/>
<rect x="184" y="62" width="61" height="20" rx="10" fill="#3a181d" stroke="#f87171"/>
<text x="214.5" y="76" fill="#fca5a5" font-size="8.5" font-weight="700" text-anchor="middle">DECLINE</text>
</g>
<!-- Attribution line ties the model to a faithful local decomposition -->
<path d="M336 254V281" stroke="#a78bfa" stroke-width="2.5" marker-end="url(#xaBlueArrow)"/>
<!-- Waterfall: contributions sum exactly to the displayed score -->
<g transform="translate(219 292)">
<text x="252" y="-10" fill="#e6edf3" font-size="10.5" font-weight="700" text-anchor="middle">LOCAL FEATURE CONTRIBUTIONS · BASE 0.50 → PREDICTION 0.13</text>
<path d="M0 73H507" stroke="#3a4453"/>
<g stroke="#3a4453" stroke-dasharray="2 3">
<path d="M33 10v63M128 10v63M223 10v63M318 10v63M413 10v63M500 10v63"/>
</g>
<!-- Each bar begins where the previous contribution ended -->
<rect x="24" y="36" width="68" height="20" rx="3" fill="#142b44" stroke="#60a5fa"/>
<text x="58" y="49" fill="#93c5fd" font-size="8.5" text-anchor="middle">base 0.50</text>
<path d="M92 36h46v-19h52v19" fill="#153127" stroke="#34d399" stroke-width="1.6"/>
<text x="164" y="13" fill="#6ee7b7" font-size="8.2" text-anchor="middle">income +0.12</text>
<path d="M190 36h18v12h57V36" fill="#2c2516" stroke="#f59e0b" stroke-width="1.6"/>
<text x="236" y="61" fill="#fbbf24" font-size="8.2" text-anchor="middle">history −0.08</text>
<path d="M265 36h16v29h72V36" fill="#32191e" stroke="#f87171" stroke-width="1.6"/>
<text x="317" y="61" fill="#fca5a5" font-size="8.2" text-anchor="middle">DTI −0.22</text>
<path d="M353 36h14v25h71V36" fill="#32191e" stroke="#f87171" stroke-width="1.6"/>
<text x="402" y="58" fill="#fca5a5" font-size="8.2" text-anchor="middle">missed −0.19</text>
<rect x="452" y="48" width="49" height="20" rx="3" fill="#3a181d" stroke="#f87171"/>
<text x="476.5" y="61" fill="#fca5a5" font-size="8.5" font-weight="700" text-anchor="middle">0.13</text>
<g fill="#8b98a5" font-size="7.5" text-anchor="middle">
<text x="58" y="86">starting expectation</text><text x="317" y="86">largest negative driver</text><text x="476" y="86">final score</text>
</g>
</g>
<!-- Counterfactual asks for the smallest useful change in model input -->
<path d="M219 345H187Q173 345 173 359V390Q173 404 187 404H218" fill="none" stroke="#f59e0b" stroke-width="2.4" marker-end="url(#xaGreenArrow)"/>
<g transform="translate(25 322)">
<text x="85" y="-8" fill="#fbbf24" font-size="10.5" font-weight="700" text-anchor="middle">COUNTERFACTUAL</text>
<rect width="170" height="102" rx="11" fill="#211b0d" stroke="#f59e0b" stroke-width="1.7"/>
<text x="85" y="22" fill="#8b98a5" font-size="8.5" text-anchor="middle">keep every other feature fixed</text>
<g transform="translate(15 34)">
<rect width="59" height="27" rx="5" fill="#32191e" stroke="#f87171"/>
<text x="29.5" y="12" fill="#fca5a5" font-size="7.5" text-anchor="middle">DTI 48%</text>
<text x="29.5" y="23" fill="#8b98a5" font-size="7">score 0.13</text>
<path d="M66 13H88" stroke="#f59e0b" stroke-width="2" marker-end="url(#xaGreenArrow)"/>
<rect x="94" width="61" height="27" rx="5" fill="#153127" stroke="#34d399"/>
<text x="124.5" y="12" fill="#6ee7b7" font-size="7.5" text-anchor="middle">DTI 25%</text>
<text x="124.5" y="23" fill="#8b98a5" font-size="7">score 0.52</text>
</g>
<rect x="49" y="71" width="72" height="21" rx="10" fill="#153127" stroke="#34d399"/>
<text x="85" y="85" fill="#6ee7b7" font-size="8.5" font-weight="700" text-anchor="middle">APPROVE</text>
</g>
<!-- Essential epistemic boundary -->
<g transform="translate(245 405)">
<path d="M0 0h490v29H0Z" fill="#1e1a0f" stroke="#fbbf24"/>
<path d="M13 21L24 4l11 17Z" fill="none" stroke="#fbbf24" stroke-width="1.7"/>
<text x="24" y="18" fill="#fbbf24" font-size="10" font-weight="700" text-anchor="middle">!</text>
<text x="46" y="13" fill="#fbbf24" font-size="8.8" font-weight="700">ATTRIBUTION ≠ CAUSATION</text>
<text x="46" y="24" fill="#8b98a5" font-size="8">the explanation describes this model’s behavior; it does not prove that changing DTI causes the real-world outcome</text>
</g>
<text x="380" y="458" fill="#6b7684" font-size="11" text-anchor="middle">Useful explanations are local, faithful, reproducible, uncertainty-aware, and matched to a specific human decision.</text>
</svg>
Selection and practical application. Use intrinsic models when transparency and performance permit, SHAP for structured attribution with assumptions stated, LIME for exploratory local surrogates, gradients for differentiable models, counterfactuals for actionable options, and concepts/mechanistic methods for deeper analysis. Credit and risk review, medicine, industrial diagnostics, fraud, model debugging, scientific ML, autonomous operations, content moderation, and foundation-model analysis use explanations. Interfaces, defaults, incentives, human workflow, automation level, tool permissions, business policy, organizational governance, and downstream action often determine harm more than the model score. Defense in depth limits consequence when predictions are wrong or misused. A professional responsible-AI claim identifies affected people, intended benefit, prohibited use, decision authority, data provenance, model capability, foreseeable misuse, uncertainty, recourse, monitoring, and accountable owner. Fairness, privacy, transparency, safety, accessibility, autonomy, and reliability can conflict and require explicit tradeoffs rather than a single ethics score. CFS connects this topic to semiconductor architecture, implementation, verification, manufacturing, packaging, test, and deployed AI-system tradeoffs across the platform.
Related Topics
Explore 500+ Semiconductor & AI Topics
From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.