前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

作者头像
yhlin
发布2023-02-13 15:05:38
8680
发布2023-02-13 15:05:38
举报
文章被收录于专栏:yhlin's blogyhlin's blog

Efficient Dialogue State Tracking by Selectively Overwriting Memory

概要

问题动机

  最近在对话状态跟踪 (DST) 方面的工作集中于基于开放词汇的设置,以解决基于预定义本体的方法的可伸缩性和泛化问题。然而,他们效率低下,因为他们从头开始预测对话状态。

主要贡献

  • 启用高效的 DST,利用之前的对话状态生成插槽最小子集的值。
  • 在基于开放词汇表的 DST 设置中,在 MultiWOZ2.0 和 MultiWOZ2.1 上实现了最先进的性能。
  • 强调了在我们提出的框架中提高状态操作预测精度的潜力。
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

模型

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

编码器输入

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

输入分为两个部分,包括最近两轮对话历史 D 与前轮的状态 B_{t-1},简单表示为:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

编码器输出

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

编码器预测对应的每一个槽的操作,一共有 4 种操作 [CARRYOVER,DELETE,DONTCARE,UPDATE], 只有当操作为 UPDATE 时槽值生成器才生成新槽值 v

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

槽值生成器

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

槽值生成器是一个 GRU 网络,初始隐藏层状态和输入分别为: 并通过将一个单词嵌入 e^{j,k}_t 作为输入,递归地更新隐藏状态 g_t^{j,k}∈ \R^d,直到生成[EOS] token:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

在解码的第 t 步,解码器隐藏状态转换为词汇表的概率分布,其中 E∈R^{d{vcb}×d} 是编码器和解码器共享的单词嵌入矩阵,因此 d{vcb} 是词汇表大小:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

其中 且 P_{val,t}^{j,k} 为最终分布

目标函数

在训练过程中,我们共同优化了状态操作预测器和插槽值生成器。

  • 状态操作预测器: 除了状态操作分类外,我们还使用域分类作为辅助任务,迫使模型学习插槽操作和域的相关性,域分类使用 h^X_t 之上的软最大层完成: 每个状态操作分类和域分类的损失为负对数似然的平均值,如下:
  • 槽值生成器 训练插槽值生成器的目标函数也是负对数可能性的平均值:
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

将 3 个任务联合训练,得道总目标函数:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

实验

数据集

使用 MultiWOZ2.0(Budzianowski 等人,2018)和 MultiWOZ2.1(Eric 等人,2019)作为我们实验的数据集。这些数据集是两个最大的公开的多领域面向任务的对话数据集,包括 7 个领域内的大约 1 万次对话。MultiWOZ2.1 是 MultiWOZ2.0 的一个改进版本,其中可以更正注释错误。

结果

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

A Simple Language Model for Task-Oriented Dialogue

概要

动机

面向任务的对话通常被分解为三个任务:理解用户输入、决定操作和生成响应。虽然这种分解可能会为每个子任务提供一个专门的模型,但作者发现一个简单、统一的方法可以在 MultiWOZ 数据集上获得最先进的性能。

贡献

SimpleTOD 是一种面向任务的对话的简单方法,它使用单一的因果语言模型,对所有子任务重新转换为单一序列预测问题。这使得 SimpleTOD 能够充分利用来自预先训练的、开放领域的、因果语言模型的转移学习,如 GPT-2。SimpleTOD 提高了对话状态跟踪的现有最新的联合目标精度,我们的分析揭示了在这种设置下对噪声注释的鲁棒性。

  • SimpleTOD- 一种最先进的对话状态跟踪生成模型
  • SimpleTOD 也是第一个在端到端设置中一起实现对话状态跟踪、动作决策和响应生成度量的最新性能的模型
  • 分析表明,SimpleTOD 是存在噪声标记注释下的鲁棒对话状态跟踪器
  • 消融实验表明显示用户 / 系统和末端(段)标记的重要性
  • 显示预训练的重要性,也显示更大版本的简单训练,对于端到端 MiltieTOD 并不总是更好

模型

对话系统

面向任务的对话 (TOD) 对三个子任务进行评估:对话状态(信念状态)跟踪、对话管理(行动 / 决策预测)和响应生成。这种分解使得为每个子任务创建专用的模型成为可能,这是主要的方法。相比之下,我们探索了使用单模型的端到端方法的可能性,SimpleTOD。

设第 t 轮对话为 U_t, 为了在推理过程中生成响应,SimpleTOD 将之前的所有回合读取为上下文, , 并生成对话状态 B_t

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

这是记录特定域中的插槽值的三元组列表:(域、slot_name、值)。此信念状态用于查询数据库中的信息。数据库搜索从数据库中返回满足信念状态条件的行。返回的行以后可用于将响应词汇化(填充生成的占位符),但 SimpleTOD 只将聚合的数据库搜索结果 D_t 作为输入。D_t 包括返回的行,以及根据实验设置,是否有预订状态信息。然后,SimpleTOD 将 C_t、B_t 和 D_t 上的条件作为一个单一的序列连接在一起,以决定操作,A_t:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

这些操作作为另一个三联体的列表生成:(域、action_type、slot_name)。根据连接为单一序列的所有先验信息生成分层响应 S_t:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

当与来自信念状态和数据库搜索结果的信息相结合时,响应可以被词汇化,以恢复人类可读的响应文本。

因果语言模型

一个单一的训练序列由连接组成 ,允许我们建模序列 x_t 上的联合概率。给定该形式的示例序列 其中每个 x_i 来自一组固定的符号,语言建模的目标是学习 p(x)。利用概率链规则对这个分布进行因式分解是很自然的, 并训练一个具有参数 θ 的神经网络,以最小化数据集 上的负对数似然,其中,序列 x^t 的长度为 n_t

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

架构

作者通过训练 Transformer 的一个变体来学习这些条件分布。一个包含 n 个 token 的序列被嵌入为 n 个 d 维向量的序列。每个向量都是学习的 token 嵌入和正弦位置嵌入的和。因此,输入矩阵为 由 l 个注意层处理。第 i 层由两个块组成,每个块保留模型维数 d。第一个块使用了带有 k 个头的多头注意力。

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

第二个块使用具有 ReLU 激活的前馈网络,将输入投影到内部维度 f。此操作由

参数化:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

每个块在核心功能之前使用 layer normalization,之后是残差连接。它们一起生成 X_{i+1}

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

然后根据最后一层的输出计算分数:

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory

在训练过程中,这些分数是一个交叉熵损失函数的输入。在生成过程中,与最后一个令牌对应的分数用软最大值进行标准化,生成一个用于对新的 token 进行采样的分布。

实验

【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
【论文笔记】Efficient Dialogue State Tracking by Selectively Overwriting Memory
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-01-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Efficient Dialogue State Tracking by Selectively Overwriting Memory
    • 概要
      • 问题动机
      • 主要贡献
    • 模型
      • 编码器输入
      • 编码器输出
      • 槽值生成器
      • 目标函数
    • 实验
      • 数据集
      • 结果
  • A Simple Language Model for Task-Oriented Dialogue
    • 概要
      • 动机
      • 贡献
    • 模型
      • 对话系统
      • 因果语言模型
      • 架构
    • 实验
    相关产品与服务
    NLP 服务
    NLP 服务(Natural Language Process,NLP)深度整合了腾讯内部的 NLP 技术,提供多项智能文本处理和文本生成能力,包括词法分析、相似词召回、词相似度、句子相似度、文本润色、句子纠错、文本补全、句子生成等。满足各行业的文本智能需求。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档