想象一下你正在给朋友发短信讨论电影。
朋友: “你看过《奥本海默》了吗?” 你: “导演是谁?” 朋友: “诺兰。” 你: “噢,我超爱他。”
对于人类来说,这段对话非常清晰。当你说“他”时,你指的是克里斯托弗·诺兰。当你朋友说“诺兰”时,他们的实际意思是“克里斯托弗·诺兰是导演”。因为上下文让含义显而易见,所以我们经常省略词语 (省略,ellipsis) 或使用代词 (共指,coreference) 。
然而,对于 AI (比如聊天机器人或客户服务代理) 来说,这种“不完整”的说话方式简直是一场噩梦。如果系统只分析你的最后一句 (“噢,我超爱他”) 而不解析上下文,它根本不知道你爱的是谁。
这个问题被称为不完整话语重写 (Incomplete Utterance Rewriting, IUR) 。 其目标是将依赖上下文的句子重写为含义相同但独立的句子。
在这篇文章中,我们将深入探讨一篇题为**“Incomplete Utterance Rewriting with Editing Operation Guidance and Utterance Augmentation”**的研究论文。研究人员提出了一种名为 EO-IUR 的新颖框架,该框架将图神经网络与巧妙的“编辑”机制相结合,教 AI 如何在对话中关注正确的词汇。
核心问题: 为什么 IUR 很难?
在多轮对话中,说话人往往追求效率。研究表明,超过 70% 的对话话语包含省略 (省去词语) 或共指 (使用“他”、“它”或“那个”等词指代之前的名词) 。
为了解决这个问题,AI 必须重写句子使其自成一体。让我们看一个论文中的例子。

在表 1 中,用户问“托尔斯泰是谁?”,紧接着说“他是作者。” 为了使最后一句话完整,模型必须:
- 解决共指问题: “他 (He) ” \(\rightarrow\) “托尔斯泰 (Tolstoy) ”。
- 解决省略问题: 在末尾插入“of Anna Karenina (《安娜·卡列尼娜》的) ”。
现有方法的困境
历史上,主要有两种方法来解决这个问题:
- 序列标注 (Sequence Labeling) : 模型对历史记录中的每个词进行标记,以决定是保留还是添加。这种方法擅长复制确切的词语,但在语法和在正确位置插入新词方面表现不佳。
- 生成式 (Generation/Seq2Seq) : 使用像 BART 或 GPT 这样的模型从头开始生成新句子。这些句子通常很流畅,但容易产生“幻觉”——由于失去对上下文的关注,它们经常生成多余的词或完全遗漏关键实体。
EO-IUR背后的研究人员意识到,为了两全其美,他们需要一个既能理解对话深层结构,又确切知道该编辑哪些词的模型。
解决方案: EO-IUR 框架
提出的模型 EO-IUR (Editing Operation-guided Incomplete Utterance Rewriting,编辑操作引导的不完整话语重写) 是一个多任务学习框架。它不仅仅是尝试重写句子;它同时学习对话的语法结构,并预测具体需要哪些“编辑操作” (插入或替换) 。
这是高层架构图:

让我们分解一下使这个架构有效运行的三个主要组件: 图 (Graph) 、编辑引导 (Editing Guidance) 和增强 (Augmentation) 。
1. 对话即异构图
标准的 Transformer 模型 (如 BERT 或 BART) 将文本视为线性的单词序列。然而,对话具有复杂的结构。研究人员认为,线性序列不足以捕捉诸如“谁说了什么”或“哪个代词指代哪个名词”这样的关系。
为了解决这个问题,他们构建了一个词级异构图 (Token-Level Heterogeneous Graph) 。
他们将每个词 (token) 和每个说话人视为图中的一个节点。然后,他们使用四种特定类型的边 (\(\mathcal{R}\)) 连接这些节点:
- 话语内边 (Intra-utterance edge) : 根据句法树连接同一句子内的词 (例如,连接动词及其宾语) 。
- 话语间边 (Inter-utterance edge) : 连接一句话的根节点和下一句话的根节点,建立对话流。
- 说话人-话语边 (Speaker-utterance edge) : 连接通用的“说话人”节点与该说话人所说的词。
- 伪共指边 (Pseudo-coreference edge) : 这一点至关重要。它将不完整话语中的所有代词与历史记录中的名词和代词连接起来。这明确地告诉模型: “嘿,这个‘他’可能与‘托尔斯泰’有关。”
构建好图后,他们使用图卷积网络 (GCN) 在节点之间传递信息。单词的表示通过聚合其邻居的信息来更新。

在这个公式中,\(H^{enc}\) 是来自 BART 的初始编码。GCN 更新这些特征以创建具有结构感知能力的表示。最后,图特征与原始 BART 特征融合,得到丰富且具有上下文感知的表示 \(\hat{H}^{enc}\)。
2. 编辑操作引导
这是论文的“独门秘籍”。研究人员没有让生成模型自己弄清楚所有事情,而是引入了一个辅助任务: 编辑操作标记 (Editing Operation Labeling) 。
他们定义了四个特定的标签,告诉模型如何处理一个 token:

