0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

会话式机器阅读理解概述

智能感知与物联网技术研究所 来源:通信信号处理研究所 作者:通信信号处理研究 2020-11-25 16:07 次阅读

1

会话式机器阅读理解是什么?

如何在会话式阅读理解里面能够建模它的implicative reasoning,即如何去学习会话与阅读理解篇章之间的蕴含关系。 在这篇文章中,讲者概述了两种常见阅读理解的类型: 第一种是标准的阅读理解,该模式是指,给定一篇描述型的文章和一个基于事实型的问题,通过匹配文章和问题,从文章中抽取一个span来回答这个问题; 第二种是会话式的问答,与标准的单轮问答不同,需要追问新问题,即follow up question,同时问题是以交互的形式出现。会话式问答,存在两个挑战,一个是需要能理解篇章,另一个是能够理解交互的会话本身。 基于会话式问答,讲者引入一个例子简单说明(图1)。

比如,用户简单描述了自己的情况(Scenario),但用户的问题并不能直接从文章(Rule Text)中获取,往往这个文章可能是一个比较通用的、相当于是一个法规或者法律的篇章。 比如,说明能够申请7a贷款的人,需要具备什么样的条件,但针对用户问题在文章中没有直接的答案,必须和用户进行一个交互,才能得到明确的回答。例子中,成功申请贷款的条件有三个,所以还需再问另外的条件。 比如,能不能够在别的地方获取它的资金来源,假如用户说no的话,这时候就可以给他一个答案,也就是说你可以申请。 因此,在这种情形下,就需要既能够读懂这篇文章,理解文章中的规则,也要能够主动地和用户交互,从用户那边获取一些需要知道的信息,最终再给他一个决策。

图1 定义该项任务常用的数据集是ShARC (shaping answers with rules through conversation 的简称),数据集的设定是:给定Rule Text;用户描述自己的Scenario(Background);用户提出question;已有的问答(Dialog History)。 整个过程可以概述为,由于用户给定的background往往不明确,机器需要进行几轮交互,然后从交互中获取一些跟规则有关的信息,然后告诉用户具体答案。 整个任务有两个子任务: 任务一,整合Rule Text,Scenario,Question以及通过几轮交互从用户获取的信息,作为模型输入,然后做出决策(Decision Making)。

该决策包含四种类型:一种是根据现有的信息能够作出yes or no 的决策;或者有些情况下,用户的问题可能与给定Rule Text无关,或根据Rule Text并不能解决问题,则会出现unanswerable的答案;另一种情况是Rule Text中需要满足很多条件,但有些条件机器不确定是否满足,需要作出inquire的决策,主动从用户那里获取更多信息,直至几轮交互后能够作出yes or no的决策。 任务二,如果生成的决策是inquire,则需要机器问一个follow-up question,该问题能根据Rule Text引导用户提供一些没有提供的信息,便于进一步的决策。

图2 2

会话式机器阅读理解的初探

2.1 模型介绍 负采样 针对于该任务,讲者主要介绍了两项工作,首先是发表于ACL2020的文章“Explicit Memory Tracker with Coarse-to-Fine Reasoning for Conversational Machine Reading”。 该工作的贡献有两个: a. 针对决策,提出了explicit tracker,即能够显示的追踪文章中条件是否被满足; b. 采用coarse-to-fine方法抽取Rule Text中没有被问到的规则、条件等。

图3 模型主要包括了四部分:1.Encoding→ 2.Explicit Memory Tracking→ 3.Decision Making→ 4.Question Generation,整体结构如下:

图4 (1) Encoding 将Rule Text中的句子分开,比如分为三个句子,在每个句子前加一个[CLS]表征句子特征,同时把queestion,scenario以及用户的会话历史加起来,也用[CLS]表征,拼接起全部特征后,通过BERT进行encoding。

图5 (2) Explicit Memory Tracking 该部分的目的在于挖掘出存在于Relu Text的句子中与用户提供的信息(比如initial question 和dialog history)之间的implication。 针对于此,提出了explict memory tracker,类似于recurrent的思想,逐步的把用户的信息和Relu Text中的规则进行交互,从而更新每一个规则的memory里对应的value,最终得到每一个条件满足,不满足或者不知道的一个状态。 经过n次更新完后,每一个rule 都会得到key-value对。

