论文总结之任务型对话NLU

最近学习了关于任务型对话NLU的一些论文。大致总结了近些年比较经典的学术界的NLU模型。虽然有些方法现在来看比较常见了,但是思想依旧可以有参考价值。像seq2seq、attention、gate机制对于NLU步骤的优化。
预训练模型Bert、GPT2的提出以及改进刷榜了各项自然语言处理任务。所以贴上了一篇bert做nlu的baseline文章。另外实验室同门最新研究成果基于bert的改进达到了Sota,还未发表就不贴啦。
最后一篇也是实验室师兄关于融入上下文和知识的NLU文章

【一】《Slot-Gated Modeling for Joint Slot Filling and Intent Prediction》

NLU经典论文。
本文提出SF和IP联合训练的思路,attention和gate

x经过Bilstm后得到h1-ht隐状态
(1)slot和intent都考虑attention
a.即每一个hi和其他时刻的所有h做attention得到注意力ci;Slot=softmax((hi+ci))
b. Intent值=softmax((ht+ct))即t时刻的hi
(2)仅intent考虑attention
仅有b,slot由hi单独决定
另外提出了门控机制:
用i时刻的注意力ci和意图向量ct做计算得到他们的关系权重g,Slot=softmax(hi+g*ci)

创新点:本篇论文都是对输出层做了操作,用注意力和门控权重优化输出。本质上模型内部的隐层值并没有改变(仅仅是BLSTM嘛)
参考链接:https://blog.csdn.net/shine19930820/article/details/83052300

【二】《A Stack-Propagation Framework with Token-Level Intent Detection for Spoken Language Understanding》

编码端:
将x做self-attention的编码让每个字获得上下文信息。对每个字通过LSTM后得到每个字的意图,这句话的intent就是所有token投票决定。。。
Slot解码端:
Slot的值得到是将每个字通过另一层lstm,每个时间步输入除了上一个时间步,还有(编码和token意图的拼接)
创新点:token级别的意图识别。
参考链接:https://zhuanlan.zhihu.com/p/85792864

【三】《A Self-Attentive Model with Gate Mechanism for Spoken Language Understanding》


1.编码层
Embedding从word-level和char-level编码,然后self-attention后拼接喂入下一层。
2.通过Bilstm后得到每一个token隐层表示hi 以及 intent向量vt。
每个hi再self-attention得到si,si和vt通过MLP得到关系向量hi*(这一步目的是为了获取slot和intent之间影响因子,做法不是很理解)
3.Slot输出就是 hi*点乘hi; intent输入就是H={h1,h2…ht}
创新点:
这篇论文发表于bert出现不久,所以编码阶段和隐层处理阶段都是用了self-attention。
参考链接:https://zhuanlan.zhihu.com/p/266710823

【四】《A Novel Bi-directional Interrelated Model for Joint Intent Detection and Slot Filling》

本文提出的SF-ID network由SF subnet 和ID subnet组成,这两个子网络执行的顺序是可以交换的,因此模型分为两种模式:SF-First Mode和ID-First Mode。

首先,计算出每个隐状态hi(用于slot)的注意力向量ci,以及最后一个隐状态ht(用于intent)的注意力向量ct。
1.SF-First Mode
这种模式下,先执行SF subnet。
(1)具体的,利用ci和ct去计算slot和intent之间的相关因子f。将相关因子和注意力隐状态相乘,得到槽值slot的值 rslot=f*ci。(可以理解为挖掘slot和intent之间的联系增强slot)
(2)在i时刻,通过rslot和每个时间步隐状态h的注意力机制,得到i时刻的rslot的权值向量。将每个时刻的rslot加权求和得到全局slot向量r。 意图值就是intent=r+ct(挖掘slot和intent联系去增强intent)
(3)第1步和第2步重复执行,不断交互更新参数。最后softmax得到intent和slot结果。
2. ID-First Mode
跟SF-first相比,就是用ci代替rslot先执行第(2)步,得到intent。再执行第(1)步。然后反复迭代。
最后实验结果表明,ID-First Mode在槽填充任务上表现得更好,而SF-First Mode在意图识别任务上表现得更好。因为ID-First是将槽填充看做一个更重要的任务,而SF-First是将意图识别看做一个更重要的任务。
创新点:将intent和slot值不断交互,利用彼此信息精确自身值

【五】《Attention-Based Recurrent Neural Network Models for Joint Intent Detection and Slot Filling》

Seq2seq用于SLU的一个模型。
SF:
ID:(输入是编码端最后一个时刻隐状态和对应的注意力向量)
参考:https://blog.csdn.net/shine19930820/article/details/83052232

【六】《BERT for Joint Intent Classification and Slot Filling》

本篇论文bert在sf和id的尝试,做法没啥好说的,熟悉bert的都知道做法很简单,效果直接刷新sota。短期内都会是一篇baseline
参考链接:https://www.jianshu.com/p/2144cb5b222f?utm_campaign=haruki
启发:实验室也有做SLU在bert上改进的,CLS向量和各个token向量之间的交互,以及训练策略都是改进点。

【七】《Effective Utilization of External Knowledge and History Context in Multi-turn Spoken Language Understanding Model》

