想象一下,医生面对一位症状复杂的患者。为了开出正确的药物,医生需要在脑海中遍历一个流程图: 病情是轻度还是重度?如果是重度,是否有并发症?如果有,使用药物 A;否则,使用药物 B。
这种逻辑路线图被称为医疗决策规则 (Medical Decision Rule, MDR) 。 这些规则是临床决策支持系统 (CDSS) 的骨干,这些软件系统帮助医疗专业人员做出安全、基于证据的选择。
传统上,构建这些系统是一场手动、劳动密集型的噩梦。专家们必须阅读教科书和临床指南,识别其中的逻辑,并手动将其编码为“如果-那么 (If-Then) ”规则。这个过程昂贵、缓慢且难以扩展。
但是,如果人工智能可以阅读医学教科书并自动构建这些逻辑树呢?
在这篇文章中,我们将深入探讨论文 “Generative Models for Automatic Medical Decision Rule Extraction from Text” (用于从文本中自动提取医疗决策规则的生成式模型) 。 研究人员提出了一种从传统提取方法向生成式模型的转变,利用序列到序列 (Seq2Seq) 架构和大型语言模型 (LLMs) 的强大功能,直接从原始文本构建复杂的医疗决策树 (MDT) 。
问题: 结构化医疗逻辑
这里的核心挑战是“翻译”。我们需要将非结构化的自然语言 (医学教科书中的一段话) 翻译成结构化的、可执行的逻辑树。
医疗决策树 (Medical Decision Tree, MDT) 是一个二叉树,由以下部分组成:
- 条件节点 (Condition Nodes) : 代表患者状态的内部节点 (例如,“患者患有高血压”) 。
- 决策节点 (Decision Nodes) : 代表临床建议的叶节点 (例如,“开具 ACE 抑制剂”) 。
请看下面的例子。这段文字描述了如何根据严重程度治疗亚急性甲状腺炎。图表显示了目标输出: 一个清晰的逻辑树,路径根据临床条件的“是/否 (Yes/No) ”答案进行分支。

标准的信息抽取 (IE) 技术——如命名实体识别 (NER) ——在这里是不够的。NER 可以找到“甲状腺炎”或“泼尼松”,但它无法理解连接它们的逻辑。它不知道泼尼松的使用是有条件的,取决于疾病是中型还是重型。
这篇论文的作者认为,因为这些树代表了一种逻辑“语言”,所以生成式模型 (旨在生成连贯序列的模型) 比判别式分类模型更适合这项任务。
核心方法: 线性化与生成
为了使用生成式模型 (如 GPT 或 Transformer) 来构建树,我们需要先解决表示问题。神经网络生成的是标记 (token) 序列,而不是树状数据结构。
研究人员引入了线性化 (Linearization) : 将二叉树展平为文本字符串的过程,以便模型可以学习预测它。他们探索了三种风格:
- 自然语言 (NL) 风格: 使用“如果 (If) ”、“那么 (Then) ”、“否则 (Else) ”和“另外 (Otherwise) ”将树写成详细的句子。
- 增强自然语言 (AugNL) 风格: 关系三元组 (如 主体-关系-客体) 被视为特殊的单个标记。这使得序列更短,模型更容易管理。
- JSON 风格: 树被表示为嵌套的 JSON 代码块 (键值对) 。
论文提出了两种截然不同的生成架构来解决这个问题: 自定义的序列到序列 (Seq2Seq) 模型和自回归 (LLM) 方法。
方法 1: 序列到序列 (Seq2Seq) 模型
这是一个专门为此任务设计的架构。它不只是盲目地生成文本;它首先理解实体和关系,然后利用这些知识来构建树。
如下图 2(a) 所示,该模型分步工作。首先,它对文本进行编码。然后,“基于查询的实体-关系提取器”识别所有医疗事实 (三元组) 。最后,解码器生成线性化的树。

1. 基于查询的提取
在构建树之前,模型需要找到构建块。作者使用了一个基于查询的系统,其中可学习的向量 (查询) 探测文本以查找实体 (如“偏头痛”) 和关系 (如“症状”) 。
2. 关系上下文
这是一个关键的创新。标准的文本解码器只看输入文本。但医疗决策树本质上是逻辑关系的集合。
为了帮助解码器,作者注入了关系上下文 (Relational Context) 。 他们将在第 1 步中找到的关系三元组与原始文本一起输入解码器。这确保了解码器确切地知道哪些医疗事实可用于放入树节点中。
解码步骤背后的数学公式结合了这个上下文:

在这里,\(\mathcal{C}\) 代表关系上下文 (RQC、RTC 或 HRC) 。解码器根据之前的标记和这个丰富的上下文来预测下一个标记 \(\hat{y}_t\)。
3. 受限解码
生成式模型有时会产生“幻觉”或生成语法无效的序列 (例如,在没有前面的“If”的情况下生成“Else”) 。
为了防止这种情况,研究人员使用了受限解码 (Constrained Decoding) 。 他们使用字典树 (Trie,即前缀树) 来限制每一步的词汇表。
- 如果上一个词是“If”,模型被迫在接下来生成一个实体。
- 如果上一个词是“Else”,下一个词必须是“Then”。
这确保了输出始终是一个有效的、可解析的树结构。
方法 2: 自回归模型 (LLMs)
第二种方法利用了大型语言模型 (具体是 ChatGLM 和 ChatGPT) 的能力。与使用编码器-解码器结构的 Seq2Seq 模型不同,这些是仅解码器 (decoder-only) 模型。
研究人员实验了两种策略: 上下文学习 (In-Context Learning, ICL) 和有监督微调 (Supervised Fine-Tuning, SFT) 。
多任务联合微调
仅仅要求 LLM “提取树”可能会让其难以招架。为了提高性能,作者设计了一个多任务训练方案。模型同时在三个任务上进行训练:
- 医疗决策规则提取: 主要目标 (生成树) 。
- 关系三元组提取: 一个较简单的辅助任务,列出所有医疗事实。
- 树形结构提取: 一个结构性辅助任务,用于勾勒逻辑骨架 (例如,“If… or… then…”) 。
这就像课程学习一样。通过学习识别事实 (任务 2) 和骨架 (任务 3) ,模型在复杂的特定主任务上表现得更好。
下图 4 展示了用于指导模型完成这些任务的原始提示词 (已翻译) 。请注意提示词是如何明确地将逻辑分解为结构化组件的。

