人工智能正在迅速变革医疗保健领域。我们正迈向“通用医疗 AI”的未来,它能够查看 X 光片、MRI 或 CT 扫描,并在几秒钟内起草一份诊断报告。这有望减轻放射科医生的倦怠感并加快患者护理速度。
然而,在这场革命中存在一个巨大的瓶颈: 信任。
如果 AI 写了一份报告,我们如何知道它是准确的?如果我们有两个不同的 AI 模型,我们如何知道哪一个更好?在通用自然语言处理 (NLP) 中,我们使用标准指标来验证文本。但在医学领域,“标准”指标可能是危险的。如果 AI 写的是“无气胸 (No pneumothorax) ”而不是“气胸 (Pneumothorax) ”,它只改变了一个词——对计算机来说是一个小错误,但对患者来说却是一个危及生命的错误。
今天,我们将深入探讨一篇新的研究论文,该论文提出了一个解决方案: RaTEScore 。 这是一个新颖的指标,旨在通过理解临床现实而不是计算匹配的单词来评估 AI 生成的放射学报告。
现有评估指标的问题
要理解为什么 RaTEScore 是必要的,我们首先必须看看我们目前用来衡量 AI 性能的“尺子”。
在传统的文本生成 (如翻译或摘要) 中,我们使用像 BLEU 或 ROUGE 这样的指标。这些指标基于单词重叠来计算分数。如果 AI 的句子与人类医生的句子共享许多单词,它就会得到高分。
这种方法在放射学中彻底失败,主要有三个原因:
- 否定敏感性 (Negation Sensitivity) : “无肿瘤证据”和“有肿瘤证据”在字数上几乎相同,但意义相反。标准指标通常无法足够严厉地惩罚这种差异。
- 同义词 (Synonyms) : 医生可能会说“胸腔积液 (pleural effusion) ”,而 AI 可能会说“胸膜腔内有液体 (fluid in the pleural space) ”。这两者意味着同一件事,但单词重叠指标将它们视为错误。
- 无关性 (Irrelevance) : 标准指标可能会被常见的、无关紧要的短语 (如“今天进行了检查”) 分散注意力,而不是关注关键的发现。

如上图 1 所示,现有指标难以捕捉医学文本的细微差别。
- 词重叠指标 (如 BLEU) 忽略了“无证据”和“明显证据”之间的区别。
- NER-F1 指标关注命名实体,但在同义词方面表现挣扎 (认为“结石 (stones) ”和“存在结石 (stones present) ”是不同的) 。
- 基于 BERT 的指标着眼于语义,但可能会被不相关的细节 (如鼻胃管) 混淆,而报告本应关于肺炎。
我们需要一个像医生一样思考的指标: 一个关心医疗实体 (身体部位是什么?疾病是什么?) 和临床现实 (疾病是存在还是不存在?) 的指标。
介绍 RaTEScore: 一种实体感知指标
研究人员开发了 RaTEScore (Radiological Text Evaluation Score,放射学文本评估分数) 来解决这些差距。RaTEScore 旨在实现“实体感知”。它不把报告看作一串单词;它将其视为医疗事实的集合。
该方法的工作原理是将复杂的医疗报告分解为特定的实体 (如“肺”、“浑浊”、“肺炎”) ,然后使用处理同义词和否定的复杂评分系统来比较这些实体。
管道流程
RaTEScore 的架构是一个三步管道:
- 医疗命名实体识别 (NER) : 提取临床概念。
- 同义词消歧: 理解不同的词可以指代同一事物。
- 评分: 计算加权相似度分数。

让我们分解这个管道的每个组件,以了解其底层机制。
第一步: 医疗命名实体识别 (NER)
第一步是清除噪音。系统读取放射学报告 (\(x\)) 并提取特定的医疗实体。但它不仅仅提取单词;它将它们分类为五种不同的类型:
- 解剖部位 (Anatomy) : 身体部位 (例如,“左下叶”) 。
- 异常表现 (Abnormality) : 放射学发现 (例如,“肿块”、“积液”) 。
- 疾病 (Disease) : 高层级诊断 (例如,“肺炎”) 。
- 非异常 (Non-Abnormality) : 明确提及不存在的异常 (例如,“无积液”) 。
- 非疾病 (Non-Disease) : 明确提及不存在的疾病。
这种分类至关重要。通过将“异常表现”与“非异常”分开,系统被明确编程为关注否定。
在数学上,NER 模块 ($ \Phi_{NER} \() 将文本转换为一组元组,其中每个元组包含实体名称 (\)n\() 及其类型 (\)t$) :

第二步: 同义词消歧编码
一旦提取了实体,系统需要将 AI 生成的报告 (\(\hat{x}\)) 中的实体与医生的标准参考报告 (\(x\)) 中的实体进行比较。
由于同义词的存在,简单的字符串匹配在这里行不通。如果医生写的是“肾囊肿 (renal cyst) ”,而 AI 写的是“肾脏囊肿 (kidney cyst) ”,它们应该匹配。为了解决这个问题,RaTEScore 使用了一个同义词消歧编码模块 (\(\Phi_{ENC}\)) 。
研究人员使用了一个名为 BioLORD 的预训练模型,该模型专门针对医学定义进行了训练。该模型将每个实体名称转换为高维空间中的向量 (数字列表) 。在这个空间中,像“renal (肾的) ”和“kidney (肾脏) ”这样的同义词彼此非常接近。

这一步产生了一组代表报告临床内容的特征嵌入 (\(\mathbf{F}\)) 。
第三步: 评分过程
现在进入“打分”阶段。系统将参考报告中的嵌入与候选报告中的嵌入进行比较。
首先,对于参考报告中的每个实体,系统在候选报告中寻找“最佳匹配”。它通过计算嵌入之间的余弦相似度 (Cosine Similarity) 来实现这一点。它搜索使该相似度最大化的实体 (\(i^*\)) :

