在医疗保健这个高风险领域,人工智能正迅速成为不可或缺的工具。医疗领域最关键的后台任务之一是医疗编码——即把非结构化的临床文本 (如医生笔记) 转化为标准化的国际疾病分类 (ICD) 代码。这些代码对于计费、流行病学研究和治疗跟踪至关重要。
虽然大型语言模型 (LLMs) 在自动化这项任务上表现出了惊人的能力,但它们存在一个严重的“黑盒”问题。当 AI 将“术后伤口感染”这一代码分配给某个病例时,医生需要知道原因。如果模型无法解释其推理过程,它就无法在临床环境中被信任。
现有的可解释性方法往往差强人意,经常高亮显示像 “and” 或 “the” 这样的无关词汇作为诊断依据。本文将深入探讨这篇名为 Beyond Label Attention 的论文中提出的一种迷人的新方法,称为 AutoCodeDL 。 该方法利用字典学习 (Dictionary Learning) 来层层剥开神经网络的外衣。我们将探索这种方法如何将混乱、稠密的信号分解为清晰、人类可读的医学概念。
当前可解释性方法的问题
要理解为什么我们需要一种新方法,首先需要了解目前我们是如何解释医疗编码中的 AI 决策的。目前的行业标准依赖于标签注意力 (Label Attention, LAAT) 机制。
简单来说,LAAT 会查看临床文本,并相对于特定的 ICD 代码为每个单词 (Token) 分配一个“注意力分数”。它告诉我们模型在做决定时关注了哪些词。

如上图所示,临床笔记被分成多个片段,由预训练语言模型 (PLM) 处理,然后通过标签注意力机制生成 ICD 代码。
然而,研究人员发现了一个令人不安的趋势。LAAT 经常高亮那些对人类来说似乎完全无关的 Token。例如,模型可能预测“术后伤口感染”,却声称最重要的词是连词 “and”。

请看上图。在面板 (a) 中,人类会识别出 “wound” (伤口) 、“breakdown” (破裂) 和 “dehiscence” (裂开) 作为关键词。而在面板 (b) 中,标准的 LAAT 机制却令人费解地高亮了 “and”。
是模型坏了吗?不一定。这篇论文的作者认为,这是神经元多义性 (neuron polysemanticity) 和叠加 (superposition) 的结果。
叠加的概念
在高维向量空间 (LLM 运作的地方) 中,模型压缩的特征数量通常多于其拥有的神经元数量。这种现象被称为叠加 。 单个神经元可能同时负责编码“伤口感染”、“介词”和“计费日期”。
当我们看到 “and” 的注意力分数时,我们看到的是一个被压缩的、“稠密”的表示。在那个特定的上下文中,“and” 这个词实际上可能携带了关于伤口愈合失败的隐藏信号。挑战在于: 我们如何解开这些重叠的信号?
解决方案: 字典学习
为了解决这个问题,研究人员利用稀疏自编码器 (Sparse Autoencoders, SAE) 转向了字典学习 (DL) 。
核心思想是获取单词的“稠密”嵌入 (它是重叠概念的混合体) ,并将其映射到“稀疏”表示,其中每个元素代表一个独特、单一的概念 (即“字典特征”) 。
把稠密嵌入想象成一杯奶昔。它尝起来像混合水果。字典学习就是那台把奶昔还原成一堆堆草莓、香蕉和羽衣甘蓝的机器。
稀疏自编码器架构
研究人员采用了稀疏自编码器来执行这种分解。自编码器是一种神经网络,旨在将其输入复制到输出,但在中间施加约束,强制其学习有意义的结构。
以下是他们使用的数学框架:

让我们详细分解一下:
- 编码器 (Encoder) : 输入嵌入 \(x\) 通过权重 \(W_e\) 和偏置 \(b_e\) 投影到更高维空间。ReLU 激活函数确保值为非负。
- 解码器 (Decoder) : 生成的特征向量 \(f\) 通过权重 \(W_d\) 投影回原始大小。
- 损失函数 (Loss Function) : 训练过程最小化原始嵌入与重建嵌入之间的差异 (均方误差) 。关键在于,它添加了一个 \(L_1\) 惩罚项 (\(\lambda ||f||_1\))。这个惩罚项强制网络保持稀疏——意味着大部分值为零。
这种稀疏性约束是神奇的要素。它迫使模型仅使用少数活跃特征来描述任何给定的单词,从而有效地分离出特定概念。
字典矩阵 \(W_d\) 可以被视为一组特征方向的集合:

因此,任何稠密 Token 嵌入 \(x\) 都可以近似为这些稀疏特征的线性组合:

构建医学相关字典
仅仅训练一个自编码器是不够的。我们需要知道这些稀疏特征在医学语境下实际上意味着什么。研究人员开发了一种方法将这些特征映射到特定的 ICD 代码。
该过程包括两个主要步骤: 采样/编码和消融/识别 。

步骤 1: 采样和编码 模型处理来自临床笔记的数百万个 Token。稀疏自编码器将这些分解为特征激活值 (\(f\)) 。如果某个特征在遇到像 “dehiscence” (裂开) 、“breakdown” (破裂) 和 “rupture” (断裂) 这样的 Token 时被强烈激活,我们就开始对其含义有了线索。
步骤 2: 消融和识别 为了确认特征的含义,研究人员使用了消融 (ablation) 技术。这意味着他们在数学上从嵌入中移除特定特征,并测量其影响。
消融公式如下:

通过移除特征 \(f_i\),我们得到一个修改后的嵌入 \(\tilde{x}\)。然后,我们观察模型对原始输入与消融后输入的预测输出 (softmax 概率) :

如果移除特定特征导致“伤口感染” ICD 代码的概率显著下降,我们就知道该特征与该诊断密切相关。
AutoCodeDL: 新的管道
研究人员将标准的标签注意力机制与他们的新字典学习方法结合,创建了 AutoCodeDL 。
AutoCodeDL 不再止步于“模型关注了单词 ‘and’”,而是挖掘得更深:
- LAAT 识别出重要的单词 (即使是像 “and” 这样看似无关的词) 。
- 稀疏自编码器将 “and” 分解为其活跃特征。
- 系统识别出特征 ID 3728 是活跃的。
- 字典查询显示特征 ID 3728 对应于“伤口愈合失败”。

这完全改变了叙事方式。解释从“关注 ‘and’” (令人困惑) 变成了“关注 ‘and’,因为它包含了‘伤口故障’的隐藏概念” (有用且可信) 。
实验结果
研究人员在 MIMIC-III 数据集上验证了他们的方法,这是一个包含大量真实世界临床笔记的集合。他们将自己的方法与包括 PCA、ICA 和随机编码器在内的几个基线进行了比较。
1. 可解释性 (忠实度)
第一个测试是确保字典特征确实解释了模型的行为。如果我们消融 AutoCodeDL 识别出的特征,模型会改变它的判断吗?
结果显示,消融高亮 Token 的字典特征对预测的 ICD 代码产生了精确且显著的影响。

在上表中,请看 Ratio (比率) 。 比率越高,意味着该方法成功降低了目标代码 (Top) 的概率,同时没有破坏其他无关代码 (NGT) 的概率。AutoCodeDL (L1 和 SPINE 变体) 显著优于 PCA 和 ICA 等基线,证明它提供了更精准、更准确的解释。
2. 解开“停用词”之谜
还记得 “and” 被高亮的例子吗?研究人员对此进行了系统性测试。他们选取了被 LAAT 高亮的无关停用词,并使用 AutoCodeDL 对其进行分析。
他们发现,超过 90% 的这些医学上无关的 Token 实际上在叠加态中包含了相关的医学概念。

这对于建立对医疗 AI 的信任是一个突破。它证实了模型并没有在停用词上产生重要性幻觉;它是在高效地将信息打包进这些词中。
3. 模型引导
如果这些特征确实具有因果关系,我们应该能够通过人为激活某个特征来强迫模型做出预测。这被称为模型引导 (Model Steering) 。
研究人员“钳制” (人为增加) 了特定特征的激活值并观察结果。

结果令人印象深刻。通过操纵字典特征,他们能够翻转数千个代码的决策。这证实了字典特征不仅与医学概念相关——它们是模型用于推理的机制。
下面的可视化 (UMAP) 映射了这些特征,展示了相关概念的聚类,如“心脏状况”或“肾脏状况”,这些特征可以引导模型的行为。

人类可理解性
最后,如果人类无法理解,那么医疗解释系统就毫无用处。研究人员评估了学习到的特征的连贯性 (Coherence) 和区分性 (Distinctiveness) 。
连贯性问的是: 激活特定特征的单词是否共享一个语义主题?
这是一个与心房颤动 (AFib) 相关的高度连贯特征的例子。注意激活的 Token (红色) 在上下文中都与心律问题相关。

相反,并非所有特征都是完美的。有些特征将视觉上相似但语义上不同的概念归为一类,或者包含对于直接解释来说过于抽象的概念。

为了严格测试这一点,他们进行了“词汇入侵”测试 (区分性) 。他们向人类专家 (包括一名执业医师) 展示了一组由某个特征激活的单词,加上一个随机的“入侵”词。如果特征是独特的,人类应该能轻易找出那个入侵词。

在上面的例子中,该特征明显与心脏瓣膜手术相关 (“porcine avr” [猪主动脉瓣置换], “bovine avr” [牛主动脉瓣置换]) 。入侵词 “nephrectomy” (肾切除术) 显得格格不入。
然而,有些情况比较困难。在下面的例子中,两位标注者都正确识别了入侵词,但他们指出该特征不那么明显——可能捕捉了关于特定解剖位置或状况的更抽象的概念。

这项人类评估证实,虽然并非每一个特征都是完美的,但稀疏自编码器 (尤其是 L1 变体) 生成的特征比基线方法更具可解释性和区分性。
结论
论文 Beyond Label Attention 为医疗领域的 AI 迈出了重要一步。通过承认语言模型以复杂的方式压缩信息 (叠加) ,研究人员超越了简单的高亮工具。
AutoCodeDL 为医疗 AI 的“大脑”提供了一个透明的窗口。它使我们能够:
- 验证预测: 确认诊断是基于医学证据,而不是统计噪声。
- 翻译“计算机语言”: 解码为什么模型可能会关注像 “and” 这样的词。
- 引导模型: 通过调整特定特征的激活值来潜在地纠正模型行为。
随着医疗编码模型变得越来越大、越来越复杂,像 AutoCodeDL 这样的工具将变得至关重要。它们提供了连接 AI 原始计算能力与病患护理所需信任之间的必要桥梁。我们不再要求医生去信任一个黑盒,而是终于可以把解码它的字典交到他们手中。
](https://deep-paper.org/en/paper/2411.00173/images/cover.png)