- NA: 什么都不做 (大多数词属于此类) 。
- RP (Replace/替换): 该词是代词,需要被替换 (共指) 。
- NW (New Word/新词): 该词是用来替换代词的词。
- IN (Insert/插入): 该词被省略了,需要插入 (省略) 。
看看这如何应用于托尔斯泰的例子:

模型使用编码器之上的一个简单的多层感知机 (MLP) 来学习预测这些标签:

这如何引导生成?
这才是神奇之处。模型计算一个 token 是“关键”token (RP、NW 或 IN) 的概率。然后,它利用这个概率来修改解码器的注意力机制 。
通常,解码器根据语义相似性关注所有词。在 EO-IUR 中,注意力分数根据“编辑”概率进行加权。如果一个词被标记为 NA (对重写不重要) ,模型会抑制对它的注意力。如果一个词被标记为 IN (需要插入) ,模型会强制解码器关注它。

这里,\(\lambda\) 代表基于编辑标签的 token “重要性”。这迫使生成模型特别关注那些填补空白的实体和词汇,从而显著减少幻觉。
最终的损失函数结合了标准生成损失 (\(\mathcal{L}_{gen}\)) 和编辑分类损失 (\(\mathcal{L}_{eol}\)) :

3. 二维话语增强
IUR 研究的一个主要挑战是数据稀缺。数据集通常很小。为了应对这一问题,作者提出了两种增强策略:
- 基于编辑操作的增强: 他们假设省略和共指是可以互换的。他们提取训练样本并手动交换它们。例如,如果一个句子有省略,他们插入一个代词将其变为共指问题,反之亦然。这使训练多样性翻倍。
- 基于 LLM 的历史增强: 他们使用大型语言模型 (如 GPT-3.5) 在不改变含义的情况下重写对话的上下文 (历史) 。这有助于模型对对话历史中不同的措辞风格更加鲁棒。
实验与结果
研究人员在三个主要数据集上测试了 EO-IUR: TASK (英语任务导向对话) 、REWRITE (中文开放域) 和 RES200K (大规模中文数据集) 。
结果令人印象深刻。让我们先看看英语 TASK 数据集。

EO-IUR 实现了 80.8% 的精确匹配 (Exact Match, EM) 得分。这是一个巨大的飞跃——比之前的最先进水平 (SGT 和 QUEEN) 高出近 10 个百分点。精确匹配是一个非常严格的指标;它要求生成的句子与标准答案逐字完全相同。
在中文数据集上的结果也同样一致。

在 REWRITE 数据集 (表 5) 上,EO-IUR 在 BLEU 分数和 ROUGE 分数上占据优势,表明重写的句子既流畅又准确。
消融实验: “花哨的东西”真的有效吗?
你可能会问,“我们真的需要图吗?我们真的需要编辑标签吗?” 作者进行了消融实验来找出答案。

如表 7 所示,移除编辑引导 (w/o ED guidance) 导致 EM 分数下降了 3.8 分。移除异构图 (Heterogeneous Graph) 也导致了类似的下降。这证明了结构理解 (图) 和显式聚焦机制 (编辑标签) 对于模型的高性能至关重要。
人工评估与 GPT-4
自动指标固然好,但人类判断才是黄金标准。作者进行了一项盲测,让人类评估员将 EO-IUR 与其他模型进行比较。

EO-IUR (蓝色条) 在大多数情况下战胜了 HCT 和 BART 等强基线模型。
但它能打败 GPT-4 吗?
这也许是最令人惊讶的结果。像 ChatGPT 这样的通用大语言模型非常强大,但它们往往难以适应在不添加对话废话的情况下进行重写的严格约束。

在 REWRITE 数据集上,EO-IUR 实现了 79.9% 的精确匹配率,而 GPT-4 仅达到 35.7% 。
为什么会有这么大的差异?GPT-4 经常“重写不足” (留下歧义) 或“产生幻觉” (添加了原意中没有的礼貌性对话填充词) 。而在编辑标签引导下的专用 EO-IUR 模型,其精确度如同手术刀一般。
这里有一个输出对比:

在第一个例子中,GPT-4 被历史记录搞混了,要求一家“昂贵的餐厅”,这与用户最新的要求“韩国菜” (暗示他们正在切换话题或细化需求) 相矛盾。EO-IUR 正确地将不完整话语“韩国菜”与约束条件“昂贵的价格范围”结合了起来。
结论
EO-IUR 论文展示了 AI 领域的一个强有力的概念: 专用的、结构化的模型在特定任务上仍然可以胜过庞大的通用模型。
通过将对话视为图,研究人员让 AI “看到”了句子之间的语法联系。通过引入编辑操作引导 , 他们给了 AI 一支“荧光笔”,教它只关注那些需要更改或移动的特定词汇。
这项工作是对话式 AI 向前迈出的重要一步。它让我们更接近于拥有这样的虚拟助手: 不仅仅是听你说的最后一句话,而是像人类朋友一样理解整个对话的流程。
](https://deep-paper.org/en/paper/2503.16043/images/cover.png)