我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:双彩网 > 知识模型 >

巨颖:阅读理解进阶三部曲——关键知识、模型性能提升、产品化落

归档日期:06-28       文本归类:知识模型      文章编辑:爱尚语录

  原标题:巨颖:阅读理解进阶三部曲——关键知识、模型性能提升、产品化落地 猿桌会第 61 期 雷锋

  原标题:巨颖:阅读理解进阶三部曲——关键知识、模型性能提升、产品化落地 猿桌会第 61 期

  雷锋网 AI 科技评论按:阅读理解是近两年自然语言处理领域的热点之一,受到学术界和工业界的广泛关注。所谓机器阅读理解,是指让机器通过阅读文本,回答内容相关的问题,其中涉及到的理解、推理、摘要等复杂技术,对机器而言颇具挑战。

  近日,在雷锋网 AI 研习社公开课上,追一科技语义算法研究员巨颖作为 CMRC2018 中文机器阅读理解比赛的冠军团队成员之一,将为大家剖析机器阅读理解的关键知识点,并结合追一的实践经验,分享如何从数据、模型、训练角度提升模型性能,探讨 AI 时代阅读理解技术的产品化落地:?=aitechtalkjuying

  巨颖,追一科技语义算法研究员,清华大学硕士。主要负责阅读理解相关项目,为追一 AIForce、坐席助手等产品提供技术支持,在阅读理解、文本分类、信息抽取等方面有深入的研究和丰富的应用经验。

  今天的分享主题是阅读理解进阶三部曲——关键知识、模型性能提升、产品化落地,分享提纲包括:

  第二,我们本次从 CMRC2018 中文机器阅读理解比赛的获奖经验入手,介绍如何从数据、模型、训练等角度来阅读理解的模型性能;

  进入 Model 讲解之前,我们先思考一个问题:机器如何进行阅读理解?我们人类一般会先通读文章和问题,再带着问题重新阅读文章,并定位答案的区间,进而找到正确的结果,机器阅读也是一样:

  第三步:会采用 Attention 的机制来实现,将文章和问题的信息进行融合。

  接下来我们从 CMRC2018 中文机器阅读理解这个比赛入手,介绍我们如何从数据、模型、训练等角度来阅读理解的模型性能。

  CMRC 由中国中文信息协会举办,中文全称为机器阅读理解大赛,它的整个数据构造都跟 SQuAD 非常类似,只是换成了中文维基百科,它也是一个抽取式的阅读理解,一个问题对应一篇文章,问题数为 1.9 万个,训练集大概是 1 万条,验证集大概是 3 千条,测试集大概是 5 千条,答案一定是文章中的一部分,评测指标是 EM & F1。

  (关于 CMRC 比赛的数据准备工作、模型以及实验结果的具体讲解,请回看视频 00:25 : 43 处,?=aitechtalkjuying)

  首先最先想到的应用场景就是搜索引擎。搜索引擎一般都是基于网页的搜索,比如我现在输入一个问题,搜索引擎会返还给你一系列相关的网页,需要你点入网页找到答案位置,再提取出需要的信息,这都是跟人与人之间的问答交流不一样的。搜索引擎如何直接给用户返回最直接的答案,是各大产商都比较关心的一个问题。其中一个解决方案就是阅读理解。

  另外一个应用领域就是客服。以前如果需要机器回答用户的问题,需要人工提前阅读文档,对其中的知识点进行拆解,最后再交给机器处理,比较耗时耗力。有了阅读理解,机器就能直接阅读文章并进行回答,非常快捷。

  其他还有金融、教育等领域,它们都存在大量非结构化文本。比如金融有很多公告类型的数据,纯靠人工提取知识点,并且由于长尾效应,难以覆盖到用户需要的所有点。依托阅读理解,机器可以直接从非结构化数据中提取到用户所需要的信息点。

  一个挑战是专有领域的数据量比较少,解决方案有三个:一是翻译,二是用类似领域的数据来补充,此外最直接最可靠的就是人工标注,但是成本花费较大;

  另一个挑战是实际应用中文档的复杂性。当数据集是文本时,文档可能长至几百页,这时,机器就需要搭配文章分类和段落索引这样的技术来提升速度和准确性。另外,文档中的一级标题、二级标题以及表格和图片等都是需要处理的问题。

  (关于阅读理解的三个发展方向的具体讲解,请回看视频 00:43 : 30 处,?=aitechtalkjuying)

  以上就是本期嘉宾的全部分享内容。更多公开课视频请到雷锋网 AI 研习社社区()观看。关注微信公众号:AI 研习社(okweiwu),可获取最新公开课直播时间预告。

  1.teacher 的输出是训练集还是验证集?还有 loss 是怎么算的,两个标签的 loss 权重怎么设置?

  teacher 的输出是训练集,实际上相当于我们先训练好了一个模型,我们把这个模型恢复进来,然后重新初始化一个 student 模型,两者一起进行训练。就是说 teacher 现在已经训练好了,然后来一个输入信息,teacher 的这个输出和 student 原本真实的 label 两者都作为监督信号去训练 student。

  实际上,我们在验证的时候一并尝试了这两种方式,一种是 teacher 的变量跟着 student 一起更新;另一种是 teacher 的变量是固定的,只更新 student 的变量。在 CMRC 比赛中,这两种方式都有提升性能,但是 teacher 的变量跟着 student 一起更新时,提升的效果更好。

  多任务的学习方式,一种是预测这个词是不是在答案的范围里面,输出 0,1 二分类的 label 信号,将它当做辅助任务去训练,另外预测答案是否在这个句子里也可以是一个辅助任务。多任务其实是比较 trick 的东西,不同任务设置的权重不一样,需要不断去尝试。

  teacher 是跟着 student 的训练一起进行的,student 和 teacher 的输入应该是全部训练集,一个 bench 进来,先输入 teacher。student 需要参考两个监督信号:一个是 teacher 的输入,一个是真实的 label。

本文链接:http://almaqtari.net/zhishimoxing/79.html