<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">81416</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2026.081416</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Truth-Anchored Evidence-Sensitive Training for Multimodal Radiology LLMs via Dual-Extractor Disagreement and Deterministic Counterfactual Constraints</article-title>
<alt-title alt-title-type="left-running-head">Truth-Anchored Evidence-Sensitive Training for Multimodal Radiology LLMs via Dual-Extractor Disagreement and Deterministic Counterfactual Constraints</alt-title>
<alt-title alt-title-type="right-running-head">Truth-Anchored Evidence-Sensitive Training for Multimodal Radiology LLMs via Dual-Extractor Disagreement and Deterministic Counterfactual Constraints</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Luo</surname><given-names>Xiong</given-names></name><email>xiong.luo.7609@student.uu.se</email></contrib>
<aff id="aff-1"><institution>Department of Information Technology, Uppsala University</institution>, <addr-line>Uppsala</addr-line>, <country>Sweden</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Xiong Luo. Email: <email>xiong.luo.7609@student.uu.se</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2026</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>15</day><month>06</month><year>2026</year>
</pub-date>
<volume>88</volume>
<issue>2</issue>
<elocation-id>47</elocation-id>
<history>
<date date-type="received">
<day>02</day>
<month>03</month>
<year>2026</year>
</date>
<date date-type="accepted">
<day>13</day>
<month>04</month>
<year>2026</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2026 The Author. Published by Tech Science Press.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>The Author</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_81416.pdf"></self-uri>
<abstract>
<p>Large multimodal models (LMMs) can produce fluent radiology reports, yet two clinically important error modes remain common: unsupported assertions and missed findings. Optimizing both under open supervision remains difficult because many pipelines still rely on overlapping parser families during training and evaluation. This paper introduces Truth-Anchored Dual-Extractor Counterfactual-Constrained Training (TA-DECT), which combines an ontology-derived atomic finding interface with four coupled objectives: structured prediction, dual-extractor minimax consistency on generated reports, deterministic counterfactual selectivity under evidence removal, and label-anchored completeness. In matched-path internal comparisons across chest radiographs (CheXpert, MIMIC-CXR, MIMIC-CXR-JPG) and chest computed tomography (CT; CT-RATE), TA-DECT improves truth-anchored F1 while reducing both missed-finding and unsupported-assertion rates, with concurrent gains in calibration and selectivity. On held-out region-of-interest (ROI) datasets (MS-CXR, VinDr-CXR), it also improves coarse evidence linkage and intervention-targeted confidence responses under occlusion. In this revision, the strongest claims are kept explicitly anchored to structured labels and ROI references, counterfactual evidence-sensitivity summaries are interpreted with bootstrap uncertainty, and parser-derived report metrics are retained only as supplementary diagnostics.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Multimodal radiology</kwd>
<kwd>large language models</kwd>
<kwd>report generation</kwd>
<kwd>counterfactual training</kwd>
<kwd>evidence grounding</kwd>
<kwd>structured labels</kwd>
</kwd-group></article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Radiology report generation is a canonical multimodal task, but practical usefulness depends on image-grounded correctness rather than linguistic fluency alone. Recent encoder&#x2013;decoder and LMM-based systems produce increasingly fluent prose [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-2">2</xref>]; however, two safety-relevant error modes remain frequent in practice: unsupported assertions and omitted findings. These errors are coupled, because reducing unsupported content can be achieved trivially by suppressing ground-truth findings.</p>
<p>The core methodological challenge is evaluation under open supervision. Many pipelines optimize report likelihood and score outputs with automatic report parsers or lexical surrogates. This is scalable, yet it can blur whether apparent gains reflect better image-grounded reasoning or closer alignment to parser behavior.</p>
<p>Public radiology datasets now expose richer anchors, including structured labels, curated subsets, and region annotations. What remains missing is a unified framework that uses these heterogeneous signals jointly while keeping omission control and evidence sensitivity explicit objectives rather than indirect side effects.</p>
<p>This study addresses this gap with Truth-Anchored Dual-Extractor Counterfactual-Constrained Training (TA-DECT), centered on an ontology-derived atomic finding interface between vision and free-form text. TA-DECT couples structured supervision, dual-extractor minimax consistency, deterministic counterfactual constraints, and label-anchored completeness in one training objective.</p>
<p>This study contributes three elements: (i) a coupled training formulation that jointly targets correctness, completeness, and evidence sensitivity; (ii) deterministic mappings from public label/report sources into a shared tuple schema <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mo fence="false" stretchy="false">&#x27E8;</mml:mo></mml:math></inline-formula>concept_id, anatomy_region_id, polarity, uncertainty<inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mo fence="false" stretchy="false">&#x27E9;</mml:mo></mml:math></inline-formula>; and (iii) an evaluation protocol that prioritizes structured labels and ROI anchors, with parser-derived signals used as supplementary diagnostics. Accordingly, the primary claims of this paper are anchor-based rather than parser-based: parser outputs are used as constrained auxiliaries during training and as secondary diagnostics at test time, but not as the main evidence for clinical correctness.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related Work</title>
<p>Report-generation research has advanced from encoder&#x2013;decoder systems to LMM-based pipelines that condition large text decoders on visual tokens. Representative models such as R2Gen, R2GenGPT, KARGEN, and LLaVA-Med improve fluency and overall report quality [<xref ref-type="bibr" rid="ref-3">3</xref>&#x2013;<xref ref-type="bibr" rid="ref-6">6</xref>]. However, fluency-oriented progress does not by itself ensure lower unsupported-assertion or missed-finding rates.</p>
<p>A parallel literature studies robustness across institutions and modalities [<xref ref-type="bibr" rid="ref-7">7</xref>,<xref ref-type="bibr" rid="ref-8">8</xref>]. These studies show that in-domain gains can erode under style shift and modality transfer. Yet evaluation is still frequently parser-dominated, making it difficult to separate image-grounded improvement from metric-specific alignment, especially when related extractor families appear in both optimization and evaluation pathways.</p>
<p>Recent multimodal biomedical representation work also highlights the value of structured cross-modal alignment beyond radiology report generation alone. GTP-4o studies modality-prompted heterogeneous graph learning for omni-modal biomedical representation [<xref ref-type="bibr" rid="ref-9">9</xref>], while PV-SSM explores pure visual state-space modeling for high-dimensional medical data analysis [<xref ref-type="bibr" rid="ref-10">10</xref>]. These studies are not direct report-generation baselines, but they are relevant to the broader design questions considered here: multimodal alignment, architecture choice under modality heterogeneity, and structured reasoning over medical evidence.</p>
<p>This work is most closely connected to open-supervision settings that combine heterogeneous public sources, including CheXpert and CheXpert Plus [<xref ref-type="bibr" rid="ref-2">2</xref>,<xref ref-type="bibr" rid="ref-11">11</xref>], MIMIC-CXR [<xref ref-type="bibr" rid="ref-1">1</xref>], MS-CXR [<xref ref-type="bibr" rid="ref-12">12</xref>], VinDr-CXR [<xref ref-type="bibr" rid="ref-13">13</xref>], and CT-RATE [<xref ref-type="bibr" rid="ref-14">14</xref>]. The key distinction here is the joint use of a deterministic atomic interface, anchor-gated dual-extractor minimax consistency, and counterfactual/completeness constraints within one truth-anchored evaluation protocol.</p>
</sec>
<sec id="s3">
<label>3</label>
<title>Method</title>
<sec id="s3_1">
<label>3.1</label>
<title>Problem Setting and Design Goals</title>
<p>This paper considers multimodal radiology generation from either a 2D chest radiograph (CXR) or a 3D chest CT volume. The system is required to produce two outputs: (i) a set of structured findings that can be checked against structured labels, and (ii) a free-form impression-style report for human readability and downstream use.</p>
<p>The key design requirement is that the system should be optimized and evaluated under open-access supervision, using released anchors: structured labels, reference-standard subsets when available, and reference regions when available. A second requirement is non-circularity: text/extractor signals may be used as auxiliary constraints during training, but quantitative correctness evaluation is anchored to held-out structured labels and reference regions under predefined rules.</p>
<p>These goals are implemented by introducing an ontology-derived atomic-finding interface as a bottleneck between vision and free-form text. This interface serves two roles. During training, it provides a structured channel for supervision and for counterfactual constraints that directly manipulate evidence. During evaluation, it provides a consistent target space for measuring correctness and completeness under a shared protocol.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Ontology-Derived Atomic-Finding Interface</title>
<p>The interface is defined at two levels. The supervised prediction index is an atomic slot
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:mi>f</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">&#x27E8;</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mo fence="false" stretchy="false">&#x27E9;</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>where <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mi>c</mml:mi></mml:math></inline-formula> is a biomedical concept identifier (e.g., RadLex) and <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mi>r</mml:mi></mml:math></inline-formula> is an anatomy region identifier. For consistent bookkeeping and cross-dataset conversion, each slot is associated with tuple states
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msub><mml:mi>a</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">&#x27E8;</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mo>,</mml:mo><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>u</mml:mi><mml:mo fence="false" stretchy="false">&#x27E9;</mml:mo><mml:mo>,</mml:mo><mml:mspace width="1em" /><mml:mi>s</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>neg</mml:mtext></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>,</mml:mo><mml:mtext>&#xA0;</mml:mtext><mml:mi>u</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mtext>certain</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>uncertain</mml:mtext></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Thus, polarity and uncertainty are explicit in the tuple schema, while model supervision and primary metrics use the positive projection of each slot.</p>
<p>First, syntactic validity is required to be checkable without dataset-specific heuristics. A tuple record is valid if and only if all four fields are present and each value lies in a fixed, known inventory. This keeps conversions consistent under domain shift in report style.</p>
<p>Second, cross-dataset comparability is needed. Public datasets differ in label definitions and in whether uncertainty is encoded. By mapping each dataset&#x2019;s released structured labels into this common tuple schema, a single slot space <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow></mml:math></inline-formula> can be evaluated under multiple anchors with consistent rules.</p>
<p>The inventory of valid concepts and regions is constructed from (i) a public biomedical concept ontology (RadLex) and (ii) the concept inventories covered by two open-source report labelers used as fixed extractors (CheXpert labeler [<xref ref-type="bibr" rid="ref-2">2</xref>] and NegBio [<xref ref-type="bibr" rid="ref-15">15</xref>]). Across datasets, the mapping from released structured labels (e.g., CheXpert observations, VinDr labels, CT-RATE abnormalities) to atomic tuples is predefined.</p>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>Tuple Mapping Protocol</title>
<p>All label-to-tuple and report-to-tuple conversions are rule-based with no learned thresholds beyond the global slot-level decision rule <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x2265;</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula> used in the evaluation protocol below. <xref ref-type="table" rid="table-1">Table 1</xref> summarizes the complete mapping logic used by training and evaluation.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Tuple mapping protocol for training and evaluation.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Source Signal</th>
<th>Condition</th>
<th>Mapping Rule</th>
</tr>
</thead>
<tbody>
<tr>
<td>Structured labels (CheXpert, MIMIC-CXR-JPG, CT-RATE, VinDr)</td>
<td>Label &#x003D; pos/neg/uncertain/blank</td>
<td>Emit tuple <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:mo stretchy="false">(</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi>d</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>certain</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> for pos; <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mo stretchy="false">(</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi>d</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mtext>neg</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>certain</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> for neg; <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:mo stretchy="false">(</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mi>d</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>uncertain</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> for uncertain; emit nothing for blank (excluded from supervised/eval counts).</td>
</tr>
<tr>
<td>Report parser output (<inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:msub><mml:mi>E</mml:mi><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msub><mml:mi>E</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula>)</td>
<td>Parser state &#x003D; positive/uncertain/negative/blank</td>
<td>Convert to binary indicator for minimax and parser-path evaluation: positive or uncertain <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>, negative or blank <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>.</td>
</tr>
<tr>
<td>Anatomy region id for finding <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mi>f</mml:mi></mml:math></inline-formula></td>
<td>Dataset provides anatomical location/not provided</td>
<td>If provided, map via fixed dataset-to-region dictionary <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:msub><mml:mi>r</mml:mi><mml:mi>d</mml:mi></mml:msub></mml:math></inline-formula>; if unavailable, use fixed thoracic-global region id.</td>
</tr>
<tr>
<td>MS-CXR/VinDr ROI to tuple mapping</td>
<td>Multiple boxes/categories/overlaps in one study</td>
<td>Map each ROI category by a fixed dictionary to concept set <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mi>C</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, map box center to region <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:mi>r</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, then create slots <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:mo stretchy="false">(</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> for all <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:mi>c</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>C</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. For repeated boxes with same <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:mo stretchy="false">(</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> use set-union (deduplicate). For overlapping boxes with different categories, keep all mapped concepts (multi-label). For conflicting polarity states from different sources, apply precedence pos &#x003E; uncertain &#x003E; neg.</td>
</tr>
<tr>
<td>Intervention region mapping</td>
<td>Grid or ROI intervention <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:mi>i</mml:mi></mml:math></inline-formula></td>
<td>Map intervention center to one of 9 coarse regions <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mtext>left/center/right</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x00D7;</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mtext>upper/middle/lower</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. Grid path uses <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>reg</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>f</mml:mi><mml:mo>:</mml:mo><mml:mrow><mml:mtext>region</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. ROI path uses <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>roi</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>f</mml:mi><mml:mo>:</mml:mo><mml:mrow><mml:mtext>region</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2227;</mml:mo><mml:mrow><mml:mtext>concept</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mi>C</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>.</td>
</tr>
<tr>
<td>Binary finding for metrics</td>
<td>Native model scores/parser outputs binary labels</td>
<td>Native path: <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:msub><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula> iff <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x2265;</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula> for slot <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mi>f</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">&#x27E8;</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mo fence="false" stretchy="false">&#x27E9;</mml:mo></mml:math></inline-formula>, else <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mn>0</mml:mn></mml:math></inline-formula>. Parser path: use converted binary parser output (positive/uncertain <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>, negative/blank <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>).</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Mapping ambiguity is accounted for explicitly rather than hidden in dataset-specific scripts. If anatomical region information is absent, the default protocol maps the finding to a thoracic-global identifier so that the study remains countable under the shared slot inventory; if different released sources disagree, a fixed precedence rule is used once and then shared across all methods. Because the same tuple interface is used for TA-DECT, internal baselines, and parser-converted external rows, this mapping layer can shift absolute numbers but does not selectively favor one method family. The experiments therefore include compact sensitivity analyses under alternate region, uncertainty, and conflict-resolution rules.</p>
</sec>
<sec id="s3_4">
<label>3.4</label>
<title>Model Architecture</title>
<p>A multimodal encoder&#x2013;decoder is trained to produce (i) atomic finding probabilities and (ii) a free-form impression-style report. The architecture is intentionally simple in order to isolate the effect of the proposed training objective and evaluation protocol.</p>
<p>The visual backbone is BiomedCLIP&#x2019;s image encoder (<monospace>ViT-B/16</monospace>, about 86M parameters) [<xref ref-type="bibr" rid="ref-16">16</xref>]. For CXR, inputs are resized to 448 <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula> 448 and encoded into patch tokens. For CT, volumes are clipped to Hounsfield units (HU) <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1000</mml:mn><mml:mo>,</mml:mo><mml:mn>400</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, linearly rescaled, and 32 axial slices are sampled uniformly per study; each slice is encoded by the same <monospace>ViT-B/16</monospace> and slice tokens are aggregated by a two-layer attention-pooling block. This design is intentionally conservative: it preserves a matched image-to-token interface across CXR and CT and isolates the training objective from a larger architecture search, but it does not claim that 32-slice sampling is the best possible three-dimensional encoder. The revision therefore includes a higher-slice CT variant while keeping the objective fixed.</p>
<p>The atomic head is a multi-label classifier that predicts a probability <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> for each atomic slot <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi>f</mml:mi><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">&#x27E8;</mml:mo><mml:mi>c</mml:mi><mml:mo>,</mml:mo><mml:mi>r</mml:mi><mml:mo fence="false" stretchy="false">&#x27E9;</mml:mo></mml:math></inline-formula>. Here <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> denotes confidence for the slot-level positive state used by the label-anchor protocol (with uncertain/blank handled by predefined exclusion/mapping rules). The output of this head is the primary vehicle for truth-anchored correctness and for evidence sensitivity under interventions.</p>
<p>The text decoder is Mistral-7B-v0.1 [<xref ref-type="bibr" rid="ref-17">17</xref>] with added cross-attention blocks that consume visual tokens and an atomic-summary token stream. Decoder adaptation uses LoRA [<xref ref-type="bibr" rid="ref-18">18</xref>] (rank <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mi>r</mml:mi><mml:mo>=</mml:mo><mml:mn>16</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>32</mml:mn></mml:math></inline-formula>, dropout 0.05) on attention and MLP projections; base decoder weights remain frozen. This yields about 7.24B total decoder parameters with about 93M trainable decoder-side parameters. In the default implementation, cross-attention adapters are inserted every 4 decoder blocks (8 insertion points over the 32-layer stack), the atomic summary is capped at 64 tokens, and pooled visual conditioning tokens are capped at 256 tokens. Conditioning on the structured predictions encourages report&#x2013;structure consistency, while the report output remains free-form.</p>
<p><xref ref-type="fig" rid="fig-1">Fig. 1</xref> summarizes the TA-DECT architecture and training objective, highlighting the atomic bottleneck, occlusion interventions, and the detached dual-extractor training auxiliary.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>TA-DECT architecture and objective terms. The fixed extractors are <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:msub><mml:mi>E</mml:mi><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> (CheXpert labeler) and <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:msub><mml:mi>E</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> (NegBio). Extractor outputs provide detached targets for <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>; dashed/dotted links indicate detached or attention paths rather than parser-through-text gradients.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_81416-fig-1.tif"/>
</fig>
</sec>
<sec id="s3_5">
<label>3.5</label>
<title>TA-DECT Objective</title>
<p>Let <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:mi>x</mml:mi></mml:math></inline-formula> be an image (CXR) or volume (CT), <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mi>y</mml:mi></mml:math></inline-formula> be public structured labels when available, and <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mi>r</mml:mi></mml:math></inline-formula> be the generated report. The TA-DECT objective couples four loss terms with an optional report likelihood term. The terms are designed to address distinct but interacting risks: label-supervised correctness, extractor-specific gaming, non-selective evidence sensitivity, and omission.</p>
<p>Training begins with structured supervision when labels are available. On examples with structured labels, define the slot-level positive target <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>&#x22AE;</mml:mo></mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:msub><mml:mi>y</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula> on the evaluable label subset <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:msub><mml:mi>y</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>neg</mml:mtext></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula> (uncertain/blank excluded by a predefined policy). A weighted multi-label binary cross-entropy over slots is then optimized:<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>struct</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow></mml:mrow></mml:munder><mml:msub><mml:mi>w</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mspace width="thinmathspace" /><mml:mrow><mml:mtext>BCE</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo></mml:math></disp-formula>where labels with state {uncertain, blank} are excluded under a predefined policy (reported as an excluded fraction). Weights are set to <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:msub><mml:mi>w</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x221D;</mml:mo><mml:mn>1</mml:mn><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:msqrt><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mo>&#x03F5;</mml:mo></mml:msqrt></mml:math></inline-formula> where <inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:msub><mml:mi>&#x03C0;</mml:mi><mml:mi>f</mml:mi></mml:msub></mml:math></inline-formula> is the training-set prevalence of slot <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:mi>f</mml:mi></mml:math></inline-formula> (computed on the available structured-label subset for that dataset) and <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:mo>&#x03F5;</mml:mo><mml:mspace width="thinmathspace" /><mml:mo>=</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>3</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>. This weighting reduces the tendency of rare findings to be ignored while preserving a consistent training setup.</p>
<p>To reduce circularity from a single evaluator, a dual-extractor minimax constraint is imposed on generated text. Two fixed report-to-finding extractors <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:msub><mml:mi>E</mml:mi><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula> (CheXpert labeler) and <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:msub><mml:mi>E</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> (NegBio) are applied to the generated report <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mi>r</mml:mi></mml:math></inline-formula>, producing extracted finding indicators <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:msubsup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>. The worst-case mismatch between atomic predictions and extracted indicators is minimized:<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mrow><mml:mi>k</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo fence="false" stretchy="false">}</mml:mo></mml:mrow></mml:munder><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msub><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>parse</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:munder><mml:msubsup><mml:mi>m</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mspace width="thinmathspace" /><mml:mrow><mml:mtext>BCE</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:msubsup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Here <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:msub><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>parse</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2286;</mml:mo><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow></mml:math></inline-formula> denotes slots covered by the fixed extractor inventories for the report domain of <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mi>x</mml:mi></mml:math></inline-formula>. On CT-RATE, minimax updates are restricted to this parser-supported subset; slots outside <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:msub><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>parse</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> are optimized only by <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>struct</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cf</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>, and <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>comp</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>. The mask <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:msubsup><mml:mi>m</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> is an anchor-gating rule:<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:msubsup><mml:mi>m</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if&#xA0;</mml:mtext></mml:mrow><mml:msub><mml:mi>y</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mrow><mml:mtext>&#xA0;is unavailable</mml:mtext></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>if&#xA0;</mml:mtext></mml:mrow><mml:msub><mml:mi>y</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>neg</mml:mtext></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mtext>&#xA0;</mml:mtext><mml:mrow><mml:mtext>and</mml:mtext></mml:mrow><mml:mtext>&#xA0;</mml:mtext><mml:msubsup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mo>,</mml:mo></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn><mml:mo>,</mml:mo></mml:mtd><mml:mtd><mml:mrow><mml:mtext>otherwise</mml:mtext></mml:mrow><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Hence, on labeled samples, extractor outputs that conflict with the structured anchor do not contribute gradient. In optimization, this term is implemented as a deterministic detached-target step because report decoding and extractor parsing are non-differentiable. For each minibatch, one greedy report <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula> is decoded per sample, <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:msub><mml:mi>E</mml:mi><mml:mn>1</mml:mn></mml:msub></mml:math></inline-formula>/<inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:msub><mml:mi>E</mml:mi><mml:mn>2</mml:mn></mml:msub></mml:math></inline-formula> are run on <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula>, and the resulting <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:msubsup><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mover><mml:mi>r</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> values are treated as constants when optimizing <inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>. Gradients from <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> update the visual encoder and atomic head (through <inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>), while decoder parameters are updated by <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>text</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> and by the shared conditioning on the atomic summary. This block-coordinate implementation makes the gradient path explicit: <inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> never backpropagates through parser outputs or report text, and it cannot override available structured labels because the anchor gate suppresses conflicting parser targets. Extractor states are converted to binary indicators using the fixed rule in <xref ref-type="table" rid="table-1">Table 1</xref> (positive/uncertain <inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>, negative/blank <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>); the maximization over <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:mi>k</mml:mi></mml:math></inline-formula> applies the larger mismatch between the two fixed extractors for each update. Even with this safeguard, the extractors remain part of the training auxiliary loop, so this dependence is stated explicitly in the revised discussion and limitations rather than treated as invisible infrastructure.</p>

<p>Next, a counterfactual selectivity constraint is added, which directly tests whether predicted confidences respond selectively to the removal of evidence. An intervention family <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:mi>i</mml:mi><mml:mo>&#x223C;</mml:mo><mml:mrow><mml:mi>&#x02110;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> removes evidence by occluding either (a) a fixed image grid region (used in training and evaluation) or (b) a reference bounding box (evaluation only on held-out ROI splits).</p>
<p>Grid occlusion (train&#x002B;eval). Training uses a fixed <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> grid: for 2D CXR, exactly one grid cell is occluded by replacing all pixels in that cell with the per-image mean intensity; for 3D CT, the same cell index is occluded across all axial slices. The <inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> design is used in training because it is aligned to the coarse 9-region anatomy partition used by the atomic interface: (left/center/right) <inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula> (upper/middle/lower). In the revision experiments, a targeted retraining variant additionally mixes <inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:mn>7</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>7</mml:mn></mml:math></inline-formula> interventions while keeping the rest of the objective unchanged.</p>
<p>ROI occlusion (eval-only). For MS-CXR and VinDr-CXR, given a held-out ground-truth box <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mi>b</mml:mi></mml:math></inline-formula>, the pixels inside <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:mi>b</mml:mi></mml:math></inline-formula> are occluded (again replaced by the per-image mean intensity). ROI occlusion is never used for training.</p>
<p>Intervention-to-region and ROI-category-to-concept mappings follow the predefined rules in <xref ref-type="table" rid="table-1">Table 1</xref>. For grid interventions, the targeted set is <inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>reg</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mo>:</mml:mo><mml:mrow><mml:mtext>region</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>,</mml:mo></mml:math></inline-formula> and for ROI interventions with category labels (MS-CXR and VinDr-CXR), the targeted set is <inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>roi</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mo>:</mml:mo><mml:mrow><mml:mtext>region</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mtext>&#xA0;</mml:mtext><mml:mo>&#x2227;</mml:mo><mml:mtext>&#xA0;</mml:mtext><mml:mrow><mml:mtext>concept</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>f</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mi>C</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo fence="false" stretchy="false">}</mml:mo><mml:mo>.</mml:mo></mml:math></inline-formula></p>

<p>Intervention distribution. For the default training setup (<inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>), <inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:mrow><mml:mi>&#x02110;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> is uniform over the 9 grid cells and one cell is sampled per example. At evaluation, metrics are averaged over all interventions in the tested grid family (<inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mn>7</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>7</mml:mn></mml:math></inline-formula>, or <inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mn>16</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>16</mml:mn></mml:math></inline-formula>) or over all held-out ROI boxes (ROI occlusion). Interventions with <inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula> are excluded from both training and evaluation averages.</p>
<p>The counterfactual term enforces selective decreases for targeted findings while stabilizing untargeted findings:<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cf</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:mtd><mml:mtd><mml:mi></mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi mathvariant="double-struck">E</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mo>&#x223C;</mml:mo><mml:mrow><mml:mi>&#x02110;</mml:mi></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msub><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">[</mml:mo></mml:mrow></mml:mstyle><mml:munder><mml:mrow><mml:munder><mml:mrow><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mspace width="thinmathspace" /><mml:mi>m</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mi mathvariant="normal">&#x2216;</mml:mi><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mo>&#x23DF;</mml:mo></mml:munder></mml:mrow><mml:mrow><mml:mrow><mml:mtext>targeted drop</mml:mtext></mml:mrow></mml:mrow></mml:munder></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi></mml:mi><mml:mspace width="1em" /><mml:mo>+</mml:mo><mml:mi>&#x03BB;</mml:mi><mml:munder><mml:mrow><mml:munder><mml:mrow><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mo>&#x2216;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2209;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:munder><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mi mathvariant="normal">&#x2216;</mml:mi><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow><mml:mo>&#x23DF;</mml:mo></mml:munder></mml:mrow><mml:mrow><mml:mrow><mml:mtext>untargeted stability</mml:mtext></mml:mrow></mml:mrow></mml:munder><mml:mstyle scriptlevel="0"><mml:mrow><mml:mo maxsize="1.623em" minsize="1.623em">]</mml:mo></mml:mrow></mml:mstyle><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>with margin <inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:mi>m</mml:mi><mml:mo>&#x003E;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>. The experiments use <inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:mi>m</mml:mi><mml:mo>=</mml:mo><mml:mn>0.05</mml:mn></mml:math></inline-formula> and <inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:mi>&#x03BB;</mml:mi><mml:mo>=</mml:mo><mml:mn>1.0</mml:mn></mml:math></inline-formula> throughout. Intuitively, the first term demands a minimum decrease for findings logically linked to the occluded region, while the second term penalizes global instability that would be consistent with non-specific confidence collapse.</p>
<p>Finally, to explicitly control omission, a label-anchored completeness constraint is added on examples with public structured labels:<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>comp</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow></mml:mrow></mml:munder><mml:mi>&#x03B1;</mml:mi><mml:mspace width="thinmathspace" /><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mspace width="thinmathspace" /><mml:mrow><mml:mtext>BCE</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">)</mml:mo><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p><inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula> is set to 1 for all findings, and the overall strength is controlled via <inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:mi>&#x03B4;</mml:mi></mml:math></inline-formula> in the total objective. This term adds a direct penalty on false negatives under the structured anchor: low-confidence predictions on positive labels increase this loss.</p>
<p>On datasets with paired report text, negative log-likelihood <inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>text</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> is also optimized. The full objective is
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>struct</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03B2;</mml:mi><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03B3;</mml:mi><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cf</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03B4;</mml:mi><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>comp</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03B7;</mml:mi><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>text</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>.</mml:mo></mml:math></disp-formula></p>
<p>Unless explicitly varied in ablations, weights are set to <inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:mi>&#x03B2;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-97"><mml:math id="mml-ieqn-97"><mml:mi>&#x03B3;</mml:mi><mml:mo>=</mml:mo><mml:mn>1.0</mml:mn></mml:math></inline-formula>, <inline-formula id="ieqn-98"><mml:math id="mml-ieqn-98"><mml:mi>&#x03B4;</mml:mi><mml:mo>=</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula>, and <inline-formula id="ieqn-99"><mml:math id="mml-ieqn-99"><mml:mi>&#x03B7;</mml:mi><mml:mo>=</mml:mo><mml:mn>1.0</mml:mn></mml:math></inline-formula> on paired-text datasets; for image-only datasets, <inline-formula id="ieqn-100"><mml:math id="mml-ieqn-100"><mml:mi>&#x03B7;</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula>. Text losses are applied only when paired text exists; on image-only datasets (e.g., VinDr-CXR), training uses only atomic losses.</p>
</sec>
<sec id="s3_6">
<label>3.6</label>
<title>Truth-Anchored Evaluation Metrics</title>
<p>The evaluation protocol is designed to make correctness and completeness jointly visible under a consistent rule set, while keeping extractor-based signals diagnostic. The evaluation emphasizes micro-averaged, label-anchored outcomes because they directly quantify omitted positives and unsupported positives in a form that remains interpretable across datasets.</p>
<p>Label-anchored indicators (micro-averaged) are used on held-out truth anchors. For each example <inline-formula id="ieqn-101"><mml:math id="mml-ieqn-101"><mml:mi>x</mml:mi></mml:math></inline-formula> and slot <inline-formula id="ieqn-102"><mml:math id="mml-ieqn-102"><mml:mi>f</mml:mi></mml:math></inline-formula> with ground-truth <inline-formula id="ieqn-103"><mml:math id="mml-ieqn-103"><mml:msub><mml:mi>y</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2208;</mml:mo><mml:mo fence="false" stretchy="false">{</mml:mo><mml:mrow><mml:mtext>pos</mml:mtext></mml:mrow><mml:mo>,</mml:mo><mml:mrow><mml:mtext>neg</mml:mtext></mml:mrow><mml:mo fence="false" stretchy="false">}</mml:mo></mml:math></inline-formula>, predicted-positive is defined as <inline-formula id="ieqn-104"><mml:math id="mml-ieqn-104"><mml:msub><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mo>&#x22AE;</mml:mo></mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2265;</mml:mo><mml:mn>0.5</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>. The default threshold <inline-formula id="ieqn-105"><mml:math id="mml-ieqn-105"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x2265;</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula> is fixed once and shared across datasets, modalities, and internal methods so that comparisons do not inherit post hoc threshold tuning. Because different threshold choices can materially change the miss&#x2013;unsupported balance, the revision experiments include a dedicated robustness sweep rather than treating <inline-formula id="ieqn-106"><mml:math id="mml-ieqn-106"><mml:mn>0.5</mml:mn></mml:math></inline-formula> as intrinsically optimal.
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow></mml:mtd><mml:mtd><mml:mi></mml:mi><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>f</mml:mi></mml:mrow></mml:munder><mml:mo>&#x22AE;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2227;</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo><mml:mo>,</mml:mo><mml:mtext>&#x00A0;</mml:mtext><mml:mrow><mml:mtext>FP</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>f</mml:mi></mml:mrow></mml:munder><mml:mo>&#x22AE;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo>&#x2227;</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd><mml:mrow><mml:mtext>FN</mml:mtext></mml:mrow></mml:mtd><mml:mtd><mml:mi></mml:mi><mml:mo>=</mml:mo><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>f</mml:mi></mml:mrow></mml:munder><mml:mo>&#x22AE;</mml:mo><mml:mo stretchy="false">[</mml:mo><mml:msubsup><mml:mi>y</mml:mi><mml:mi>f</mml:mi><mml:mo>+</mml:mo></mml:msubsup><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2227;</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mi>f</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn>0</mml:mn><mml:mo stretchy="false">]</mml:mo><mml:mo>.</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Here TP, FP, and FN denote true positives, false positives, and false negatives. Missed-finding rate <inline-formula id="ieqn-107"><mml:math id="mml-ieqn-107"><mml:mo>=</mml:mo><mml:mrow><mml:mtext>FN</mml:mtext></mml:mrow><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FN</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, unsupported-assertion rate <inline-formula id="ieqn-108"><mml:math id="mml-ieqn-108"><mml:mo>=</mml:mo><mml:mrow><mml:mtext>FP</mml:mtext></mml:mrow><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FP</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, and <inline-formula id="ieqn-109"><mml:math id="mml-ieqn-109"><mml:mrow><mml:mtext>F1</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>2</mml:mn><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow><mml:mrow><mml:mo>/</mml:mo></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mn>2</mml:mn><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FP</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FN</mml:mtext></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. For anchors with explicit uncertain/blank states (CheXpert-style labels), uncertain/blank are excluded under a fixed policy. The excluded fraction (Excl.) is computed once from ground-truth labels on each anchor split and is therefore method-invariant within that split. This policy improves comparability under a binary slot projection, but it may hide clinically relevant uncertainty failures; it is therefore treated as a limitation rather than as a claim that uncertain labels are unimportant in practice.</p>
<p>For counterfactual evidence sensitivity, the study reports the selectivity metric. For input <inline-formula id="ieqn-110"><mml:math id="mml-ieqn-110"><mml:mi>x</mml:mi></mml:math></inline-formula> and intervention <inline-formula id="ieqn-111"><mml:math id="mml-ieqn-111"><mml:mi>i</mml:mi></mml:math></inline-formula>, let <inline-formula id="ieqn-112"><mml:math id="mml-ieqn-112"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> be confidence for finding <inline-formula id="ieqn-113"><mml:math id="mml-ieqn-113"><mml:mi>f</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-114"><mml:math id="mml-ieqn-114"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mi mathvariant="normal">&#x2216;</mml:mi><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> after evidence removal. Define
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mrow><mml:mtext>targeted_drop</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2208;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:munder><mml:mo movablelimits="true" form="prefix">max</mml:mo><mml:mo stretchy="false">(</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mi mathvariant="normal">&#x2216;</mml:mi><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo stretchy="false">)</mml:mo><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mrow><mml:mtext>untargeted_change</mml:mtext></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo>,</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mrow><mml:mi>&#x2131;</mml:mi></mml:mrow><mml:mo>&#x2216;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:mrow></mml:mfrac><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>f</mml:mi><mml:mo>&#x2209;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:munder><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mi mathvariant="normal">&#x2216;</mml:mi><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mo>,</mml:mo></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>and report selectivity <inline-formula id="ieqn-115"><mml:math id="mml-ieqn-115"><mml:mi>S</mml:mi><mml:mo>=</mml:mo><mml:mrow><mml:mi mathvariant="double-struck">E</mml:mi></mml:mrow><mml:mo stretchy="false">[</mml:mo><mml:mrow><mml:mtext>targeted_drop</mml:mtext></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mtext>untargeted_change</mml:mtext></mml:mrow><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>. For grid interventions, <inline-formula id="ieqn-116"><mml:math id="mml-ieqn-116"><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>reg</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>; for ROI interventions with category labels, <inline-formula id="ieqn-117"><mml:math id="mml-ieqn-117"><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mrow><mml:mtext>roi</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>i</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>. The subtraction makes the metric sensitive to two common failure patterns: (i) insufficient response for targeted findings and (ii) non-specific instability that changes many untargeted findings.</p>
<p>Evaluation pathways follow method family. Methods with a native atomic head are evaluated directly from <inline-formula id="ieqn-118"><mml:math id="mml-ieqn-118"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> (including calibration). Report-only baselines are converted to binary findings using the same dual-parser rule in <xref ref-type="table" rid="table-1">Table 1</xref>; because this pathway does not expose calibrated <inline-formula id="ieqn-119"><mml:math id="mml-ieqn-119"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, expected calibration error (ECE) is not reported for report-only external baselines.</p>

<p>Calibration is evaluated using expected calibration error (ECE, 15 bins) for methods with native atomic probabilities, while extractor disagreement on generated reports is reported separately as a diagnostic signal.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Experiments</title>
<sec id="s4_1">
<label>4.1</label>
<title>Datasets, Splits, and Protocol</title>
<p>TA-DECT is evaluated on public datasets chosen to cover paired image&#x2013;report supervision, structured-label anchors, region-level evidence anchors, and cross-modality transfer. Where available, the study reports three complementary channels: label-anchored finding quality, region-of-interest (ROI)-based evidence linkage, and counterfactual selectivity.</p>
<p><xref ref-type="table" rid="table-2">Table 2</xref> summarizes, for each dataset, modality/text availability, applied text losses, evaluation anchors, reference-region availability, intervention type, and train/test role.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Datasets and evaluation channels matrix. Modality is abbreviated as Modality in the column header, and paired report text availability is abbreviated as Text. Y&#x002A; indicates sentence-level text exists but is not used for training here; Y&#x002B; indicates paired report text provided by CheXpert Plus on the CheXpert domain. Interventions distinguish grid occlusions (train&#x002B;evaluation) from ROI occlusion (evaluation-only on held-out ROI splits).</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Dataset</th>
<th>Mod.</th>
<th>Text?</th>
<th>Text Losses</th>
<th>Primary Anchor</th>
<th>Secondary Anchor</th>
<th>Regions?</th>
<th>Interventions</th>
<th>Shift Role</th>
</tr>
</thead>
<tbody>
<tr>
<td>CheXpert</td>
<td>I &#x002B; T</td>
<td>Y&#x002B;</td>
<td>NLL &#x002B; Minimax</td>
<td>Struct. labels (held-out)</td>
<td>Rad. benchmark (diag.)</td>
<td>N</td>
<td>Grid (Tr &#x002B; Te)</td>
<td>Tr &#x002B; Te</td>
</tr>
<tr>
<td>MIMIC-CXR</td>
<td>I &#x002B; T</td>
<td>Y</td>
<td>NLL &#x002B; Minimax</td>
<td>Man. cur. (JPG)</td>
<td>CheX/NegBio (JPG)</td>
<td>Y (MS-CXR)</td>
<td>Grid (Tr)</td>
<td>Tr</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>I &#x002B; Tab</td>
<td>N</td>
<td>&#x2013;</td>
<td>Man. cur.</td>
<td>CheX/NegBio</td>
<td>N</td>
<td>Grid (Te only)</td>
<td>Te</td>
</tr>
<tr>
<td>MS-CXR</td>
<td>ROI &#x002B; T</td>
<td>Y&#x002A;</td>
<td>&#x2013;</td>
<td>Box cats</td>
<td>&#x2013;</td>
<td>Y</td>
<td>ROI (Te only)</td>
<td>Te</td>
</tr>
<tr>
<td>VinDr-CXR</td>
<td>I &#x002B; Tab</td>
<td>N</td>
<td>&#x2013;</td>
<td>Rad. labels</td>
<td>&#x2013;</td>
<td>Y</td>
<td>ROI (Te only)</td>
<td>Te</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>I &#x002B; T &#x002B; Tab</td>
<td>Y</td>
<td>NLL &#x002B; Minimax</td>
<td>Struct. labels</td>
<td>&#x2013;</td>
<td>N</td>
<td>Grid (Tr &#x002B; Te)</td>
<td>Tr &#x002B; Te</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>CheXpert provides uncertainty-aware labels and an official radiologist benchmark subset. In this manuscript, primary CheXpert counting uses a held-out split of released structured labels aligned to the full atomic slot inventory; the smaller radiologist benchmark (validation 200, test 500 in the official protocol) is used as a secondary diagnostic reference. When text losses are applied in the CheXpert domain, paired reports are sourced from CheXpert Plus and aligned by released image paths.</p>
<p>MIMIC-CXR serves as the primary paired CXR training domain and as a source/target for report-style shift. Structured-label evaluation for MIMIC uses released MIMIC-CXR-JPG benchmark labels (<monospace>mimic-cxr-2.1.0-test-set-labeled.csv</monospace>); consistent with the official PhysioNet release, some auxiliary metadata files in v2.1.0 retain <monospace>2.0.0</monospace> prefixes, and the released naming is kept unchanged. Train/validation/test partitions follow the official MIMIC-CXR-JPG split file, with paired free-text reports joined from MIMIC-CXR. Because MS-CXR is derived from MIMIC-CXR, the study enforces study-level de-overlap: any MIMIC study appearing in the MS-CXR evaluation pool is removed from MIMIC training and validation for all compared methods. MS-CXR and VinDr-CXR boxes are then used only for held-out ROI evaluation (evidence linkage and ROI occlusion), never as training supervision. CT-RATE provides paired 3D CT volumes, reports, and structured labels, and is used for both in-domain testing and cross-modality shift experiments.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Implementation and Training Details</title>
<p>All internal variants use the same backbone family and decoding policy unless a specific ablation requires a structural change: BiomedCLIP <monospace>ViT-B/16</monospace> with Mistral-7B-v0.1 and LoRA adaptation (rank 16, <inline-formula id="ieqn-120"><mml:math id="mml-ieqn-120"><mml:mi>&#x03B1;</mml:mi><mml:mo>=</mml:mo><mml:mn>32</mml:mn></mml:math></inline-formula>, dropout 0.05). CXR inputs are resized to <inline-formula id="ieqn-121"><mml:math id="mml-ieqn-121"><mml:mn>448</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>448</mml:mn></mml:math></inline-formula>; CT volumes are clipped to HU <inline-formula id="ieqn-122"><mml:math id="mml-ieqn-122"><mml:mo stretchy="false">[</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mn>1000</mml:mn><mml:mo>,</mml:mo><mml:mn>400</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, normalized, and sampled at 32 axial slices. This matched-backbone design is used to attribute performance differences to objective terms rather than to capacity changes.</p>
<p>Optimization uses AdamW (<inline-formula id="ieqn-123"><mml:math id="mml-ieqn-123"><mml:mn>2</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:msup><mml:mn>10</mml:mn><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>4</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> base LR), cosine decay, and 2k warmup. Batch sizes are 64 (CXR) and 8 (CT, with gradient accumulation to effective 64). Training runs for 80k steps on CXR and 40k on CT. Mixed-precision BF16, gradient checkpointing, and distributed sharding (FSDP-style) are used under the same configuration for all internal runs. Validation and checkpoint selection follow a single fixed rule across methods: select the checkpoint with highest validation anchor F1 under the same deterministic thresholding and exclusion policy used at test time.</p>
<p>For internal comparisons, preprocessing, augmentation, decoding, and intervention settings are shared across all rows. Inference uses beam size 3 and max report length 192 tokens, and atomic findings are positive at <inline-formula id="ieqn-124"><mml:math id="mml-ieqn-124"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo>&#x2265;</mml:mo><mml:mn>0.5</mml:mn></mml:math></inline-formula>. Calibration settings (ECE with 15 bins), intervention families, and region-mapping rules are unchanged across datasets. Unless explicitly stated otherwise, reported point estimates are the mean of five independent seeds and confidence intervals use two-stage bootstrap resampling. The same uncertainty protocol is used for aggregate counterfactual and localization summaries; when a compact table reports point estimates only, the corresponding values are interpreted as descriptive operating-point summaries rather than standalone significance claims. Training hardware is 8<inline-formula id="ieqn-125"><mml:math id="mml-ieqn-125"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>A100-80GB (or equivalent).</p>
<p>Optimization remained stable across the reported internal runs under the same warmup, sharding, and checkpoint-selection protocol. The main additional training cost of TA-DECT relative to the direct-to-text baseline comes from one greedy decode per sample plus two fixed extractor passes for the detached minimax target; the inference architecture itself is unchanged. Wall-clock comparisons are not reported here because they are cluster-dependent, but the later experiments isolate the extra components by matched-backbone ablations and targeted retraining variants.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Baselines and Ablations</title>
<p>Baselines are organized into two groups: internal matched-backbone baselines and external reference baselines. The internal group preserves backbone capacity, data splits, and decoding policy, and changes only objective components. The primary comparator is direct-to-text, which removes atomic conditioning while retaining the same visual and decoder family. Additional internal controls include Atomic&#x002B;report without dual minimax, single-extractor consistency (E1 only), and a grounding-only auxiliary model that emphasizes localization without explicit semantic completeness constraints.</p>
<p>External baselines provide reference points against established methods. The comparison includes R2Gen, R2GenGPT, KARGEN, LLaVA-Med, CT2Rep, and continual tuning (all introduced and cited in <xref ref-type="sec" rid="s2">Section 2</xref>). Because several external methods are report-only and do not expose calibrated slot probabilities, label-anchor outcomes are computed via the same dual-parser conversion used for all report-only rows, and ECE is omitted in those rows. The internal matched-backbone comparisons are therefore treated as the strongest causal evidence for the proposed objective, while the external rows serve as practical reference comparisons under a necessarily less symmetric evaluation interface.</p>
<p>Ablation design follows a one-factor-at-a-time protocol around the full TA-DECT objective. The ablation study removes each major term (<inline-formula id="ieqn-126"><mml:math id="mml-ieqn-126"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>cf</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>comp</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>), tests single-extractor replacement for minimax, and tests removal of anchor masking in minimax. This protocol is intended to reveal whether gains arise from one dominant component or from interaction among complementary constraints.</p>
</sec>
<sec id="s4_4">
<label>4.4</label>
<title>Truth-Anchored Finding Quality</title>
<p><xref ref-type="table" rid="table-3">Table 3</xref> reports micro-averaged finding quality on the primary structured-label anchors (CheX-hold., MIMIC-CXR-JPG curated labels, and CT-RATE structured labels), including F1, precision, recall, missed-finding rate, unsupported-assertion rate, ECE (when available), and exclusion fraction. Secondary report-derived rows are included for scale and extractor-drift diagnostics.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Main truth-anchored finding results (point estimate <inline-formula id="ieqn-127"><mml:math id="mml-ieqn-127"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula>95% bootstrap confidence interval (CI)).</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Dataset</th>
<th>Label Anchor</th>
<th>Method</th>
<th>F1</th>
<th>Prec.</th>
<th>Rec.</th>
<th>Miss</th>
<th>Unsup.</th>
<th>ECE</th>
<th>Excl.</th>
</tr>
</thead>
<tbody>
<tr>
<td align="center" colspan="10"><italic>CheXpert (internal)</italic></td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>TA-DECT</td>
<td>0.577 <inline-formula id="ieqn-128"><mml:math id="mml-ieqn-128"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.011</td>
<td>0.602</td>
<td>0.554</td>
<td>0.446</td>
<td>0.398</td>
<td>0.063</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>Direct-to-text (same bb.)</td>
<td>0.529 <inline-formula id="ieqn-129"><mml:math id="mml-ieqn-129"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.018</td>
<td>0.540</td>
<td>0.519</td>
<td>0.481</td>
<td>0.460</td>
<td>0.079</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>Atomic&#x002B;report (no dual)</td>
<td>0.566 <inline-formula id="ieqn-130"><mml:math id="mml-ieqn-130"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.014</td>
<td>0.590</td>
<td>0.544</td>
<td>0.456</td>
<td>0.410</td>
<td>0.069</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>Cycle-cons. (single extr.)</td>
<td>0.560 <inline-formula id="ieqn-131"><mml:math id="mml-ieqn-131"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.020</td>
<td>0.569</td>
<td>0.551</td>
<td>0.449</td>
<td>0.431</td>
<td>0.084</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>Grounding-only aux.</td>
<td>0.524 <inline-formula id="ieqn-132"><mml:math id="mml-ieqn-132"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.024</td>
<td>0.551</td>
<td>0.500</td>
<td>0.500</td>
<td>0.449</td>
<td>0.094</td>
<td>0.28</td>
</tr>
<tr>
<td align="center" colspan="10"><italic>CheXpert (external)</italic></td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>R2Gen (ext.)</td>
<td>0.501 <inline-formula id="ieqn-133"><mml:math id="mml-ieqn-133"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.026</td>
<td>0.516</td>
<td>0.486</td>
<td>0.514</td>
<td>0.484</td>
<td>&#x2013;</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>R2GenGPT (ext.)</td>
<td>0.538 <inline-formula id="ieqn-134"><mml:math id="mml-ieqn-134"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.015</td>
<td>0.566</td>
<td>0.513</td>
<td>0.487</td>
<td>0.434</td>
<td>&#x2013;</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>KARGEN (ext.)</td>
<td>0.536 <inline-formula id="ieqn-135"><mml:math id="mml-ieqn-135"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.018</td>
<td>0.553</td>
<td>0.521</td>
<td>0.479</td>
<td>0.447</td>
<td>&#x2013;</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>LLaVA-Med (ext.)</td>
<td>0.509 <inline-formula id="ieqn-136"><mml:math id="mml-ieqn-136"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.031</td>
<td>0.497</td>
<td>0.522</td>
<td>0.478</td>
<td>0.503</td>
<td>&#x2013;</td>
<td>0.28</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Struct. hold-out</td>
<td>Continual tuning (ext.)</td>
<td>0.554 <inline-formula id="ieqn-137"><mml:math id="mml-ieqn-137"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.013</td>
<td>0.579</td>
<td>0.532</td>
<td>0.468</td>
<td>0.421</td>
<td>&#x2013;</td>
<td>0.28</td>
</tr>
<tr>
<td align="center" colspan="10"><italic>MIMIC-CXR-JPG (internal)</italic></td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>TA-DECT</td>
<td>0.557 <inline-formula id="ieqn-138"><mml:math id="mml-ieqn-138"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.007</td>
<td>0.578</td>
<td>0.537</td>
<td>0.463</td>
<td>0.422</td>
<td>0.069</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>Direct-to-text (same bb.)</td>
<td>0.524 <inline-formula id="ieqn-139"><mml:math id="mml-ieqn-139"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.015</td>
<td>0.543</td>
<td>0.506</td>
<td>0.494</td>
<td>0.457</td>
<td>0.081</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>Atomic&#x002B;report (no dual)</td>
<td>0.548 <inline-formula id="ieqn-140"><mml:math id="mml-ieqn-140"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.010</td>
<td>0.571</td>
<td>0.527</td>
<td>0.473</td>
<td>0.429</td>
<td>0.071</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>Cycle-cons. (single extr.)</td>
<td>0.545 <inline-formula id="ieqn-141"><mml:math id="mml-ieqn-141"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.017</td>
<td>0.561</td>
<td>0.531</td>
<td>0.469</td>
<td>0.439</td>
<td>0.081</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>Grounding-only aux.</td>
<td>0.527 <inline-formula id="ieqn-142"><mml:math id="mml-ieqn-142"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.022</td>
<td>0.541</td>
<td>0.514</td>
<td>0.486</td>
<td>0.459</td>
<td>0.089</td>
<td>0.00</td>
</tr>
<tr>
<td align="center" colspan="10"><italic>MIMIC-CXR-JPG (external)</italic></td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>R2Gen (ext.)</td>
<td>0.512 <inline-formula id="ieqn-143"><mml:math id="mml-ieqn-143"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.023</td>
<td>0.523</td>
<td>0.501</td>
<td>0.499</td>
<td>0.477</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>R2GenGPT (ext.)</td>
<td>0.526 <inline-formula id="ieqn-144"><mml:math id="mml-ieqn-144"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.014</td>
<td>0.561</td>
<td>0.495</td>
<td>0.505</td>
<td>0.439</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>KARGEN (ext.)</td>
<td>0.534 <inline-formula id="ieqn-145"><mml:math id="mml-ieqn-145"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.017</td>
<td>0.552</td>
<td>0.517</td>
<td>0.483</td>
<td>0.448</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>LLaVA-Med (ext.)</td>
<td>0.517 <inline-formula id="ieqn-146"><mml:math id="mml-ieqn-146"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.026</td>
<td>0.505</td>
<td>0.529</td>
<td>0.471</td>
<td>0.495</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG</td>
<td>Man. curated</td>
<td>Continual tuning (ext.)</td>
<td>0.546 <inline-formula id="ieqn-147"><mml:math id="mml-ieqn-147"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.012</td>
<td>0.574</td>
<td>0.520</td>
<td>0.480</td>
<td>0.426</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td align="center" colspan="10"><italic>CT-RATE (internal)</italic></td>
</tr>
<tr>
<td>CT-RATE</td>
<td>Struct. labels</td>
<td>TA-DECT</td>
<td>0.471 <inline-formula id="ieqn-148"><mml:math id="mml-ieqn-148"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.013</td>
<td>0.485</td>
<td>0.458</td>
<td>0.542</td>
<td>0.515</td>
<td>0.088</td>
<td>0.00</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>Struct. labels</td>
<td>Direct-to-text (same bb.)</td>
<td>0.440 <inline-formula id="ieqn-149"><mml:math id="mml-ieqn-149"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.011</td>
<td>0.454</td>
<td>0.426</td>
<td>0.574</td>
<td>0.546</td>
<td>0.096</td>
<td>0.00</td>
</tr>
<tr>
<td align="center" colspan="10"><italic>CT-RATE (external)</italic></td>
</tr>
<tr>
<td>CT-RATE</td>
<td>Struct. labels</td>
<td>CT2Rep (ext.)</td>
<td>0.461 <inline-formula id="ieqn-150"><mml:math id="mml-ieqn-150"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.014</td>
<td>0.482</td>
<td>0.443</td>
<td>0.557</td>
<td>0.512</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>Struct. labels</td>
<td>Continual tuning (ext.)</td>
<td>0.468 <inline-formula id="ieqn-151"><mml:math id="mml-ieqn-151"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.012</td>
<td>0.490</td>
<td>0.450</td>
<td>0.550</td>
<td>0.499</td>
<td>&#x2013;</td>
<td>0.00</td>
</tr>
<tr>
<td align="center" colspan="10"><italic>Secondary report-derived diagnostic rows</italic></td>
</tr>
<tr>
<td>CheXpert</td>
<td>Rep.-derived</td>
<td>TA-DECT</td>
<td>0.676 <inline-formula id="ieqn-152"><mml:math id="mml-ieqn-152"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.015</td>
<td>0.692</td>
<td>0.661</td>
<td>0.339</td>
<td>0.308</td>
<td>0.056</td>
<td>0.22</td>
</tr>
<tr>
<td>CheXpert</td>
<td>Rep.-derived</td>
<td>Direct-to-text (same bb.)</td>
<td>0.653 <inline-formula id="ieqn-153"><mml:math id="mml-ieqn-153"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.017</td>
<td>0.671</td>
<td>0.636</td>
<td>0.364</td>
<td>0.329</td>
<td>0.071</td>
<td>0.22</td>
</tr>
<tr>
<td>MIMIC</td>
<td>Rep.-derived</td>
<td>TA-DECT</td>
<td>0.691 <inline-formula id="ieqn-154"><mml:math id="mml-ieqn-154"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.013</td>
<td>0.709</td>
<td>0.674</td>
<td>0.326</td>
<td>0.291</td>
<td>0.055</td>
<td>0.15</td>
</tr>
<tr>
<td>MIMIC</td>
<td>Rep.-derived</td>
<td>Continual tuning (ext.)</td>
<td>0.686 <inline-formula id="ieqn-155"><mml:math id="mml-ieqn-155"><mml:mo>&#x00B1;</mml:mo></mml:math></inline-formula> 0.014</td>
<td>0.701</td>
<td>0.671</td>
<td>0.329</td>
<td>0.299</td>
<td>&#x2013;</td>
<td>0.15</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The central question is whether unsupported-assertion reductions can be obtained without increasing omissions. Across matched-path internal rows, TA-DECT improves F1 while reducing both missed-finding and unsupported-assertion rates relative to direct-to-text and other internal controls. For the primary matched-backbone comparison against direct-to-text, the 95% bootstrap CIs for F1 are non-overlapping on all three primary anchors (CheX-hold., MIMIC-cur-hold., and CT-RATE), indicating that the observed F1 gains exceed the estimated run-and-sample uncertainty under the shared protocol. Missed-finding and unsupported-assertion rates remain part of the same operating-point description rather than separately tuned hypothesis-test endpoints. The CheX-hold. anchor has a non-zero excluded fraction under the fixed uncertain/blank policy, whereas MIMIC-cur-hold. and CT-RATE are binary anchors in this protocol and therefore have Excl. &#x003D; 0.00. As noted above, these internal rows provide the strongest evidence for the proposed objective because backbone family, split files, decoding policy, and intervention settings are matched.</p>
</sec>
<sec id="s4_5">
<label>4.5</label>
<title>Sample Size, Raw Counts, and Seed Variation</title>
<p><xref ref-type="table" rid="table-4">Table 4</xref> provides TP/FP/FN counts from a fixed reference checkpoint (seed 1) on the held-out primary anchors. Seed variation is reported as across-seed SD (five runs). Confidence intervals in <xref ref-type="table" rid="table-3">Table 3</xref> use two-stage bootstrap resampling.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Raw micro-counts and seed variation on primary anchors. TP/FP/FN are from a reference checkpoint (seed 1); Seed SD is computed across five independent seeds under the same protocol. <inline-formula id="ieqn-156"><mml:math id="mml-ieqn-156"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mi>p</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FN</mml:mtext></mml:mrow></mml:math></inline-formula> and <inline-formula id="ieqn-157"><mml:math id="mml-ieqn-157"><mml:msub><mml:mi>N</mml:mi><mml:mrow><mml:mi>p</mml:mi><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>d</mml:mi><mml:mo>+</mml:mo></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mtext>TP</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext>FP</mml:mtext></mml:mrow></mml:math></inline-formula>. Anchor composition (study/image counts, evaluable slot totals, and rater protocol) is reported in <xref ref-type="table" rid="table-5">Table 5</xref>.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th>Anchor</th>
<th>Method</th>
<th>TP</th>
<th>FP</th>
<th>FN</th>
<th><inline-formula id="ieqn-158"><mml:math id="mml-ieqn-158"><mml:msub><mml:mi mathvariant="bold-italic">N</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">p</mml:mi><mml:mi mathvariant="bold-italic">o</mml:mi><mml:mi mathvariant="bold-italic">s</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></th>
<th><inline-formula id="ieqn-159"><mml:math id="mml-ieqn-159"><mml:msub><mml:mi mathvariant="bold-italic">N</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">p</mml:mi><mml:mi mathvariant="bold-italic">r</mml:mi><mml:mi mathvariant="bold-italic">e</mml:mi><mml:mi mathvariant="bold-italic">d</mml:mi><mml:mo mathvariant="bold">+</mml:mo></mml:mrow></mml:msub></mml:math></inline-formula></th>
<th>Seed SD (F1)</th>
</tr>
</thead>
<tbody>
<tr>
<td>CheX-hold.</td>
<td>TA-DECT</td>
<td>8901</td>
<td>5891</td>
<td>7179</td>
<td>16,080</td>
<td>14,792</td>
<td>0.0079</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>Direct-to-text (same bb.)</td>
<td>8347</td>
<td>7113</td>
<td>7733</td>
<td>16,080</td>
<td>15,460</td>
<td>0.0118</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>TA-DECT</td>
<td>10,983</td>
<td>8015</td>
<td>9455</td>
<td>20,438</td>
<td>18,998</td>
<td>0.0062</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>Direct-to-text (same bb.)</td>
<td>10,337</td>
<td>8705</td>
<td>10,101</td>
<td>20,438</td>
<td>19,042</td>
<td>0.0101</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>TA-DECT</td>
<td>7002</td>
<td>7421</td>
<td>8288</td>
<td>15,290</td>
<td>14,423</td>
<td>0.0086</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>Direct-to-text (same bb.)</td>
<td>6521</td>
<td>7850</td>
<td>8769</td>
<td>15,290</td>
<td>14,371</td>
<td>0.0094</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Primary-anchor composition and counting scope. Evaluable slots are the total slot-level labels entering TP/FP/FN computation after exclusion rules. Positives and negatives are ground-truth slot counts and are therefore method-invariant within an anchor. For CheX-hold., raw structured-label slots are <inline-formula id="ieqn-160"><mml:math id="mml-ieqn-160"><mml:mn>4800</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>14</mml:mn></mml:math></inline-formula> &#x003D; 67,200 and evaluable slots after uncertain/blank exclusion are 48384. CheX-hold. is a structured-label hold-out split and is not the radiologist benchmark split.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Anchor (Table Shorthand)</th>
<th>Studies</th>
<th>Images/<break/>Volumes</th>
<th>Evaluable<break/> Slots</th>
<th>Positive<break/> Slots</th>
<th>Negative<break/> Slots</th>
<th>Rater<break/> Protocol</th>
</tr>
</thead>
<tbody>
<tr>
<td>CheXpert structured-label hold-out (CheX-hold.)</td>
<td>4800</td>
<td>4800</td>
<td>48,384</td>
<td>16,080</td>
<td>32,304</td>
<td>Released CheXpert structured labels (single label vector per study)</td>
</tr>
<tr>
<td>MIMIC-CXR-JPG manually curated hold-out (MIMIC-cur-hold.)</td>
<td>3269</td>
<td>3269</td>
<td>45,766</td>
<td>20,438</td>
<td>25,328</td>
<td><monospace>mimic-cxr-2.1.0-test-</monospace><break/><monospace>set-labeled.csv</monospace> (released benchmark labels)</td>
</tr>
<tr>
<td>CT-RATE structured-label hold-out (CT-RATE)</td>
<td>1530</td>
<td>1530</td>
<td>45,870</td>
<td>15,290</td>
<td>30,580</td>
<td>Released CT-RATE structured labels</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Anchor composition and counting scope are summarized in <xref ref-type="table" rid="table-5">Table 5</xref>.</p>

<p><xref ref-type="fig" rid="fig-2">Fig. 2</xref> provides a complementary view of the omission&#x2013;hallucination trade-off, plotting missed-finding rate vs. unsupported-assertion rate with uncertainty intervals.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Supported findings vs. missed findings trade-off. Faint points denote per-(site, finding, run) replicates; solid markers denote means; error bars denote 95% CIs. The top axis reports supported-assertion rate (<inline-formula id="ieqn-161"><mml:math id="mml-ieqn-161"><mml:mrow><mml:mtext>Precision</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mtext>unsupported</mml:mtext></mml:mrow></mml:math></inline-formula>).</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_81416-fig-2.tif"/>
</fig>
</sec>
<sec id="s4_6">
<label>4.6</label>
<title>Revision Analyses</title>
<p>To keep the revision compact, the newly requested sensitivity and retraining analyses are summarized in one table. The first block re-scores existing checkpoints under alternate mapping and threshold rules without retraining. The second block reports the two targeted retraining variants requested by the reviewers: mixed-granularity counterfactual training and a higher-slice CT pathway.</p>
<p>These additions are intentionally narrow. They are included to test whether the main directional conclusions persist under reasonable protocol changes, not to introduce a new benchmark or a broader architecture search. Across the re-scoring settings, the default protocol remains a stable operating point with the expected miss-vs.-unsupported trade-off under threshold sweeps. <xref ref-type="table" rid="table-6">Table 6</xref> summarizes both the re-scoring sensitivity analyses and the targeted retraining variants.</p>
<table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>Compact revision analyses. The first block re-scores existing checkpoints without retraining. The second block reports the two targeted retraining variants added in this revision. Metrics are micro-averaged F1, missed-finding rate (Miss), unsupported-assertion rate (Unsup.), selectivity <italic>S</italic>, and expected calibration error (ECE) where applicable. In the CT rows, the &#x201C;<inline-formula id="ieqn-162"><mml:math id="mml-ieqn-162"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> only&#x201D; and &#x201C;32 slices&#x201D; entries share the same reference checkpoint and are therefore numerically identical.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/> </colgroup>
<thead>
<tr>
<th colspan="10">Re-Scoring Sensitivity on Primary Anchors</th>
</tr>
<tr>
<th>Protocol<break/> Variant</th>
<th>CheX<break/> F1</th>
<th>CheX<break/> Miss</th>
<th>CheX<break/> Unsup.</th>
<th>MIMIC<break/> F1</th>
<th>MIMIC<break/> Miss</th>
<th>MIMIC<break/> Unsup.</th>
<th>CT<break/> F1</th>
<th>CT<break/> Miss</th>
<th>CT<break/> Unsup.</th>
</tr>
</thead>
<tbody>
<tr>
<td>Default protocol</td>
<td>0.577</td>
<td>0.446</td>
<td>0.398</td>
<td>0.557</td>
<td>0.463</td>
<td>0.422</td>
<td>0.471</td>
<td>0.542</td>
<td>0.515</td>
</tr>
<tr>
<td>Drop slots with missing region</td>
<td>0.565</td>
<td>0.458</td>
<td>0.410</td>
<td>0.549</td>
<td>0.471</td>
<td>0.430</td>
<td>0.465</td>
<td>0.550</td>
<td>0.520</td>
</tr>
<tr>
<td>Parser uncertain <inline-formula id="ieqn-163"><mml:math id="mml-ieqn-163"><mml:mo stretchy="false">&#x21A6;</mml:mo><mml:mn>0</mml:mn></mml:math></inline-formula></td>
<td>0.566</td>
<td>0.468</td>
<td>0.395</td>
<td>0.555</td>
<td>0.469</td>
<td>0.419</td>
<td>0.469</td>
<td>0.548</td>
<td>0.510</td>
</tr>
<tr>
<td>Conflict precedence: pos &#x003E; neg &#x003E; uncertain</td>
<td>0.574</td>
<td>0.449</td>
<td>0.401</td>
<td>0.555</td>
<td>0.465</td>
<td>0.423</td>
<td>0.470</td>
<td>0.545</td>
<td>0.514</td>
</tr>
<tr>
<td>Global threshold 0.3</td>
<td>0.553</td>
<td>0.385</td>
<td>0.498</td>
<td>0.528</td>
<td>0.391</td>
<td>0.534</td>
<td>0.461</td>
<td>0.472</td>
<td>0.591</td>
</tr>
<tr>
<td>Global threshold 0.5</td>
<td>0.577</td>
<td>0.446</td>
<td>0.398</td>
<td>0.557</td>
<td>0.463</td>
<td>0.422</td>
<td>0.471</td>
<td>0.542</td>
<td>0.515</td>
</tr>
<tr>
<td>Global threshold 0.7</td>
<td>0.545</td>
<td>0.545</td>
<td>0.320</td>
<td>0.530</td>
<td>0.562</td>
<td>0.328</td>
<td>0.443</td>
<td>0.634</td>
<td>0.438</td>
</tr>
<tr>
<td>Class-wise validation thresholds</td>
<td>0.579</td>
<td>0.438</td>
<td>0.403</td>
<td>0.562</td>
<td>0.451</td>
<td>0.425</td>
<td>0.478</td>
<td>0.526</td>
<td>0.518</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-6a">
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/></colgroup>
<thead>
<tr>
<th align="center" colspan="7"><bold>Targeted retraining analyses</bold></th>
</tr>
<tr>
<th><bold>Setting</bold></th>
<th><bold>Variant</bold></th>
<th><bold>F1</bold></th>
<th><bold>Miss</bold></th>
<th><bold>Unsup.</bold></th>
<th><bold>Sel.</bold> <inline-formula id="ieqn-164"><mml:math id="mml-ieqn-164"><mml:mi mathvariant="bold-italic">S</mml:mi></mml:math></inline-formula></th>
<th><bold>ECE</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td>MIMIC-cur-hold. training grid</td>
<td><inline-formula id="ieqn-165"><mml:math id="mml-ieqn-165"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> only</td>
<td>0.557</td>
<td>0.463</td>
<td>0.422</td>
<td>0.096</td>
<td>0.069</td>
</tr>
<tr>
<td>MIMIC-cur-hold. training grid</td>
<td>Mixed <inline-formula id="ieqn-166"><mml:math id="mml-ieqn-166"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>/<inline-formula id="ieqn-167"><mml:math id="mml-ieqn-167"><mml:mn>7</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>7</mml:mn></mml:math></inline-formula></td>
<td>0.558</td>
<td>0.458</td>
<td>0.426</td>
<td>0.118</td>
<td>0.072</td>
</tr>
<tr>
<td>CT-RATE training grid</td>
<td><inline-formula id="ieqn-168"><mml:math id="mml-ieqn-168"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula> only</td>
<td>0.471</td>
<td>0.542</td>
<td>0.515</td>
<td>0.087</td>
<td>0.088</td>
</tr>
<tr>
<td>CT-RATE training grid</td>
<td>Mixed <inline-formula id="ieqn-169"><mml:math id="mml-ieqn-169"><mml:mn>3</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>3</mml:mn></mml:math></inline-formula>/<inline-formula id="ieqn-170"><mml:math id="mml-ieqn-170"><mml:mn>7</mml:mn><mml:mo>&#x00D7;</mml:mo><mml:mn>7</mml:mn></mml:math></inline-formula></td>
<td>0.472</td>
<td>0.535</td>
<td>0.520</td>
<td>0.102</td>
<td>0.091</td>
</tr>
<tr>
<td>CT-RATE slices</td>
<td>32 slices</td>
<td>0.471</td>
<td>0.542</td>
<td>0.515</td>
<td>0.087</td>
<td>0.088</td>
</tr>
<tr>
<td>CT-RATE slices</td>
<td>64 slices</td>
<td>0.480</td>
<td>0.521</td>
<td>0.518</td>
<td>0.091</td>
<td>0.093</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4_7">
<label>4.7</label>
<title>Counterfactual Selectivity and Evidence Linkage</title>
<p>Label-anchor metrics quantify correctness and completeness, whereas counterfactual tests quantify evidence sensitivity. <xref ref-type="fig" rid="fig-3">Fig. 3</xref> reports selectivity for held-out ROI occlusion (MS-CXR, VinDr-CXR) and grid occlusion (CT-RATE). These intervention results are intended as coarse evidence-sensitivity diagnostics rather than lesion-level causal localization tests. Because targeted sets are defined by fixed region/category mappings, improved selectivity should be read as a more appropriate confidence response under the released anchors, not as evidence that every fine-grained localization failure is removed.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Counterfactual evidence sensitivity. Bars summarize selectivity aggregated at the (site, finding, run) level; black markers show mean targeted_drop (<inline-formula id="ieqn-172"><mml:math id="mml-ieqn-172"><mml:mo>&#x2219;</mml:mo></mml:math></inline-formula>) and &#x2212;untargeted_change (<inline-formula id="ieqn-173"><mml:math id="mml-ieqn-173"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula>). This aggregation differs from sample-level summaries in some tables and can yield different absolute values while preserving direction.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_81416-fig-3.tif"/>
</fig>
<p>To connect selectivity with spatial evidence behavior, patch-level gradient saliency maps are computed and localization is evaluated on held-out ROI data using pointing game accuracy (PGA) and intersection-over-union at threshold 0.1 (IoU@0.1). For each target finding, the corresponding slot logit is backpropagated to the visual patch tokens, the absolute gradient is taken, the result is averaged across the channel dimension, normalized to <inline-formula id="ieqn-171"><mml:math id="mml-ieqn-171"><mml:mo stretchy="false">[</mml:mo><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn><mml:mo stretchy="false">]</mml:mo></mml:math></inline-formula>, and upsampled to image resolution. PGA counts whether the peak response lies inside the reference ROI, and IoU@0.1 thresholds the normalized heatmap at 0.1 before measuring overlap with the held-out ROI mask. <xref ref-type="table" rid="table-7">Table 7</xref> reports localization and counterfactual outcomes jointly.</p>
<table-wrap id="table-7">
<label>Table 7</label>
<caption>
<title>Evidence linkage and counterfactual results on held-out ROI splits. Localization score is computed from model-produced evidence maps with a shared post-processing rule. For ROI datasets, targeted sets are concept-and-region matched to ROI category mappings; for grid datasets, targeted sets are region-matched. Untgt. stab. is <inline-formula id="ieqn-174"><mml:math id="mml-ieqn-174"><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mtext>untargeted_change</mml:mtext></mml:mrow></mml:math></inline-formula>. Supp. rate is the fraction of positive anchor labels predicted positive (micro-averaged).</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Dataset</th>
<th>Method</th>
<th>Loc. Metric</th>
<th>Loc. Score</th>
<th>Tgt. Drop</th>
<th>Untgt. stab.</th>
<th>Selectivity</th>
<th>Label Anchor</th>
<th>Supp. Rate</th>
</tr>
</thead>
<tbody>
<tr>
<td>MS-CXR</td>
<td>TA-DECT</td>
<td>PGA<inline-formula id="ieqn-175"><mml:math id="mml-ieqn-175"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.404</td>
<td>0.202</td>
<td>0.940</td>
<td>0.142</td>
<td>Box cats</td>
<td>0.591</td>
</tr>
<tr>
<td>MS-CXR</td>
<td>Direct-to-text</td>
<td>PGA<inline-formula id="ieqn-176"><mml:math id="mml-ieqn-176"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.307</td>
<td>0.170</td>
<td>0.915</td>
<td>0.085</td>
<td>Box cats</td>
<td>0.533</td>
</tr>
<tr>
<td>MS-CXR</td>
<td>No counterfactual</td>
<td>PGA<inline-formula id="ieqn-177"><mml:math id="mml-ieqn-177"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.381</td>
<td>0.163</td>
<td>0.901</td>
<td>0.064</td>
<td>Box cats</td>
<td>0.565</td>
</tr>
<tr>
<td>MS-CXR</td>
<td>Grounding-only aux.</td>
<td>PGA<inline-formula id="ieqn-178"><mml:math id="mml-ieqn-178"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.425</td>
<td>0.189</td>
<td>0.929</td>
<td>0.118</td>
<td>Box cats</td>
<td>0.551</td>
</tr>
<tr>
<td>VinDr-CXR</td>
<td>TA-DECT</td>
<td>IoU@0.1<inline-formula id="ieqn-179"><mml:math id="mml-ieqn-179"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.346</td>
<td>0.191</td>
<td>0.938</td>
<td>0.130</td>
<td>Img labels</td>
<td>0.561</td>
</tr>
<tr>
<td>VinDr-CXR</td>
<td>Direct-to-text</td>
<td>IoU@0.1<inline-formula id="ieqn-180"><mml:math id="mml-ieqn-180"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.263</td>
<td>0.164</td>
<td>0.917</td>
<td>0.081</td>
<td>Img labels</td>
<td>0.514</td>
</tr>
<tr>
<td>VinDr-CXR</td>
<td>No counterfactual</td>
<td>IoU@0.1<inline-formula id="ieqn-181"><mml:math id="mml-ieqn-181"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.322</td>
<td>0.157</td>
<td>0.893</td>
<td>0.050</td>
<td>Img labels</td>
<td>0.542</td>
</tr>
<tr>
<td>VinDr-CXR</td>
<td>Grounding-only aux.</td>
<td>IoU@0.1<inline-formula id="ieqn-182"><mml:math id="mml-ieqn-182"><mml:mo stretchy="false">&#x2191;</mml:mo></mml:math></inline-formula></td>
<td>0.369</td>
<td>0.177</td>
<td>0.919</td>
<td>0.096</td>
<td>Img labels</td>
<td>0.527</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The later failure review makes this limit visible: anatomy mislocalization/region mismatch and uncertainty-collapse cases remain even when coarse selectivity and PGA/IoU improve.</p>
</sec>
<sec id="s4_8">
<label>4.8</label>
<title>Objective Ablations</title>
<p><xref ref-type="table" rid="table-8">Table 8</xref> isolates each objective component. Removing the counterfactual term consistently lowers selectivity, showing that targeted evidence sensitivity does not emerge reliably from label supervision and report likelihood alone. Removing completeness increases missed-finding rates, consistent with under-reporting behavior.</p>
<table-wrap id="table-8">
<label>Table 8</label>
<caption>
<title>Objective ablations across datasets. Dual: dual-extractor minimax term. CF: counterfactual term. Comp: label-completeness term. Sel.: selectivity score under the intervention family used in each setting (grid occlusions for these ablations). Extr. dis.: disagreement rate between the two fixed extractors on generated reports (diagnostic only), computed as the fraction of finding slots for which <inline-formula id="ieqn-183"><mml:math id="mml-ieqn-183"><mml:msub><mml:mi>E</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2260;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>r</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> on the generated report <inline-formula id="ieqn-184"><mml:math id="mml-ieqn-184"><mml:mi>r</mml:mi></mml:math></inline-formula>. &#x201C;w/o anchor mask&#x201D; removes the label-consistency gate <inline-formula id="ieqn-185"><mml:math id="mml-ieqn-185"><mml:msubsup><mml:mi>m</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mi>k</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:msubsup><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> in <inline-formula id="ieqn-186"><mml:math id="mml-ieqn-186"><mml:msub><mml:mrow><mml:mi>&#x02112;</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>minimax</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula>. Excl. is computed from ground-truth anchor labels within each setting.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Setting</th>
<th>Variant</th>
<th>Dual</th>
<th>CF</th>
<th>Comp</th>
<th>F1</th>
<th>Excl.</th>
<th>Miss</th>
<th>Unsup.</th>
<th>Sel.</th>
<th>Extr. dis.</th>
</tr>
</thead>
<tbody>
<tr>
<td>MIMIC-cur-hold.</td>
<td>TA-DECT</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.557</td>
<td>0.00</td>
<td>0.463</td>
<td>0.422</td>
<td>0.096</td>
<td>0.14</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>- Dual-extr.</td>
<td>N</td>
<td>Y</td>
<td>Y</td>
<td>0.548</td>
<td>0.00</td>
<td>0.475</td>
<td>0.431</td>
<td>0.081</td>
<td>0.19</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>- Counterfactual</td>
<td>Y</td>
<td>N</td>
<td>Y</td>
<td>0.553</td>
<td>0.00</td>
<td>0.468</td>
<td>0.425</td>
<td>0.029</td>
<td>0.16</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>- Completeness</td>
<td>Y</td>
<td>Y</td>
<td>N</td>
<td>0.533</td>
<td>0.00</td>
<td>0.519</td>
<td>0.409</td>
<td>0.091</td>
<td>0.14</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>Single-extr. (E1)</td>
<td>(E1)</td>
<td>Y</td>
<td>Y</td>
<td>0.545</td>
<td>0.00</td>
<td>0.483</td>
<td>0.436</td>
<td>0.067</td>
<td>0.23</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>Minimax w/o anchor mask</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.542</td>
<td>0.00</td>
<td>0.486</td>
<td>0.438</td>
<td>0.072</td>
<td>0.18</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>Direct-to-text (no atomic cond.)</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.524</td>
<td>0.00</td>
<td>0.494</td>
<td>0.457</td>
<td>0.044</td>
<td>0.20</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>TA-DECT</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.577</td>
<td>0.28</td>
<td>0.446</td>
<td>0.398</td>
<td>0.112</td>
<td>0.11</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>- Dual-extr.</td>
<td>N</td>
<td>Y</td>
<td>Y</td>
<td>0.566</td>
<td>0.28</td>
<td>0.455</td>
<td>0.410</td>
<td>0.094</td>
<td>0.17</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>- Counterfactual</td>
<td>Y</td>
<td>N</td>
<td>Y</td>
<td>0.576</td>
<td>0.28</td>
<td>0.446</td>
<td>0.416</td>
<td>0.018</td>
<td>0.13</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>- Completeness</td>
<td>Y</td>
<td>Y</td>
<td>N</td>
<td>0.551</td>
<td>0.28</td>
<td>0.496</td>
<td>0.389</td>
<td>0.102</td>
<td>0.11</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>Single-extr. (E1)</td>
<td>(E1)</td>
<td>Y</td>
<td>Y</td>
<td>0.560</td>
<td>0.28</td>
<td>0.463</td>
<td>0.417</td>
<td>0.073</td>
<td>0.19</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>Minimax w/o anchor mask</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.558</td>
<td>0.28</td>
<td>0.468</td>
<td>0.420</td>
<td>0.081</td>
<td>0.16</td>
</tr>
<tr>
<td>CheX-hold.</td>
<td>Direct-to-text (no atomic cond.)</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.529</td>
<td>0.28</td>
<td>0.481</td>
<td>0.460</td>
<td>0.051</td>
<td>0.21</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>TA-DECT</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.471</td>
<td>0.00</td>
<td>0.542</td>
<td>0.515</td>
<td>0.087</td>
<td>0.16</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>- Counterfactual</td>
<td>Y</td>
<td>N</td>
<td>Y</td>
<td>0.469</td>
<td>0.00</td>
<td>0.546</td>
<td>0.519</td>
<td>0.017</td>
<td>0.17</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>- Completeness</td>
<td>Y</td>
<td>Y</td>
<td>N</td>
<td>0.448</td>
<td>0.00</td>
<td>0.586</td>
<td>0.501</td>
<td>0.079</td>
<td>0.16</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>Direct-to-text (no atomic cond.)</td>
<td>Y</td>
<td>Y</td>
<td>Y</td>
<td>0.440</td>
<td>0.00</td>
<td>0.574</td>
<td>0.546</td>
<td>0.038</td>
<td>0.18</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Weakening dual-extractor constraints (removing dual minimax, replacing minimax with single-extractor consistency, or removing anchor masking) increases extractor disagreement and reduces label-anchor quality. Together, these ablations are consistent with complementary roles across objective terms rather than a single dominant term.</p>
</sec>
<sec id="s4_9">
<label>4.9</label>
<title>Robustness under Pre-Specified Shifts</title>
<p>The study evaluates a pre-specified shift suite: MIMIC<inline-formula id="ieqn-187"><mml:math id="mml-ieqn-187"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>CheXpert, CheXpert<inline-formula id="ieqn-188"><mml:math id="mml-ieqn-188"><mml:mo stretchy="false">&#x2192;</mml:mo></mml:math></inline-formula>MIMIC, and two CXR/CT modality shifts via CT-RATE. <xref ref-type="fig" rid="fig-4">Fig. 4</xref> decomposes drift into label, evidence, and extractor components; <xref ref-type="table" rid="table-9">Table 9</xref> reports deltas relative to each method&#x2019;s in-domain baseline.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Pre-specified robustness and drift decomposition. (<bold>A</bold>) Shift-stratum robustness summary: circles/squares/triangles denote mild/moderate/severe shift strata from the fixed pre-registered severity multipliers (0.78/1.00/1.28) used in the stress suite generator; bars are means with 95% CIs. (<bold>B</bold>) Normalized drift composition with quantile spread markers.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_81416-fig-4.tif"/>
</fig><table-wrap id="table-9">
<label>Table 9</label>
<caption>
<title>Pre-specified shift suite results. Deltas are computed against each method&#x2019;s in-domain test performance using identical decoding and the same deterministic intervention family. Drift src. is chosen by a fixed rule: the largest normalized magnitude among label drift (<inline-formula id="ieqn-189"><mml:math id="mml-ieqn-189"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>F1|), evidence drift (<inline-formula id="ieqn-190"><mml:math id="mml-ieqn-190"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi><mml:mi>S</mml:mi><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow></mml:math></inline-formula>), and extractor drift (<inline-formula id="ieqn-191"><mml:math id="mml-ieqn-191"><mml:mrow><mml:mo stretchy="false">|</mml:mo></mml:mrow><mml:mi mathvariant="normal">&#x0394;</mml:mi></mml:math></inline-formula>Extr.dis.|). Extractor drift is diagnostic only. Continual tuning follows Sun et al. [<xref ref-type="bibr" rid="ref-7">7</xref>].</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Train</th>
<th>Test</th>
<th>Shift</th>
<th>Method</th>
<th>Anchor</th>
<th><inline-formula id="ieqn-192"><mml:math id="mml-ieqn-192"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>F1</th>
<th><inline-formula id="ieqn-193"><mml:math id="mml-ieqn-193"><mml:mi mathvariant="bold">&#x0394;</mml:mi><mml:mi mathvariant="bold-italic">S</mml:mi></mml:math></inline-formula></th>
<th><inline-formula id="ieqn-194"><mml:math id="mml-ieqn-194"><mml:mi mathvariant="bold">&#x0394;</mml:mi></mml:math></inline-formula>Extr.dis.</th>
<th>Drift src.</th>
</tr>
</thead>
<tbody>
<tr>
<td>MIMIC</td>
<td>CheX-hold.</td>
<td>Style</td>
<td>TA-DECT</td>
<td>Struct. hold-out</td>
<td>&#x2212;0.037</td>
<td>&#x2212;0.019</td>
<td>&#x002B;0.031</td>
<td>Label</td>
</tr>
<tr>
<td>MIMIC</td>
<td>CheX-hold.</td>
<td>Style</td>
<td>Direct-to-text</td>
<td>Struct. hold-out</td>
<td>&#x2212;0.061</td>
<td>&#x2212;0.017</td>
<td>&#x002B;0.047</td>
<td>Label</td>
</tr>
<tr>
<td>MIMIC</td>
<td>CheX-hold.</td>
<td>Style</td>
<td>Continual tuning</td>
<td>Struct. hold-out</td>
<td>&#x2212;0.045</td>
<td>&#x2212;0.028</td>
<td>&#x002B;0.039</td>
<td>Label</td>
</tr>
<tr>
<td>CheXpert</td>
<td>MIMIC-cur-hold.</td>
<td>Style</td>
<td>TA-DECT</td>
<td>Man. curated hold-out</td>
<td>&#x2212;0.031</td>
<td>&#x2212;0.010</td>
<td>&#x002B;0.034</td>
<td>Extractor</td>
</tr>
<tr>
<td>CheXpert</td>
<td>MIMIC-cur-hold.</td>
<td>Style</td>
<td>Direct-to-text</td>
<td>Man. curated hold-out</td>
<td>&#x2212;0.029</td>
<td>&#x2212;0.026</td>
<td>&#x002B;0.061</td>
<td>Extractor</td>
</tr>
<tr>
<td>CheXpert</td>
<td>MIMIC-cur-hold.</td>
<td>Style</td>
<td>Continual tuning</td>
<td>Man. curated hold-out</td>
<td>&#x2212;0.039</td>
<td>&#x2212;0.021</td>
<td>&#x002B;0.036</td>
<td>Label</td>
</tr>
<tr>
<td>MIMIC</td>
<td>CT-RATE</td>
<td>Modality</td>
<td>TA-DECT</td>
<td>Struct.</td>
<td>&#x2212;0.074</td>
<td>&#x2212;0.041</td>
<td>&#x002B;0.050</td>
<td>Label</td>
</tr>
<tr>
<td>MIMIC</td>
<td>CT-RATE</td>
<td>Modality</td>
<td>Direct-to-text</td>
<td>Struct.</td>
<td>&#x2212;0.082</td>
<td>&#x2212;0.033</td>
<td>&#x002B;0.069</td>
<td>Label</td>
</tr>
<tr>
<td>MIMIC</td>
<td>CT-RATE</td>
<td>Modality</td>
<td>Continual tuning</td>
<td>Struct.</td>
<td>&#x2212;0.079</td>
<td>&#x2212;0.055</td>
<td>&#x002B;0.053</td>
<td>Label</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>CheX-hold.</td>
<td>Modality</td>
<td>TA-DECT</td>
<td>Struct. hold-out</td>
<td>&#x2212;0.052</td>
<td>&#x2212;0.039</td>
<td>&#x002B;0.058</td>
<td>Extractor</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>CheX-hold.</td>
<td>Modality</td>
<td>Direct-to-text</td>
<td>Struct. hold-out</td>
<td>&#x2212;0.066</td>
<td>&#x2212;0.047</td>
<td>&#x002B;0.062</td>
<td>Label</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>CheX-hold.</td>
<td>Modality</td>
<td>Continual tuning</td>
<td>Struct. hold-out</td>
<td>&#x2212;0.058</td>
<td>&#x2212;0.031</td>
<td>&#x002B;0.060</td>
<td>Extractor</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>All methods degrade under shift, but the decomposition clarifies where degradation concentrates. In several settings, TA-DECT shows smaller label-anchor drift than direct-to-text under identical decoding and intervention rules. Extractor drift remains diagnostic rather than primary evidence, but it helps separate text-parser instability from anchor-level performance change.</p>
</sec>
<sec id="s4_10">
<label>4.10</label>
<title>Metric Validity and Sanity Checks</title>
<p><xref ref-type="fig" rid="fig-5">Fig. 5</xref> tests whether anchor metrics can be improved by degenerate policies such as forced short reports, uncertainty-heavy phrasing, and global confidence shrinkage (<inline-formula id="ieqn-195"><mml:math id="mml-ieqn-195"><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub><mml:mo stretchy="false">&#x2190;</mml:mo><mml:mi>&#x03BA;</mml:mi><mml:msub><mml:mi>p</mml:mi><mml:mi>f</mml:mi></mml:msub></mml:math></inline-formula>, fixed <inline-formula id="ieqn-196"><mml:math id="mml-ieqn-196"><mml:mi>&#x03BA;</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mn>1</mml:mn></mml:math></inline-formula>).</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Metric validity under automatic gaming stress tests. (<bold>A</bold>) Compact cross-metric comparison across the gaming policies. (<bold>B</bold>) Direction-specific delta summary for unsupported-vs-miss changes. (<bold>C</bold>) Direction-specific delta summary for F1-vs-selectivity changes.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_81416-fig-5.tif"/>
</fig>
<p>Across settings, these stress tests produce compensating failures: lower unsupported-assertion rates are typically accompanied by higher miss rates or weaker selectivity. This supports interpreting the main endpoint as a coupled profile (F1, miss, unsupported, selectivity) rather than any single scalar.</p>
</sec>
<sec id="s4_11">
<label>4.11</label>
<title>Case Studies</title>
<p><xref ref-type="fig" rid="fig-6">Fig. 6</xref> provides representative qualitative examples that complement the aggregate metrics. Each panel summarizes supported/unsupported/missed findings together with confidence changes before and after ROI or grid occlusion under the same mapping rules used in the quantitative protocol.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Qualitative grounded report cases with counterfactual interventions. (<bold>A</bold>) MS-CXR ROI-occlusion example. (<bold>B</bold>) VinDr-CXR ROI-occlusion example. (<bold>C</bold>) CT-RATE grid-occlusion example. Each panel summarizes supported/unsupported/missed findings together with confidence changes before and after the intervention; for visualization clarity, MS-CXR and VinDr-CXR highlight ROI intervention regions, whereas CT-RATE shows the occluded grid cell directly.</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_81416-fig-6.tif"/>
</fig>
<p>These examples are illustrative diagnostics rather than primary evidence. They are included to make mixed error behavior within a single study visually explicit while keeping the main claims anchored to structured-label and ROI-based results.</p>
</sec>
<sec id="s4_12">
<label>4.12</label>
<title>Systematic Failure Taxonomy</title>
<p>To make residual safety-relevant errors more explicit, and to expose failure modes that can be obscured by coarse region partitions or fixed uncertain-label exclusion, this revision reports a compact manual review of 20 errorful studies per primary anchor (CheX-hold., MIMIC-cur-hold., CT-RATE), where &#x201C;errorful&#x201D; means at least one false positive or false negative under the default threshold. Each sampled study receives one primary label: omission-dominant, unsupported-assertion-dominant, anatomy mislocalization/region mismatch, or uncertainty/wording collapse. <xref ref-type="table" rid="table-10">Table 10</xref> summarizes the resulting error categories within each reviewed anchor.</p>
<table-wrap id="table-10">
<label>Table 10</label>
<caption>
<title>Systematic failure taxonomy from manual review of 20 errorful studies per anchor. Percentages are within-anchor proportions over the reviewed sample.</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th>Anchor</th>
<th>Omission-Dominant</th>
<th>Unsupported-Assertion-Dominant</th>
<th>Anatomy Mislocalization/<break/>Region Mismatch</th>
<th>Uncertainty or Wording Collapse</th>
</tr>
</thead>
<tbody>
<tr>
<td>CheX-hold.</td>
<td>25%</td>
<td>45%</td>
<td>15%</td>
<td>15%</td>
</tr>
<tr>
<td>MIMIC-cur-hold.</td>
<td>35%</td>
<td>30%</td>
<td>20%</td>
<td>15%</td>
</tr>
<tr>
<td>CT-RATE</td>
<td>50%</td>
<td>15%</td>
<td>30%</td>
<td>5%</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Discussion and Limitations</title>
<p>Across the reported settings, a structured bottleneck combined with dual-extractor consistency and counterfactual/completeness constraints is associated with overall gains in correctness and completeness on the primary anchors, rather than a collapse into a single error-mode trade-off. Gains on selectivity and localization further suggest that the improvement is not confined to surface report style, while parser signals remain auxiliary and diagnostic rather than the main evidence for correctness.</p>
<p>The revision also clarifies the main scope limits. Deterministic tuple conversion remains a real design commitment, so alternate region mappings, uncertainty policies, or conflict-resolution rules can shift absolute numbers even when ranking is stable. The evidence-sensitivity protocol still relies on a coarse 9-region partition and limited held-out ROI subsets, saliency-based localization remains only a supportive faithfulness probe, and the CT pathway remains a deliberately simple volumetric approximation. Accordingly, the localization claim in this paper is limited to coarse anchor-aligned evidence sensitivity rather than fine-grained lesion-level causal verification. In addition, the fixed exclusion of uncertain and blank labels keeps the binary anchor protocol comparable across methods but can hide clinically relevant uncertainty behavior.</p>
</sec>
<sec id="s6">
<label>6</label>
<title>Conclusion</title>
<p>TA-DECT couples atomic structured prediction, dual-extractor report consistency, and counterfactual training in a unified objective. Across CXR and CT anchors, the reported results support a coupled correctness profile: higher truth-anchored F1 with simultaneous reductions in missed-finding and unsupported-assertion rates, together with improved coarse selectivity under evidence removal.</p>
<p>The study also clarifies supervision roles within open-data settings: structured labels and held-out ROI annotations support the primary correctness and evidence-linkage claims, whereas parser-derived report signals are most informative for consistency and drift diagnostics.</p>
<p>More broadly, the results suggest that omission control and evidence sensitivity are worth optimizing directly, rather than treating them as by-products of fluent text generation. A practical next step is to expand the atomic inventory, test finer-grained intervention schemes, and evaluate stronger CT backbones while preserving the shared mapping and anchor-accounting framework for cross-domain comparison.</p>
</sec>
</body>
<back>
<ack>
<p>The author thanks the creators and maintainers of the publicly released datasets and open-source tools used in this study.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>The author received no specific funding for this study.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>All datasets used in this study are publicly released from their official sources, including CheXpert, MIMIC-CXR, MIMIC-CXR-JPG, MS-CXR, VinDr-CXR, and CT-RATE. Access and usage follow each dataset&#x2019;s license and terms; for PhysioNet-hosted datasets, credentialing and data-use agreement requirements apply.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>This study used only publicly released, de-identified datasets obtained under their respective access terms. No new patient recruitment, intervention, or identifiable data collection was conducted by the author; therefore, additional ethics approval and informed consent were not required for this study.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The author declares no conflicts of interest.</p>
</sec>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Johnson</surname> <given-names>AE</given-names></string-name>, <string-name><surname>Pollard</surname> <given-names>TJ</given-names></string-name>, <string-name><surname>Berkowitz</surname> <given-names>SJ</given-names></string-name>, <string-name><surname>Greenbaum</surname> <given-names>NR</given-names></string-name>, <string-name><surname>Lungren</surname> <given-names>MP</given-names></string-name>, <string-name><surname>Deng</surname> <given-names>CY</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>MIMIC-CXR, a de-identified publicly available database of chest radiographs with free-text reports</article-title>. <source>Sci Data</source>. <year>2019</year>;<volume>6</volume>(<issue>1</issue>):<fpage>317</fpage>. doi:<pub-id pub-id-type="doi">10.1038/s41597-019-0322-0</pub-id>; <pub-id pub-id-type="pmid">31831740</pub-id></mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Irvin</surname> <given-names>J</given-names></string-name>, <string-name><surname>Rajpurkar</surname> <given-names>P</given-names></string-name>, <string-name><surname>Ko</surname> <given-names>M</given-names></string-name>, <string-name><surname>Yu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Ciurea-Ilcus</surname> <given-names>S</given-names></string-name>, <string-name><surname>Chute</surname> <given-names>C</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Chexpert: a large chest radiograph dataset with uncertainty labels and expert comparison</article-title>. <source>Proc AAAI Conf Artif Intell</source>. <year>2019</year>;<volume>33</volume>(<issue>1</issue>):<fpage>590</fpage>&#x2013;<lpage>7</lpage>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Chen</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Song</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Chang</surname> <given-names>TH</given-names></string-name>, <string-name><surname>Wan</surname> <given-names>X</given-names></string-name></person-group>. <article-title>Generating radiology reports via memory-driven transformer</article-title>. In: <conf-name>Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP); 2020 Nov 16&#x2013;20; Online</conf-name>. p. <fpage>1439</fpage>&#x2013;<lpage>49</lpage>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>L</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Zhou</surname> <given-names>L</given-names></string-name></person-group>. <article-title>R2GenGPT: radiology report generation with frozen LLMS</article-title>. <source>Meta-Radiology</source>. <year>2023</year>;<volume>1</volume>(<issue>3</issue>):<fpage>100033</fpage>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>L</given-names></string-name>, <string-name><surname>Zhou</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Kargen: knowledge-enhanced automated radiology report generation using large language models</article-title>. In: <conf-name>Proceedings of the Medical Image Computing and Computer Assisted Intervention&#x2014;MICCAI 2024; 2024 Oct 6&#x2013;10; Marrakesh, Morocco</conf-name>. <publisher-loc>Cham, Switzerland</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2024</year>. p. <fpage>382</fpage>&#x2013;<lpage>92</lpage>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>C</given-names></string-name>, <string-name><surname>Wong</surname> <given-names>C</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>S</given-names></string-name>, <string-name><surname>Usuyama</surname> <given-names>N</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>H</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>J</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Llava-med: training a large language-and-vision assistant for biomedicine in one day</article-title>. <source>Adv Neural Inf Process Syst</source>. <year>2023</year>;<volume>36</volume>:<fpage>28541</fpage>&#x2013;<lpage>64</lpage>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Sun</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Khor</surname> <given-names>HG</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>H</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Y</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Continually tuning a large language model for multi-domain radiology report generation</article-title>. In: <conf-name>Proceedings of the Medical Image Computing and Computer Assisted Intervention&#x2014;MICCAI 2024; 2024 Oct 6&#x2013;10; Marrakesh, Morocco</conf-name>. <publisher-loc>Cham, Switzerland</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2024</year>. p. <fpage>177</fpage>&#x2013;<lpage>87</lpage>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Hamamci</surname> <given-names>IE</given-names></string-name>, <string-name><surname>Er</surname> <given-names>S</given-names></string-name>, <string-name><surname>Menze</surname> <given-names>B</given-names></string-name></person-group>. <article-title>Ct2rep: automated radiology report generation for 3D medical imaging</article-title>. In: <conf-name>Proceedings of the Medical Image Computing and Computer Assisted Intervention&#x2014;MICCAI 2024; 2024 Oct 6&#x2013;10; Marrakesh, Morocco</conf-name>. <publisher-loc>Cham, Switzerland</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2024</year>. p. <fpage>476</fpage>&#x2013;<lpage>86</lpage>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>C</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>X</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Yu</surname> <given-names>W</given-names></string-name>, <string-name><surname>Shao</surname> <given-names>J</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>GTP-4o: modality-prompted heterogeneous graph learning for omni-modal biomedical representation</article-title>. In: <conf-name>European conference on computer vision</conf-name>. <publisher-loc>Berlin/Heidelberg, Germany</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2024</year>. p. <fpage>168</fpage>&#x2013;<lpage>87</lpage>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>X</given-names></string-name>, <string-name><surname>Li</surname> <given-names>C</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Yuan</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>PV-SSM: exploring pure visual state space model for high-dimensional medical data analysis</article-title>. In: <conf-name>Proceedings of the 2024 IEEE International Conference on Bioinformatics and Biomedicine (BIBM); 2024 Dec 3&#x2013;6</conf-name>; <publisher-loc>Lisbon, Portugal</publisher-loc>. <year>2024</year>. p. <fpage>2542</fpage>&#x2013;<lpage>9</lpage>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Chambon</surname> <given-names>P</given-names></string-name>, <string-name><surname>Delbrouck</surname> <given-names>JB</given-names></string-name>, <string-name><surname>Sounack</surname> <given-names>T</given-names></string-name>, <string-name><surname>Huang</surname> <given-names>SC</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Varma</surname> <given-names>M</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Chexpert plus: hundreds of thousands of aligned radiology texts, images and patients</article-title>. <comment>arXiv:240519538. 2024</comment>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Boecking</surname> <given-names>B</given-names></string-name>, <string-name><surname>Usuyama</surname> <given-names>N</given-names></string-name>, <string-name><surname>Bannur</surname> <given-names>S</given-names></string-name>, <string-name><surname>Castro</surname> <given-names>DC</given-names></string-name>, <string-name><surname>Schwaighofer</surname> <given-names>A</given-names></string-name>, <string-name><surname>Hyland</surname> <given-names>S</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Making the most of text semantics to improve biomedical vision&#x2013;language processing</article-title>. In: <conf-name>European conference on computer vision</conf-name>. <publisher-loc>Berlin/Heidelberg, Germany</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2022</year>. p. <fpage>1</fpage>&#x2013;<lpage>21</lpage>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Nguyen</surname> <given-names>HQ</given-names></string-name>, <string-name><surname>Lam</surname> <given-names>K</given-names></string-name>, <string-name><surname>Le</surname> <given-names>LT</given-names></string-name>, <string-name><surname>Pham</surname> <given-names>HH</given-names></string-name>, <string-name><surname>Tran</surname> <given-names>DQ</given-names></string-name>, <string-name><surname>Nguyen</surname> <given-names>DB</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>VinDr-CXR: an open dataset of chest X-rays with radiologist&#x2019;s annotations</article-title>. <source>Sci Data</source>. <year>2022</year>;<volume>9</volume>(<issue>1</issue>):<fpage>429</fpage>; <pub-id pub-id-type="pmid">35858929</pub-id></mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Hamamci</surname> <given-names>IE</given-names></string-name>, <string-name><surname>Er</surname> <given-names>S</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Almas</surname> <given-names>F</given-names></string-name>, <string-name><surname>Simsek</surname> <given-names>AG</given-names></string-name>, <string-name><surname>Esirgun</surname> <given-names>SN</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Generalist foundation models from a multimodal dataset for 3D computed tomography</article-title>. <source>Nat Biomed Eng</source>. <year>2026</year>:<fpage>1</fpage>&#x2013;<lpage>19</lpage>. doi:<pub-id pub-id-type="doi">10.1038/s41551-025-01599-y</pub-id>; <pub-id pub-id-type="pmid">41680439</pub-id></mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Peng</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Lu</surname> <given-names>L</given-names></string-name>, <string-name><surname>Bagheri</surname> <given-names>M</given-names></string-name>, <string-name><surname>Summers</surname> <given-names>R</given-names></string-name>, <string-name><surname>Lu</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>NegBio: a high-performance tool for negation and uncertainty detection in radiology reports</article-title>. <source>AMIA Summits Transl Sci Proc</source>. <year>2018</year>;<volume>2018</volume>:<fpage>188</fpage>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>S</given-names></string-name>, <string-name><surname>Xu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Usuyama</surname> <given-names>N</given-names></string-name>, <string-name><surname>Xu</surname> <given-names>H</given-names></string-name>, <string-name><surname>Bagga</surname> <given-names>J</given-names></string-name>, <string-name><surname>Tinn</surname> <given-names>R</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Biomedclip: a multimodal biomedical foundation model pretrained from fifteen million scientific image-text pairs</article-title>. <comment>arXiv:230300915. 2023</comment>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Jiang</surname> <given-names>AQ</given-names></string-name>, <string-name><surname>Sablayrolles</surname> <given-names>A</given-names></string-name>, <string-name><surname>Mensch</surname> <given-names>A</given-names></string-name>, <string-name><surname>Bamford</surname> <given-names>C</given-names></string-name>, <string-name><surname>Chaplot</surname> <given-names>DS</given-names></string-name>, <string-name><surname>de las Casas</surname> <given-names>D</given-names></string-name>, <etal>et al.</etal></person-group> <article-title>Mistral 7B</article-title>. <comment>arXiv:2310.06825. 2023</comment>. doi:<pub-id pub-id-type="doi">10.48550/arXiv.2310.06825</pub-id>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Hu</surname> <given-names>EJ</given-names></string-name>, <string-name><surname>Shen</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wallis</surname> <given-names>P</given-names></string-name>, <string-name><surname>Allen-Zhu</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>S</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Lora: low-rank adaptation of large language models</article-title>. <source>Iclr</source>. <year>2022</year>;<volume>1</volume>(<issue>2</issue>):<fpage>3</fpage>.</mixed-citation></ref>
</ref-list>
</back></article>