当前语句编码后经过两个部分加工
(1)上下文注意模块
做法就是当前utterance对context中每一句做attention,得到加权向量(ps:并不求和)。然后把所有向量和当前utterance向量一起送到Blstm中编码出这个模块最终向量
(2)知识注意模块
将当前utterance的每个token都检索出知识图谱里所包含的知识,transE编码出每个三元组向量。
将三元组向量关系和尾实体 和utterance做attention得到权重(就是个神经网络)将所有三元组实体加权求和(这个是加权求和)
(3)jointmodel
最终是Bilstm解码。用(1)的编码结果作为初始状态,每一个字的解码输入是(该字编码向量,该字知识向量)

论文总结之任务型对话NLU相关推荐

  1. 任务型对话(一)—— NLU/SLU(意识识别和槽值填充)

    1,概述 任务型对话系统越来越多的被应用到实际的场景中,例如siri,阿里小密这类的产品.通常任务型对话系统都是基于pipline的方式实现的,具体的流程图如下: 整个pipline由五个模块组成:语 ...

  2. java意图_任务型对话(一)—— NLU/SLU(意图识别和槽值填充)

    1,概述 任务型对话系统越来越多的被应用到实际的场景中,例如siri,阿里小密这类的产品.通常任务型对话系统都是基于pipline的方式实现的,具体的流程图如下: 整个pipline由五个模块组成:语 ...

  3. GLMP:任务型对话中全局到局部的记忆指针网络 论文阅读及代码解析

    UPDATE 11.6.2020 复习代码,修正部分内容,清晰化部分表述.如发现问题,欢迎留言讨论! 文章目录 UPDATE GLMP ABSTRACT 1.INTRODUCTION 2.GLMP M ...

  4. 《论文阅读》任务型对话系统——面向角色的对话摘要

    <论文阅读>任务型对话系统--面向角色的对话摘要 前言 文本摘要 对话摘要 Other Roles Matter! Enhancing Role-Oriented Dialogue Sum ...

  5. 想了解任务型对话机器人,我们先从自然语言理解聊起

    摘要:本文中主要介绍对话系统中的自然语言理解模块(NLU),NLU是对话系统中非常重要的一个模块,主要包括意图识别和槽位填充. 一.引言 随着移动互联网和智能终端的快速发展,任务型对话机器人的应用越来 ...

  6. 干货!任务型对话中语言理解的鲁棒性测试 |清华刘劼西

    点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 本期AI TIME PhD直播间,我们邀请到了清华大学计算机科学与技术系的硕士生--刘劼西,带来分享--<任务型对话中语言理解的鲁 ...

  7. 任务型对话(二)—— DST(对话状态追踪)

    1,概述 关于任务型对话的简介看任务型对话(一)-- NLU(意识识别和槽值填充). 首先我们来看下对话状态和DST的定义. 对话状态:在$t$时刻,结合当前的对话历史和当前的用户输入来给出当前每个s ...

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

    ⬆⬆⬆              点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入! 本期AI TIME PhD直播间,我们有幸邀请到了来自哈尔滨工业大学社会计算与信息检索研究中心的在读博 ...

  9. RiSAWOZ中文任务型对话数据集

    RiSAWOZ中文任务型对话数据集 标题:<RiSAWOZ: A Large-Scale Multi-DomainWizard-of-Oz Dataset with Rich Semantic ...

  10. 为新研究准备好一块用武之地:最全任务型对话数据调研

    合适的数据集或者语料是优秀的自然语言研究工作的基础,然而找寻合适的数据集通常是一件耗时耗力的工作.这时候一份优质的数据集汇总就能帮助科研人员,在研究开始的时候事半功倍.这篇文章就向你介绍一份优质的数据 ...

最新文章

  1. 【java】兴唐第十九节课(内部类)
  2. 揭秘硅谷进化历程:机遇无穷 成功需付出更高代价
  3. 人工智能时代的产品思维(2C)
  4. 腾讯计费:亿万级大促活动自动化保障体系
  5. eclipse-java-2019-12-R-win32-x86_64分享
  6. magic_quotes_gpc与magic_quotes_runtime区别
  7. 看了还不会装系统,智商肯定不高!
  8. String.format()方法使用
  9. 计算机二级C语言知识点
  10. 红外感应器+arduino+processing+flash 实现麦克风吹波波效果
  11. MySql将一张表的数据copy到另一张表中
  12. 机组组合问题常用术语
  13. iOS开发之NSLocalizedString,多个本地化语言(Xcode9.2)
  14. JavaBean的书写规范
  15. 门禁系统远程无线联网解决方案
  16. 轻量化Json开源格式化工具-JSON Formatter
  17. java提示系统找不到指定路径怎么解决?
  18. GB/T 17626.2-2018下载网址
  19. 计算机安全与防病毒知识,计算机安全与防病毒知识
  20. 智能网关能够实现哪些功能

热门文章

  1. 使用mysql进行身份证校验
  2. 阿丹的1234投资策略
  3. 如何解决Mac电脑中的“AppStore无法下载软件”问题?
  4. 【教程】使用腾讯云轻量应用服务器搭建 Guacamole 远程桌面代理服务器,让境外小鸡远程不再卡顿!!
  5. 关于程序员的「年龄歧视」问题,程序员的年龄天花板难道是35岁吗?
  6. 用crontab每隔1分钟执行一个命令行脚本
  7. 百度开发平台 access key获取步骤
  8. webx框架 实现文件上传保存服务器 解析
  9. you-get下载bilibili视频
  10. <aop:aspectj-autoproxy />作用