⬆⬆⬆              点击蓝字

关注我们

AI TIME欢迎每一位AI爱好者的加入!

本期AI TIME PhD直播间,我们有幸邀请到了来自哈尔滨工业大学社会计算与信息检索研究中心的在读博士覃立波,他的研究方向为任务型对话系统。

本次演讲主题是——多领域端到端任务型对话系统研究分享 Dynamic Fusion Network for Multi-Domain End-toend Task-Oriented Dialog。

覃立波:哈尔滨工业大学社会计算与信息检索研究中心(SCIR)在读博士生,导师车万翔教授,创立知名公众号[机器学习算法与自然语言处理]及同名知乎专栏,研究兴趣为任务型对话系统,以第一作者曾在ACL、EMNLP、AAAI、IJCAI发表论文多篇。

一、经典的任务型对话系统中的pipeline结构 (Pipeline Task-oriented Dialog System)

Pipeline Task-oriented Dialog System是由自然语言理解(NLU), 对话管理(DM), 和自然语言生成(NLG)几个主要模块构成的。举例来说,语音信号输入“帮我订一张去北京的机票”,可以通过这三个主要模块得到文本回复。首先,“帮我订一张去北京的机票”会作为假设/观测 (Hypothesis/Observation) 输入到自然语言理解(NLU)模块,自然语言理解主要包括领域识别、意图识别和语义槽填充。经过自然语言理解模块后得到输出的语义帧(Semantic frame):领域为”机票“, 意图为”订机票“, 语义槽为”到达地=北京“。随后语义帧作为对话管理(DM) 的输入得到最终对话状态 (Dialogue state),”出发地=NULL,到达地=北京, 出发时间=NULL“,然后通过自然语言生成 (NLG)模块直接生成对话动作 (Dialogue action)去发出询问(出发地)并生成文本回复 (Text response)“请问您从哪里出发?”。

图1:Pipeline Task-oriented Dialog System

虽然Pipeline Task-oriented Dialog System已经在商业系统中应用比较广泛了,但它仍然会存在一些问题。第一个是错误传播(Error propagation),因为中间会经过三个模块,所以如果一个阶段出现问题,那么错误会越积越多。第二个是数据标注的困难(Heavy Data Annotation)。每一个子模块都需要标注大量数据,在现实中是不可取的。于是研究人员提出,能不能直接用端到端任务型对话系统(End-to-end Task-oriented Dialog)生成回复呢?

二、基础端到端任务型对话系统。(End-to-end Task-oriented Dialog System)

如图所示,给定一个Dialogue History X={x1,x2......xk} 和Knowledge Base B,直接生成回复Y= {y1,y2......yn}。不需要之前提到的NLU, DM, NLG模块。图中的橘黄色代表Dialog History,白色表格代表Knowledge Base,蓝色是生成的Response部分。通过给定的Dialog History和Knowledge Base,用Seq2seq Model直接生成了文本的回复。

图2:End-to-end Task-oriented Dialog

三、多领域端到端任务型对话系统。(Multi-Domain End-to-end Task-oriented Dialog System)

现在Single-Domain End-to-end Task-oriented Dialog已经获得了不错的进展,但是现实中的对话机器人可能会遇到无穷无尽的domin,而为每一个domin标注足够的数据集训练是不现实的。那么,我们能不能从一些有大量标注数据的source domain迁移knowledge到很少或者没有标注数据的target domain呢?这也就是我们今天要讲的Multi-Domain End-to-end Task-oriented Dialog。

为大家介绍一下,这个领域已经有的一些研究:

1. Key-Value Retrieval Networks for Task-Oriented Dialogue。在decode端给知识库的每个value做推荐值,然后加给生成的output的vocabulary分布使其意识到实体。

图3:Key-Value Retrieval Networks for Task-Oriented Dialogue

2. Mem2Seq: Effectively Incorporating Knowledge Bases into End-to-End Task-Oriented Dialog Systems。这篇工作也取得了比较好的性能。

图4:Mem2Seq: Effectively Incorporating Knowledge Bases into End-to-End Task-Oriented Dialog Systems

3. Global-to-local memory point networks for task-oriented dialogue。我们将重点介绍这篇工作。

图5:Global-to-local memory point networks for task-oriented dialogue

Seq2Seq Dialogue Generation中,我们定义任务时,根据Dialogue history (X)和Knowledge base (B)得到System response (Y)。

