作者 | 周俊贤

整理 | NewBeeNLP

关于机器阅历理解应用,首先介绍大家一个真实的业务场景,从网购平台的退单工单中抽取实际退款金额,数据大概是这样:

你好,我3月份在网上买的洗衣服务,当时买了100元,可以洗4件衣服,现在我想退款,由于已用了2次,还剩下2次使用权限,考虑到当时的价格是优惠价,所以我现在请求退款30元。

很明显的,这个工单中实际退款金额应该是30元,但问题是假如用NLP的模型去做,你怎么定义这个任务?也许有人会说,命名实体识别啊,把30元作为label把它标出来,让模型去学习不就完了吗?请仔细想想,用命名实体识别做这个场景的问题在于对于上面的一条样本,里面出现两个金额,一个是100元,一个是30元,不考虑问题的情况下,它们都是金额,命名实体识别通常是解决一种平衡的问题,就是要标的话就一起标,但很明显,对于上面这个样本,真正的答案只有30元。

所以,解决这类业务场景的最佳方案应该是用机器阅读理解的手段,更准确的应该是机器阅读理解里面的「答案抽取任务」

我一直在思考,假如NLP的任务分成四种:「分类任务、序列标注、句子关系、生成任务」的话,机器阅历理解究竟属于哪类任务。首先肯定是的,机器阅历理解属于NLU而不是NLG范围。再换个角度思考,机器阅历理解最常见的应用在哪里?我想还是搜索引擎和智能客服问答(如问一个问题,后台会从问答库或知识库检索相关的文章,再经过机器阅读理解模块得到相应的答案),这样说,机器阅历理解不是一个单一的应用,而是常常嵌入到搜索引擎或对话系统里面发挥作用,业务上遇到的频率肯定不如文本分类这种任务来得多,「建议刚学NLP的新手同学,最好先从文本分类和命名实体识别这种基础场景学起,而不是一开始就学习机器阅读理解,会很容易没有产出」

具体的,本文介绍机器阅读理解(下面统一简称MRC,machine reading comprehension)的四大任务,以及各任务的数据集和相关的比赛,供有兴趣的同学进行学习,资料主要来自于2019年的一篇论文:《Neural Machine Reading Comprehension_Methods and Trends》。

任务一:完型填空

完型填空在英文论文里,又叫做cloze test。就是把文档里面的话随机挖空一些词,让模型进行预测。

中文:相对论是关与时间和引力的理论,主要由爱因斯坦创立。 ->  相对论是关与时间和引力的理论,主要由____创立。  英文:Relativity is a theory about space-time and gravity, which was founded by Einstein。 -> Relativity is a theory about space-time and gravity, which was founded by ____。

这个任务是否似曾相识?这不就是BERT做预训练时候的任务之一吗,把句子里面的某些词【MASK】掉,让模型进行预测,当然在BERT里面是随机挑选15%的词,再按比例【MASK】掉,但在具体的阅读理解任务中肯定是把有意义的词挖空掉,再让模型进行预测。

完型填空随着BERT等预训练任务的出现,已经慢慢淡出大众的视野,主要原因是跟业务场景不结合,基本没有业务场景会用到完形填空的功能,完形填空任务目前最常见的应用就是作为评测模型的指标之一。

数据集

  • CNN/Daily Mail

CNN/Daily Mail(简称CNN/DM)作为单文本摘要语料库,每篇摘要包含多个摘要句。数据集最初是从美国有限新闻网(CNN)和每日邮报网(Daily Mail)收集的约100万条新闻数据作为机器阅读理解语料库。后来进行简单改动,形成用于单文本生成式摘要的语料库。将每篇新闻的要点按原文中出现的顺序组成多句的摘要,每个要点看成是一个句子。

CNN/Daily Mail作为英文文本生成一个最常见的数据集,相信大家并不陌生,其实它一开始是用于机器阅读理解的,就是把里面的一些词挖空,让模型进行预测。

  • CBT

由Facebook在16年发布,数据来源于儿童读物。

比赛

  • 第一届“讯飞杯”中文机器阅读理解评测[1]

任务二:单项/多项选择

单项选择也是我目前正在参加的一个比赛,当然也有难度更大的多项选择任务。单项选择就是给定一个文章、一个问题、若干个选项,要求模型根据文章和问答从答案中选择一个最合适的答案,如下图所示。

Content:I wanted to plant a tree. I went to the home and garden store and picked a nice oak. Afterwards, I planted it in my garden.
----------------------------------------------------------------------------------
Question 1:  What was used to dig the hole?
Candidate Answers:A. a shovel    B. his bare hands
----------------------------------------------------------------------------------
Question 2: When did he plant the tree?
Candidate Answers:A. after watering it    B. after taking it home