图6 (3)Decision Making 对n次更新完后的key-value做self-attention,经过一个线性层做四分类,即Yes, No, Irrelevant, Inquire。

图7 同时,还设计了一个subtask,即对最终更新完之后的key-value做一个预测,显示的预测该规则是Entailment,Prediction还是Unknown。该预测任务和Decision Making一起进行训练。

图8 (4)Question Generation 若得到的决策是Inquire,就要求继续做一个follow-up question的generation。 主要包括两个步骤: 第一步,从rule 中抽取一个span,具体是使用了一种coarse-to-fine 的做法,如下图所示。由于在Entailment prediction,句子的unknown分数越高,表示该句子越可能被问;若句子状态是Entailment或者Contradiction,说明该句子状态已知,没必要继续问下去。 因此,选择每一个句子在Entailment prediction中unknown的分数,并在每一个句子中计算抽取start和end的分数,然后将这两个分数相乘,综合判断哪一个span最有可能被问到。

图9 第二步,就是把span和rule 拼接起来,经过一个预训练模型将其rephrase一个question。

图10 2.2 实验验证 负采样 使用ShARC数据集进行实验验证,包含了两个任务的评价:分别为对于Decision Making任务采用 Marco-Accuracy 和Micro-Accuracy评价;以及对于问题生成采用BLEU Score评价。 此外,讲者考虑到在end-to-end evaluation时,存在一个缺点,也就是说,对于评价问题生成时,模型是基于决策这部分的水平去做问题生成的评价,这使得每个模型之间问题生成的表现不好比较,因此提出一个oracle question generation evaluation,即只要当Ground truth decision 是inquire,就对其问题生成的水平进行评价。 在测试集上得到的结果验证了所提出的Entailnment Memory Tracker(EMT)模型较其他模型效果有很大提升,尤其在问题生成方面效果显著。

表1 具体分析每一类决策的准确率,可验证Inquire的效果要更好,主要因为模型能显式的追踪模型的一些状态,而不是简单的学习模型中一些Pattern。 此外,在oracle question generation evaluation数据集上,与之前最好的模型E3,以及加上UniLM的模型进行对比,同样也证明了采用Coarse-to-Fine的方法抽取span,在问题生成方面具有更好的效果。

表2 同时,讲者给出了一个例子,更形象明白的说明了所提出的模型具备可解释性。

图11 3

如何更好地进行会话式机器阅读理解

3.1 问题提出负采样 进一步,讲者介绍了第二项工作,该工作与前者的侧重点有所不同,存在两个差异: 第一,document interpretation,主要由于第一项工作只是简单的对句子进行了一个切分,但实际上有些conditions(比如,上述例子中的American small business for profit business)是长句子中从句的条件,因此,第二项工作侧重如何去理解这样的条件。比如,能申请7(a)贷款,需要满足(①==True and ②==True and ③==True)的条件,这在第一项工作中是没有被建模的。

图12 第二,dialogs understanding,即对于会话并没有做特别显式的理解。比如,在会话第一轮发现rule之间是and的关系,并且在Scenairo中抽取出条件,说明第一个rule是true,但还要继续问第二个和第三个rule,所以给定Inquire的决策,直至满足所有的rule后,才能给一个“You can apply the loan”的回答。

3.2 模型介绍负采样 因此,该项工作主要基于这两点,提出先采用Discourse Segmentation的方法显式的把条件更好地抽取出来,之后做Entailment Reasoning 显式地预测每一个状态是否被满足,如果预测结果是Inquire,还需要做一个Follow-up Question Generation。

具体的,在discourse segmentation 中主要有两个目标:其一是明白Rule Text中的逻辑关系;其二是将句子中的条件更好地抽取出来。比如,对于一个rule采用Discourse Segmentation的方法将其抽取成三个elementary discourse unit (EDU),比如,下图中EDU1 ,EDU3是条件,然后EDU2是一个结果,这样的一个关系。

图15 如何实现Entailment Reasoning? 与工作一类似,在EDU抽取之后,将其与之前的用户Question,Scenairo 以及Dialog History拼接起来,经过预训练模型,得到每一个phrase的表征。然后采用多层transformer模型预测rule中每一个EDU 的状态,是Entailment、Contradiction,或者Neutral。 多层transformer模型较之前recurrent思想的模型更优秀,其不仅能在用户信息与rule之间做交互,也能更好的理解rule本身的逻辑结构(比如,conjunction,disconjunction等 )。 进一步,如何实现Decision Making? 在做决策时,根据学习到的Entailment、 Contradiction、Neutral向量,去映射前一步做Entailment Prediction的三个分数,得到每一个EDU的状态vector,同时拼接该状态vector与EDU本身的语义表示,作为Decision Classifier 输入,从而得到决策。