与使用普通Seq2Seq生成文本不同, 我们在公式中加入B,在储存Knowledge base (B)和Dialogue history (X)的外部知识库中查询知识,并从Dialogue history和Knowledge base中复制单词,word by word的去生成回复。

具体的Query Knowledge in Decoder是怎么做的呢?是使用sketch tags去解释所有可能生成的实体类型,比如@address代表所有Address,比如一句话“覃立波在哈工大“,会先生成模板”Name 在 Address“。Decoder的时候会有两种情况,有一种是生成普通的词汇,而更重要的一点是:实体是怎么生成的?如果判断出生成的单词不是普通单词,而是一个sketch tag,那么就会对知识库进行Query,最后挑出概率最大的值作为生成的实体。这就是Global to local memory point networks for task oriented dialogue这篇工作的模型。

但是其实以上的模型都是在混合多域混合数据集上训练通用模型,所以忽略了每个领域specific的特征。那么有没有考虑到每个领域specific特征的工作呢?

3.1考虑到每个领域specific特征的工作研究

负采样

1. Sequence-to-Sequence Learning for Task-oriented Dialogue with Dialogue State Representation。这篇工作是用Dialogue history的表示去Query知识库,并把每个domin分开来做。

图7:Sequence-to-Sequence Learning for Task-oriented Dialogue with Dialogue State Representation

2. Entity-Consistent End-to-end Task-Oriented Dialogue System with KB Retriever。这篇工作主要关注的是实体一致性的问题。如何定义实体一致呢?比如,我们问” 姚明的身高是多少?“,如果回答是” 一米 “,那么” 一米 “明显是不匹配” 姚明 “的,我们就认为这是实体不一致。我们当时做出的假设是在回复的那句话中,实体是来源于知识库的某一行的,于是就认为在某一行是实体一致的。这篇工作是第一个去探索实体一致性的,但这个方法也是在每一个domin数据集训练一个model,所以存在一些缺点,比如在考虑到specific特征后忽略了共享的特征,即忽略了不同domain之间的共享知识 (例如,位置字词既存在于schedule domain中,又存在于navigation domain中)。

图8:Entity-Consistent End-to-end Task-Oriented Dialogue System with KB Retriever

3.2合并领域共享(domain-shared)和领域私有(domain-private)特征

负采样

合并领域共享(domain-shared)和领域私有(domain-private)特征的简单的基准就是shared-private framework。我们引入动态融合模块(dynamic fusion module)以显式捕获域之间的相关性,编码器(encoder)和解码器(decoder)都采用这种机制来查询知识库。

图9:Dynamic Fusion Mechanism

接下来详细介绍一下Shared-Private Encoder-Decoder Model。每个instance X都经过共享(shared)及其对应私有(private)的专用编解码器,shared部分来捕获domain-shared features,private来考虑domain-specific features。任务型对话系统重要的是如何Query知识库,那么如何把考虑后的domain-shared features和domain-specific features查询知识库呢?我们做了简单的拼接和非线性变化,融合domain-shared features 和 domain-specific features,使用self-attention来获取上下文向量( context vector)作为query,解码器融合过程也与编码器的融合过程相同。但是这个方法也有缺点,第一个缺点是Domain B在数据量很少的时候,学习是不充分的。第二个缺点是会忽略了域的某些子集之间的细粒度相关性。

图10:Shared-Private model

为了解决以上两个缺点,我们提出了Dynamic Fusionlayer。判断domain间的相关程度以利用所有域知识并使用加权总和作为domain-specific features。给定任何domin的实例,使用多个private encoder-decoder来获取来自所有domin的domain-specific features,通过动态domain-specific feature融合模块融合它们,通过shared-specific feature模块获得shared-specific features,在编码器和解码器中应用Dynamic Fusion以查询知识库。

图11:Dynamic Fusion model

3.3实验和分析结果

负采样

实验所用数据集一个是SMD (Stanford multi-domain dialogue),一个是重标扩展的Multi-WOZ 2.1数据集。我们所用Baselines是Mem2Seq、DSR、KB-retriever、GLMP。实验结果中,可以看到Shared-private framework有不错的性能,而Dynamic Fusion framework则有了进一步提升。我们也做了一系列的消融实验(Ablation Study)去验证结果,如图所示,我们会发现每一种消融实验的final performance都会有一定程度的降低,也就验证了每一个component的有效性。

图12:实验结果

图13:Ablation Study