数据集

  • MC Test:四选一,数据来自660篇科幻小说。

  • RACE:这是比较出名的数据集,来自于中国中高考阅读理解提醒,想想大家以前在高中做的英语阅读理解,有部分题目是要经过推理才能得到正确答案的,所以这些任务可以更准确地评估机器对语言的理解能力。

比赛

  • 2021海华AI挑战赛·中文阅读理解·技术组[2]

任务三:答案抽取

答案抽取为给定一个文章,一个问题,要求机器根据问题从文章中找出一个连续的片段作为答案,如下图所示。

文章:目前中信银行信用卡额度一般从3000元到五万元不等。中信普卡的额度一般为3000元到10000元之间,中信白金卡额度在一万到五万之间。中信信用卡的取现额度为实际额度的50%。如果信用卡批卡之后,持卡者便就可以查询您的信用额度。
问题:中信信用卡白金卡额度是多少?
答案:一万到五万。

数据集

  • SQuAD:SQuAD数据集十分出名,是斯坦福大学于2016年推出的数据集,一个阅读理解数据集,给定一篇文章,准备相应问题,需要算法给出问题的答案。此数据集所有文章选自维基百科。我认为出名的主要原因是这个数据集的量十分大,一共有108885问题,以及配套的536篇文章,大的数据集让训练一个大的模型成为可能。

  • NewsQA:NewsQA数据集由微软于2016年发布。该数据集包含12万问答对,值得一提的是,相对于SQuAD,NewsQA包含了更多的文章和问题,而且需要复杂推理的问题也比SQuAD更多。

比赛

  • 2020语言与智能技术竞赛:机器阅读理解任务[3]

任务四:自由问答

自由问答为给定一个文章,一个问题,要求模型基于文章和问题生成一个合适的答案,该答案不局限于文章中已存在的词语,是自由生成的,如下图所示。自由问答与答案抽取的关系就像文本摘要生成的抽取式和生成式方法,但用自由问答来做阅读理解有个问题,就是模型生成的答案很难评估它的好坏。

文章:1. 長出來的智齒,只要是無法自我維持良好的清潔;或是現在、未來可能生病無法挽救;或矯正、假牙、復形或其他醫療考量,都有可能需要拔智齒。2. 沒長出來的智齒,醫師會評估若現在、未來有病變的風險,可能需要拔智齒。3. 拔智齒只是智齒相關手術處置其中一種。然而,自我口腔清潔,定期回診最重要。
问题:智齿要拔吗?
答案:智齿不一样要拔,一般只拔出有症状表现得智齿,比如说经常引起发炎得。

数据集

  • MS MARCO:MS MARCO包含了1010916个匿名问题,均来自Bing的搜索查询日志,日志中均包含AI生成的答案和182669条人为重复的答案,该数据集还包含从3563535个文档中提取的8841823个段落。MS MARCO数据集由微软于2016年发布,并在2018年更新。

  • DuReader:DuReader是百度整理出来的中文阅读理解数据集,DuReader数据集由一系列的4元组构成,每个4元租{q, t, D, A}就是一条样本,其中,q代表问题,t表示问题的类型(包括实体型、描述型、是非型,其中每种类型还分为事实型和观点型),D表示问题相关文档集合,A表示一系列答案(答案由人工标注,一个问题可以有多个答案)。

比赛

  • 百度DuReader机器阅读理解比赛[4]

一起交流

想和你一起学习进步!『NewBeeNLP』目前已经建立了多个不同方向交流群(机器学习 / 深度学习 / 自然语言处理 / 搜索推荐 / 图网络 / 面试交流 / 等),名额有限,赶紧添加下方微信加入一起讨论交流吧!(注意一定要备注信息才能通过)

本文参考资料

[1]

第一届“讯飞杯”中文机器阅读理解评测: http://hfl-rc.com/cmrc2017/

[2]

2021海华AI挑战赛·中文阅读理解·技术组: https://www.biendata.xyz/competition/haihua_2021/

[3]

2020语言与智能技术竞赛:机器阅读理解任务: https://aistudio.baidu.com/aistudio/competition/detail/28?isFromCcf=true

[4]

百度DuReader机器阅读理解比赛: https://ai.baidu.com/broad/subordinate?dataset=dureader

END -

算法黑话大赏,我直呼好家伙!

2021-09-19

NLP文本分类大杀器:PET范式

2021-09-15

【万字综述】NLP语言模型发展史

2021-08-20

机器学习领域综述大列表:真的很大, 你忍一忍

2021-07-20