图163.3实验验证及结论负采样 同样地,实验也是在ShARC数据集上进行。实验结果表明,使用discourse segmentation加上更好的更显式的Reasoning的模式,较之前使用EMT模型具有更好的性能表现,在Micro Accuracy和Macro Accuracy上差不多高出4%。

表3 在Ablation Study中,首先对比了RoBERTa和BERT之间的区别,表明了RoBERTa对于Reasoning的任务具有一定的贡献;其次,说明了采用discourse segmentation划分一个句子为多个EDU形式的效果优于仅对句子进行划分的结果;然后,证明了采用Transformer显示地对用户信息和问题之间做交互是有必要的;最后,证明了拼接Entailment vector和EDU本身的语义表示,对最终决策具有相当大的贡献。

表4 进一步,分析了不同逻辑结构下模型的结果表现。这里粗略分成4种规则的逻辑结构,即Simple、Disjunction、Conjunction以及Other。结果表示,模型在Simple形式下具有最好效果,然而在Disjunction形式下效果较差。

图17 为什么模型对于Disjunction,做出的决策效果较差? 考虑到模型涉及两部分内容,一是dialogue understanding;二是对 scenario的理解。 因此,讲者进一步做了如下实验,就是把这两块内容分开,选择一个只用到dialogue understanding 的子集,再选择一个只用到scenario Interpretation的子集,进行实验。 结果表明,只用到dialogue understanding 的子集的模型效果要优于用到整个数据集的效果,但在scenario Interpretation的子集上,实验效果差了很多。 该现象的原因在于,用户自己的background (scenario)可能用到了很多reasoning的方式,与rule 不完全一样,因此对scenario的理解是比较差的。很多时候scenario里提到了关键信息但是模型并没有抽取成功,从而继续做出inquire的决策。这也可能是导致Disjunction决策效果较差的原因。

图18 4

总结

综上,讲者团队分别提出了Explicit Memory Tracker with Coarse-to-Fine Reasoning 以及Discourse aware Entailment Reasoning的方法,并且在ShARC数据集上效果很好,同时设计实验分析了数据集本身的难点以及模型的缺陷,为后续研究指明可拓展方向。

责任编辑:xj

原文标题:香港中文大学高一帆博士:会话式机器阅读理解

文章出处:【微信公众号:通信信号处理研究所】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 阅读
    +关注

    关注

    0

    文章

    10

    浏览量

    11511
  • 机器学习
    +关注

    关注

    66

    文章

    8062

    浏览量

    130442

原文标题:香港中文大学高一帆博士:会话式机器阅读理解