我们尝试在Low-Resource Setting下,保持两个domin不变,将另外的数据集变为原来数据集的1%,5%、10%、20%、30%、50%,再跑我们的模型,如图,红线代表我们的模型,黄线代表GLMP模型,可以发现我们的模型一直较高,说明有更好的鲁棒性。并且我们的模型在5%数据量的时候到达了GLMP100%数据量的结果,这证明了我们的模型在Low-Resource Setting下是非常有效的,可以有效地从其他domin转移知识以在low-resource domain获得更好的性能。

图14:Low-Resource Setting

我们也尝试了Zero-Shot Setting,从训练集中随机删除一个domin,而其他domin数据保持不变以训练模型, 如图,会发现我们的模型表现好于GLMP,这进一步证明我们框架的可移植性。

图15:Zero-Shot Setting

我们还对Dynamic Fusion Layer在low-resource (5%) setting中的每个input和每个domain的权重做了可视化,如图可以看到,”Navigate和Schedule“的颜色比”Navigate和Weather“的颜色更红一些,进一步研究发现,”location“ 和”set“同时在”navigation domain“ 和”schedule domain“ 出现,所以我们发现Navigate和Schedule可能有更近的关系。

图16:Visualization of Dynamic Fusion Layer

总结

据我们所知,这是在多域端到端任务导向对话(Multi-domain end-to-end task-oriented dialog)中有效探索Shared-private framework的第一项工作。我们扩展的动态融合框架(Dynamic fusion framework)可以利用细粒度的知识来获得所需的精度,从而使其更适合于新Domains。

论文和代码的地址都已经开源,欢迎大家去访问。

论文地址:https://www.aclweb.org/anthology/2020.acl-main.565/

代码地址:

https://github.com/LooperXX/DF-Net

REF

Eric, Mihail, and Christopher D. Manning. "Key-value retrieval networks for task-oriented dialogue." arXiv preprint arXiv:1705.05414 (2017).

Madotto, Andrea, Chien-Sheng Wu, and Pascale Fung. "Mem2seq: Effectively incorporating knowledge bases into end-to-end task-oriented dialog systems." arXiv preprint arXiv:1804.08217 (2018).

Wu, Chien-Sheng, Richard Socher, and Caiming Xiong. "Global-to-local memory pointer networks for task-oriented dialogue." arXiv preprint arXiv:1901.04713 (2019).

Wen, Haoyang, et al. "Sequence-to-sequence learning for task-oriented dialogue with dialogue state representation." arXiv preprint arXiv:1806.04441 (2018).

Qin, Libo, et al. "Entity-consistent end-to-end task-oriented dialogue system with kb retriever." arXiv preprint arXiv:1909.06762 (2019).

本文所引用图片均来自讲者覃立波PPT.

整理:李嘉琪

审稿:覃立波

排版:杨梦蒗

本周直播预告:

AI TIME欢迎AI领域学者投稿,期待大家剖析学科历史发展和前沿技术。针对热门话题,我们将邀请专家一起论道。同时,我们也长期招募优质的撰稿人,顶级的平台需要顶级的你,请将简历等信息发至yun.he@aminer.cn!

微信联系:AITIME_HY

AI TIME是清华大学计算机系一群关注人工智能发展,并有思想情怀的青年学者们创办的圈子,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法、场景、应用的本质问题进行探索,加强思想碰撞,打造一个知识分享的聚集地。

更多资讯请扫码关注