然而,仅找到语义匹配是不够的。我们还需要检查类型 (Type) 。
想象一下,AI 正确匹配了“胸腔积液”这一概念。但是,在参考报告中,它被标记为非异常 (不存在) ,而在 AI 报告中,它被标记为异常表现 (存在) 。这是一个严重的医疗错误。
为了处理这个问题,RaTEScore 应用了一个惩罚函数。如果类型匹配 (例如,两者都是异常表现) ,则保留完整的相似度分数。如果类型不匹配,分数将乘以一个惩罚因子 \(p\)。

最后,系统计算总分。它不仅仅是平均所有分数。它使用一个可学习的亲和矩阵 (Affinity Matrix,\(W\)) 。该矩阵根据临床重要性为不同类型的实体分配不同的权重。例如,匹配两个“异常表现”实体的权重可能比匹配两个“解剖部位”实体更重,因为漏诊疾病比位置描述模糊更糟糕。

最终的 RaTEScore 计算方式类似于 F1 分数。它计算两个方向的相似度 (参考 \(\to\) 候选 和 候选 \(\to\) 参考) 并取调和平均值。这确保了 AI 既会因幻觉 (编造参考报告中不存在的内容) 受罚,也会因遗漏 (错过了参考报告中存在的内容) 受罚。

构建生态系统: RaTE-NER 和 RaTE-Eval
像 RaTEScore 这样复杂的指标需要高质量的数据才能工作。研究人员不能只使用现有的数据集,因为大多数数据集仅限于胸部 X 光片。他们需要一个通用的指标,适用于大脑、腹部、脊柱等。
RaTE-NER 数据集
为了训练 NER 组件,作者构建了 RaTE-NER , 这是一个源自 MIMIC-IV 和 Radiopaedia 的庞大数据集。
RaTE-NER 的独特之处在于其多样性。它涵盖了 9 种成像模态 (如 CT、MRI、超声) 和 22 个解剖区域 。 这确保了 RaTEScore 不仅仅是一个“肺部专家”,而是一个通用的“放射学专家”。

为了高效地构建这个数据集,他们使用了包含 GPT-4 的巧妙自动化管道。他们提示 GPT-4 从报告中提取实体,然后使用既定的医学知识库 (如 UMLS 和 SNOMED CT) 完善这些提取结果,以确保准确性。

RaTE-Eval 基准测试
我们如何知道 RaTEScore 是否真的比 BLEU 或 BERTScore 更好?我们需要针对金标准进行测试: 人类放射科医生。
研究人员创建了 RaTE-Eval 基准测试。他们选取了数千条报告句子和段落,并要求经验丰富的放射科医生对其进行评分。他们寻找特定的错误:
- 对发现的错误预测。
- 发现的遗漏。
- 错误的位置。
- 错误的严重程度。
该基准测试使我们能够衡量自动化指标 (如 RaTEScore) 与人类判断之间的相关性。
实验与结果
实验结果有力地验证了 RaTEScore 方法。研究人员将他们的指标与标准基线 (BLEU、ROUGE、BERTScore) 和特定领域的指标 (RadGraph F1) 进行了比较。
与人类判断的一致性
最关键的测试是与人类放射科医生的相关性。在下图中,每个点代表一份报告。X 轴代表放射科医生的错误计数 (归一化) ,Y 轴代表自动化指标的分数。
一个完美的指标会显示出一条紧密的对角线 (高相关性) 。

看看 RaTEScore (左上角) 和 BLEU (底行中间) 之间的区别。
- RaTEScore 显示出强烈、清晰的相关性 (\(\tau = 0.54\)) 。随着放射科医生发现的错误减少 (在 X 轴上向右移动) ,RaTEScore 会上升。
- BLEU 是一团分散的云 (\(\tau = 0.27\)) 。一份报告可能具有很高的 BLEU 分数,但仍然被医生评为很差,反之亦然。
这证明了 RaTEScore 在像放射科医生一样“思考”方面明显优于词重叠指标。
对同义词的鲁棒性
研究人员还进行了一项模拟测试。他们使用大语言模型 (LLM) 重写报告,分别使用同义词 (应该得分高) 和反义词 (应该得分低) 。
- 同义词检查: “阑尾显示清晰 (The appendix is well visualized) ” vs. “阑尾可见 (The appendix is seen) ”。
- 反义词检查: “阑尾显示清晰” vs. “阑尾显示不清 (The appendix is poorly visualized) ”。
RaTEScore 在区分这些情况方面达到了最高的准确率,证实了其基于嵌入的方法在保持对否定敏感的同时,成功处理了医学词汇的变体。
结论与启示
RaTEScore 的开发代表了医疗 AI 向前迈出的重要一步。通过从僵化的单词匹配转向实体感知评估 , 我们可以建立对自动化系统的信任。
以下是关键要点:
- 语境很重要: 医疗评估需要理解实体 (疾病、解剖结构) 及其状态 (存在/不存在) ,而不仅仅是匹配单词。
- 广度至关重要: 与以前仅关注胸部 X 光片的指标不同,RaTEScore 专为全方位的放射学 (CT、MRI、超声) 而设计。
- 人类一致性: 广泛的测试表明,RaTEScore 与放射科医生的一致性远高于传统的 NLP 指标。
随着我们继续为医疗保健开发基础模型,像 RaTEScore 这样的工具将充当必要的护栏。它们使研究人员能够准确地衡量进展,确保当 AI 生成报告时,它不仅在语法上是正确的,而且在临床上是符合事实的。
](https://deep-paper.org/en/paper/2406.16845/images/cover.png)