文章出处:【微信号:tyutcsplab,微信公众号:智能感知与物联网技术研究所】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【量子计算机重构未来 | 阅读体验】初探

    ,而是偏科普性质的书籍,目的是尽量用通俗易懂的语言解释量子计算的原理,以及目前能够解决什么问题,未来能够解决的问题的畅想。了解到这个信息,再粗翻了几章内容,大致明白了这本书的阅读顺序最好是按照传记
    发表于 03-04 23:09

    《深入理解FFmpeg阅读体验》初识有感

    【感谢】 这两年来,多有接触到有关视频的处理方法,特别是想把mp4转换为gif,我搜索到FFmpeg是可以转换的,而且速度及快。再有就是很多的嵌入开发板可以快速用FFmpeg来生成视频流。这次论坛
    发表于 01-07 19:48

    《深入理解FFmpeg阅读体验》+ 书收到了,崭新的开篇

    今天收到了《深入理解FFmpeg》 崭新的书,一个在2022年较近距离接触过却尚未深入研究的领域图像处理。最近刚好在作这方面的研究,希望自己可以把握这次机会,好好学习下 FFMpeg,相信可以让自己
    发表于 01-07 18:57

    基于机器翻译增加的跨语言机器阅读理解算法

    近日,阿里云人工智能平台 PAI 与华南理工大学朱金辉教授团队、达摩院自然语言处理团队合作在自然语言处理顶级会议 EMNLP2023 上发表基于机器翻译增加的跨语言机器阅读理解算法 X
    的头像 发表于 12-12 10:28 328次阅读
    基于<b class='flag-5'>机器</b>翻译增加的跨语言<b class='flag-5'>机器</b><b class='flag-5'>阅读</b><b class='flag-5'>理解</b>算法

    外骨骼机器人的概述与分类

    一、外骨骼机器人的概述外骨骼机器人是穿戴在使用者身体外部的一种智能机械结构,可将人体感觉、思维、运动等器官与机器的感知系统、智能处理中心、控制执行系统相结合,从而达到改善人体物理机能及
    的头像 发表于 09-21 10:07 753次阅读
    外骨骼<b class='flag-5'>机器</b>人的<b class='flag-5'>概述</b>与分类

    外骨骼机器人的概述与分类

    一、外骨骼机器人的概述 外骨骼机器人是穿戴在使用者身体外部的一种智能机械结构,可将人体感觉、思维、运动等器官与机器的感知系统、智能处理中心、控制执行系统相结合,从而达到改善人体物理机能
    的头像 发表于 08-30 16:16 751次阅读
    外骨骼<b class='flag-5'>机器</b>人的<b class='flag-5'>概述</b>与分类

    python机器学习概述

    Python机器学习概述 机器学习是人工智能领域的一个重要分支,是一种可以自动改进和学习的算法。在过去的几十年里,机器学习已经成为计算机科学和数据科学领域中最流行、应用最广泛的领域之一
    的头像 发表于 08-17 16:11 716次阅读

    创建一个边缘机器学习系统

    本指南适用于系统设计人员,可能使用Arm Flexible access程序。 本指南将帮助您开发可以执行机器学习的片上系统(SoC)在边缘。本指南中介绍的SoC可以处理与机器学习相关的任务图像识别
    发表于 08-02 11:02

    如何创建一个经过身份验证的会话以使用DeleteAll函数?

    我想使用 AES 密钥与 se050 创建经过身份验证的会话。nano 包似乎不支持这一点。我的理解正确吗? 这很重要 b/c 我想为特定密钥的安全密钥和数据设置策略。我知道您可以在设置策略时将
    发表于 06-08 08:36

    TECS资源池上报BFD会话DOWN和网络流量异常告警的问题处理

    某资源池TECS上报BFD会话DOWN告警和网络流量异常告警,持续时间1秒至6分钟不等,如下图所示。
    的头像 发表于 06-07 09:49 743次阅读
    TECS资源池上报BFD<b class='flag-5'>会话</b>DOWN和网络流量异常告警的问题处理

    如何阅读MTF曲线

      前言 在一次关于如何阅读MTF曲线的网络讨论中,“光学规律太复杂而令人厌烦”,是一个公认的意见;可见,对于摄影师来说,理解数字的世界是那么的困难!  不过,情况并没有那么糟糕,我将在接下来的内容
    的头像 发表于 05-30 09:45 435次阅读
    如何<b class='flag-5'>阅读</b>MTF曲线

    为何SSH会话不能设置为永不断开?

    今天浩道跟大家分享运维工作中常常被大家忽略的SSH会话中断背后的一些知识点!
    的头像 发表于 05-08 18:16 660次阅读

    高效理解机器学习

    来源:DeepNoMind对于初学者来说,机器学习相当复杂,可能很容易迷失在细节的海洋里。本文通过将机器学习算法分为三个类别,梳理出一条相对清晰的路线,帮助初学者理解机器学习算法的基本
    的头像 发表于 05-08 10:24 327次阅读
    高效<b class='flag-5'>理解</b><b class='flag-5'>机器</b>学习

    高效理解机器学习

    为了更好地理解各种技术,根据其目标和复杂度级别进行分类是有帮助的。通过将这些算法组织成不同类别和复杂度,可以简化概念,使其更容易理解。这种方法可以极大增强人们对机器学习的理解,并帮助确
    的头像 发表于 05-06 11:02 469次阅读
    高效<b class='flag-5'>理解</b><b class='flag-5'>机器</b>学习

    CodeWarrior for MCU Version: 10.6“连接”调试会话类型不起作用的原因?

    我在我的电脑上使用 CodeWarrior for MCU Version: 10.6。我试图在不下载的情况下连接到目标。因此,我尝试将它与“连接”调试会话类型连接,但它给我一个错误
    发表于 05-05 07:03