(直播回放:https://b23.tv/lAiohV)

(点击“阅读原文”下载本次报告ppt)

哈尔滨工业大学博士覃立波:多领域端到端任务型对话系统研究分享相关推荐

  1. 哈工大计算机学院博士毕业 要求,哈尔滨工业大学博士毕业要求.doc

    哈尔滨工业大学博士毕业要求 关于博士研究生在攻读学位期间发表学术论文的要求 <中华人民共和国学位条例>和<中华人民共和国学位条例暂行实施办法>规定:博士学位论文应当表明作者具有 ...

  2. 哈尔滨工业大学(深圳)张民教授团队招收自然语言处理推免硕博研究生

    每天给你送来NLP技术干货! 学校简介 哈尔滨工业大学(深圳)由哈尔滨工业大学(中国九校联盟(C9)成员.国家"985工程"."211工程"高校)与深圳市政府合 ...

  3. 《ACL 2020丨哈工大多领域端到端任务型对话系统》

    原文链接:https://www.cnblogs.com/cx2016/p/13471731.html 分享一个基于动态聚合网络的多领域端到端任务型对话系统 覃立波,哈尔滨工业大学社会计算与信息检索研 ...

  4. 海德堡大学 BMCV 组博士招生,生物医学图像分析领域​

    海德堡大学生物医学计算机视觉研究小组(BMCV)博士招生,生物医学图像分析领域.利用深度学习(如分割.跟踪.配准)对生物医学图像进行自动分析,开发新的方法和软件.总的目标是改善医疗诊断和治疗,工作是与 ...

  5. 哈工大计算机系王晓龙,林磊,讲师,2004获得哈尔滨工业大学计算机应用专业工学博士学位 ......

    摘要: 林磊,讲师,2004获得哈尔滨工业大学计算机应用专业工学博士学位.主要研究方向:计算分子生物学,自然语言处理,模式识别.长期从事生物信息学,自然语言处理和模式识别的研究工作,在理论研究和应用研 ...

  6. 计算机英语分班考试成绩,哈尔滨工业大学2016级博士英语分班考试成绩及分班名单...

    哈尔滨工业大学2016级博士英语分班考试成绩及分班名单 15B932018 16B327002 16B327003 16B327005 16B327006 16B327007 16B327012 16 ...

  7. 哈工大计算机科学博士,计算机科学与技术学院博士生培养方案-哈尔滨工业大学计算机学院.DOC...

    计算机科学与技术学院博士生培养方案-哈尔滨工业大学计算机学院 PAGE PAGE 1 计算机科学与技术学院 博士研究生培养方案 计算机科学与技术学科博士研究生培养方案说明 一.培养目标 1.树立爱国主 ...

  8. 哈工大计算机学院在职博士 学费,哈尔滨工业大学在职研究生需要缴纳的学费是不是比全日制多...

    经济社会下大家对钱的关注度都是很高的,所以在选择在职读研的时候,大家也会想要知道具体的学费需要多少,再衡量一下是不是值得去报考,那么如果选择哈尔滨工业大学在职研究生的话,学费是不是会比全日制多呢? 在 ...

  9. 哈尔滨工业大学软件学院诚聘英才

    单位简介 哈工大软件学院是首批国家示范性软件学院.学院起源自1956年我国最早一批创建的哈工大计算机专业,薪火相传,弦歌不断.学院依托哈工大一校三区资源优势,落实立德树人根本任务,面向世界科技前沿.经 ...

最新文章

  1. Linux 桌面玩家指南:17. 在 Ubuntu 中使用 deepin-wine,解决一些依赖 Windows 的痛点问题
  2. Make sure the device specification refers to a valid device
  3. javascript字符串截取
  4. innerhtml修改对象内容后无法显示_javascript的DOM对象
  5. iOS - UIView属性hidden, opaque, alpha, opacity的区别
  6. VS2012如何显示行号
  7. timequest静态时序分析学习笔记之命令约束
  8. Qt开发植物大战僵尸第一篇
  9. opencv答题卡识别
  10. 读书郎上市背后隐忧:业绩下滑明显,市场地位较靠后,竞争力存疑
  11. java关于Exception(异常)的详解
  12. 普通程序员如何正确学习人工智能方向的知识?
  13. 编程老手的哪些特点,是值得新手程序员学习的?
  14. C语言入门系列 - 自定义函数
  15. ion-slides广告轮播
  16. 深入理解JVM03--判断对象是否存活(引用计数算法、可达性分析算法,最终判定),Eclipse设置GC日志输出,引用
  17. python 网页爬虫nike_python爬虫的基本抓取
  18. 建筑垃圾运输车辆监管系统,渣土车管理实施方案,
  19. ERP、MES及WMS经验分享(转)
  20. 红领巾小创客机器人活动计划_【动感中队】红领巾小创客之二(2)中队的“我创意,我快乐”活动...

热门文章

  1. GPT详细安装教程-GPT软件国内也能使用
  2. CHOPS 音乐驱动动画
  3. 怎么在谷歌地图上画图_如何在Google地图上规划具有多个目的地的公路旅行
  4. Delphi 复制文本框内容到剪贴板
  5. Android UI绘制流程分析(三)measure
  6. ios手写_如何在iOS 10中发送手写和数字触摸消息
  7. 上云就上百度智能云,百度智能计算峰会召开,AI原生云全新升级
  8. Address of Label and Indirect Branches in LLVM IR
  9. 【STM32】通用定时器TIM2-TIM5中断配置方式+继电器控制
  10. 嫁我是你一生的赌注,我怎么忍心让你输