渐进式动态采样
作者并没有一次性将所有任务都扔给模型。他们使用了动态采样策略。
- 早期训练: 高度关注简单任务 (关系提取) 。
- 后期训练: 重点几乎完全转移到主任务 (树提取) 。
这模仿了人类的学习过程——在解决复杂的 (逻辑树) 之前,先掌握基础知识 (事实) 。
实验与结果
模型在 Text2DT 上进行了测试,这是一个包含中文医学指南和教科书的基准数据集。结果与“判别式”模型 (以前的最先进技术) 进行了比较,后者将问题视为分类任务而不是生成任务。
生成式的优势
结果是决定性的。生成式模型显著优于判别式基线。

如表 1 所示:
- 使用增强自然语言 (AugNL) 的 Seq2Seq (CPT) 模型取得了高分。
- 自回归 (ChatGLM) 模型在经过微调 (SFT) 后表现出色,达到了 60% 的树准确率 。
- 集成模型 (结合两者) 达到了 67% 的新 SOTA。
这证明了将决策结构建模为语言序列优于试图单独分类各个节点和边。
为什么选择增强自然语言 (AugNL) ?
对于 Seq2Seq 模型,线性化的风格至关重要。 AugNL 始终击败标准自然语言。
在 AugNL 中,模型不写“症状是头痛”,而是使用指向预先提取的三元组 (偏头痛, 症状, 轻度) 的指针。这减少了序列长度并简化了解码过程。
AugNL 的概率计算 (如下所示) 涉及同时查看关系嵌入和结构标记:

消融实验: 哪些组件重要?
研究人员进行了消融实验来验证他们的设计选择。
对于 Seq2Seq 模型: 表 3 显示,“协调关系嵌入 (Harmonized Relation Embeddings) ” (结合文本和关系查询) 为 AugNL 风格提供了最佳结果。

对于自回归模型: 表 4 证明了辅助任务的价值。移除关系提取 (RE) 或树形结构 (TS) 任务会导致准确率显著下降。“渐进式动态采样” (PDS) 进一步将树准确率提高到了 60%。

错误分析: 模型在哪里失败?
尽管取得了成功,但这项任务远未解决。作者分析了错误,以了解剩余的瓶颈。

图 3 揭示了一个有趣的趋势:
- 关系三元组错误 (绿色) : 这是最常见的错误类型。逻辑可能是正确的 (例如,“如果 X 那么 Y”) ,但模型提取了错误的药物或症状名称。
- 结构错误 (蓝色) : Seq2Seq 模型在树结构方面比 LLM (ChatGLM) 遇到更多困难。
- 实体边界: 与专门的 Seq2Seq 架构相比,自回归模型 (LLM) 在识别实体名称的确切开始和结束位置方面遇到更多麻烦。
深度的困难
并非所有的医疗规则都是生而平等的。有些是简单的“如果 A 那么 B”。其他的则是深层的嵌套逻辑树。

图 6 显示,随着树变深 (深度 4) ,性能会下降。有趣的是,与基于 ICL 的方法 (中间的柱状图,在复杂逻辑上表现崩溃) 相比, AugNL 模型 (左数第二个柱状图) 和微调后的 ChatGLM (橙色柱状图) 在深层树上保持了更好的性能。
多样性带来更好的集成
为什么结合 Seq2Seq 模型和 ChatGLM 模型能产生最佳结果 (67%) ?
答案在于多样性 。

图 7 说明这两种类型的模型生成了根本不同类型的树 (它们之间的编辑距离很大) 。因为它们犯的错误类型不同,所以在它们之间进行投票可以让集成模型修正错误,从而得出一个稳健的“两全其美”的解决方案。
结论与启示
论文 “Generative Models for Automatic Medical Decision Rule Extraction from Text” 标志着医疗 AI 向前迈出了重要一步。
通过将决策规则视为语言生成问题,研究人员比以前的方法取得了 12% 的提升 。 他们表明:
- 在捕捉逻辑流方面, 生成式优于判别式 。
- 线性化很重要: 用结构化标记增强自然语言 (AugNL) 有助于模型关注逻辑而不是语法。
- 辅助任务有助于 LLM: 教会 LLM 分别识别关系和形状,可以提高其构建复杂树的能力。
这为什么重要? 可扩展性。医学知识的扩展速度超过了人类将其编纂成典的速度。如果我们能够可靠地自动从每年发表的数千篇新论文和指南中提取决策规则,我们就可以即时更新临床决策支持系统。这将导致新疗法的更快传播,更一致的患者护理,并最终带来更好的健康结果。
尽管挑战依然存在——特别是在提取完美的关系三元组和处理极深的逻辑方面——这项工作为自动化医疗逻辑提取的未来提供了蓝图。
本文基于 Yuxin He, Buzhou Tang, 和 Xiaoling Wang 的研究论文 “Generative Models for Automatic Medical Decision Rule Extraction from Text” 。
](https://deep-paper.org/en/paper/file-3136/images/cover.png)