NLP机器阅读理解:四大任务及相应数据集、比赛相关推荐

  1. 百度发起机器阅读理解竞赛,提供中文数据集,获胜团队奖10万

    允中 发自 SSJQ  量子位 报道 | 公众号 QbitAI 机器阅读理解(中文版)技术竞赛,现在可以报名了. 3月1日,由百度.中国中文信息学会(CIPS).中国计算机学会(CCF)联手举办的&q ...

  2. 2021秋招-机器阅读理解整理

    机器阅读理解整理 经典模型整理 笔记 后Bert时代机器阅读理解 后续 自己论文整理 已经分类整 大的实验室: UCL MRC_Group: AI2: 微软: THU: PKU: 数据集文章 ROPE ...

  3. 清华 NLP 团队推荐:必读的77篇机器阅读理解论文

    https://mp.weixin.qq.com/s/2VhgEieBwXymAv2qxO3MPw [导读]机器阅读理解(Machine Reading Comprehension)是指让机器阅读文本 ...

  4. 搜狗开源最新NLP研究成果,打造业内最全机器阅读理解工具包SMRC

    晓查 发自 凹非寺 量子位 出品 | 公众号 QbitAI 上周,搜狗在GitHub低调发布了机器阅读理解工具包SMRC(Sogou Machine Reading Comprehension). 这 ...

  5. 谷歌AI论文BERT双向编码器表征模型:机器阅读理解NLP基准11种最优(公号回复“谷歌BERT论文”下载彩标PDF论文)

    谷歌AI论文BERT双向编码器表征模型:机器阅读理解NLP基准11种最优(公号回复"谷歌BERT论文"下载彩标PDF论文) 原创: 秦陇纪 数据简化DataSimp 今天 数据简化 ...

  6. 【自然语言处理(NLP)】基于预训练模型的机器阅读理解

    [自然语言处理(NLP)]基于预训练模型的机器阅读理解 作者简介:在校大学生一枚,华为云享专家,阿里云专家博主,腾云先锋(TDP)成员,云曦智划项目总负责人,全国高等学校计算机教学与产业实践资源建设专 ...

  7. 【自然语言处理(NLP)】基于SQuAD的机器阅读理解

    [自然语言处理(NLP)]基于SQuAD的机器阅读理解 作者简介:在校大学生一枚,华为云享专家,阿里云专家博主,腾云先锋(TDP)成员,云曦智划项目总负责人,全国高等学校计算机教学与产业实践资源建设专 ...

  8. NLP 作业:机器阅读理解(MRC)综述

    最近自己会把自己个人博客中的文章陆陆续续的复制到CSDN上来,欢迎大家关注我的 个人博客,以及我的github. 本文主要是我的 NLP 作业--机器阅读理解的综述,内容很少涉及到模型的具体架构和相关 ...

  9. 『NLP打卡营』实践课6:机器阅读理解

    基于预训练模型的机器阅读理解 阅读理解是检索问答系统中的重要组成部分,最常见的数据集是单篇章.抽取式阅读理解数据集. 该示例展示了如何使用PaddleNLP快速实现基于预训练模型的机器阅读理解任务. ...

最新文章

  1. wp配置后台自动更新
  2. 恭贺各位鸡年好运,新年快乐,万事如意!!!
  3. TCP、UDP和HTTP详解
  4. OpenCV学习(27) 直方图(4)
  5. android 通知_Android 全局消息通知框架实现(类似EventBus)
  6. BIEE11G系统数据源账号过期问题(默认安装步骤)
  7. canvas操作图片,进行面板画图,旋转等
  8. SSH 无法远程登录问题的处理思路
  9. CCF NOI1024 因子个数
  10. 分布式微服务开发_想要精通分布式微服务架构?你得先学会设计、原理与实战...
  11. php limit计算结果,php – 在应用LIMIT之前获取结果数量的最佳方式
  12. java字符常量_字符常量 java
  13. 时间复杂度o(1), o(n), o(logn), o(nlogn)
  14. 通常所说的微型计算机的主机主要包括(),微型计算机的主机主要包括
  15. 新购买的PLQ-20K在Windows系统下打印乱码或不打印。
  16. Qt for Android获取手机序列号
  17. 统计学假设检验中 p 值的含义具体是什么?
  18. 一个合格数字IC设计工程师的知识结构
  19. 血族手游研发手记:突破战斗与操作
  20. 1135 Is It A Red-Black Tree (30分)

热门文章

  1. 麦田厦门小区信息数据爬取
  2. php显示图片的广告,CBA各队第三阶段转会交易评级:辽宁北京拿A级,广东位列倒数...
  3. Windows7下PHP 7.1搭建开发环境
  4. postgresql导入导出大文件 copy命令
  5. [前端优化]基于H5移动端优化总结
  6. 十一月英语——So it goes...
  7. Google Chrome 成为互联网的看门人
  8. FFmpeg从入门到精通命令
  9. 一起来吐槽:来自暗网的公链项目VAS,竟然内含十级分销?
  10. 学习管理!!中国历史上最经典的7个智慧案例