当BERT遇上搜索引擎

前两天刷到一篇有意思的paper,文中将信息检索工具Anserini和BERT结合,实现了一个开放域的问答系统。

如图所示,论文的主要创新点是将BERT和Anserini整合,利用外部知识库(维基百科)辅助实现QA问答。原文发表在NLP顶会NAALC 2019上。

论文题目:

End-to-End Open-Domain Question Answering with BERTserini

论文链接:

https://arxiv.org/abs/1902.01718

01 背景

首先,作者收集了5.08M的维基百科文章,拆分成段落和句子。对文章、段落、句子分别构建index索引

其次,将预训练好的BERT在阅读理解数据集SQuAD上微调,作为文本编码器。

对于一个新的问题,通过搜索引擎返回topK篇关联性最强的候选文档,然后文档和问题一起输入微调后的BERT计算得分。取分数最高的文本片段,作为最终答案。

整个问答系统的思路非常简单。通过引入维基百科等外部信息,自动挖掘开放域问题的答案。

值得注意的是,文本片段的最终得分如何计算?

文中方法是由搜索系统和BERT分数的线性组合决定。其中 是超参,衡量二者的重要性。

就是这么简单粗暴!作者也在文末表示,直接加权输出不够全面。

02 实验

论文主要包含了两方面的实验。

检索粒度

在检索时,对哪一种粒度的文本进行筛选非常关键。因为文章、段落、句子包含的信息量明显不同。

实验发现,将段落作为索引对象,效果是最好的。

这样的结果应该符合我们的认知。因为一篇文章包含的内容太宽泛,绝大多数与用户问题无关。而一个句子的信息量太少,缺乏上下文,BERT无法准确识别出答案片段

作者统计发现一个段落平均包含2.7个句子,一篇文章平均包含5.8个段落,所以针对不同粒度文本设置了不同的K值。

K值选择

K值越大,传输给BERT的数据越多,直观上看文本中包含正确答案的可能性越高。

基于段落索引,作者测试了召回率、完全匹配率(EM)变化。

召回率,是检索的K个段落中包含正确答案的概率。显然K越大,召回率越高。

Topk完全匹配率,指BERT依次从K个段落中识别答案,最终包含正确答案的概率。

Top1完全匹配率,指BERT依次从K个段落中识别答案,分数最高的片段是正确答案的概率。

召回率代表了模型识别准确度的上界。召回率与Topk EM的间隔,表示BERT潜在的提升空间。Topk EM与Top1 EM的间隔,表示需要寻找更有效的得分计算方法。

03 演示

作者将BERTserini模型部署为一个聊天机器人。

第一个问题来自SQuAD验证集,其余3个是作者自定义的问题,以展示bot可以回答问题的范围。

BERTserini 先根据问题,从维基百科中检索最相关的K个段落(基于BM25),然后用微调的BERT定位答案span。最后,将答案所在的句子返回前端展示。

04 总结

本文用搜索引擎+预训练语言模型这种两阶段的方式,实现了一个问答系统。

搜索引擎结合外部知识库(维基百科、百度词条、谷歌搜索等),相比于垂直领域,信息来源更丰富了。因而模型可以回答一些开放域的问题。

整体思路还是比较灵活的。当然论文中的做法比较粗暴,无论是搜索引擎还是BERT,以及score的计算方式上,都还有提升空间。

由于微信平台算法改版,公号内容将不再以时间排序展示,如果大家想第一时间看到我们的推送,强烈建议星标我们和给我们多点点【在看】。星标具体步骤为:

(1)点击页面最上方'AINLP',进入公众号主页。

(2)点击右上角的小点点,在弹出页面点击“设为星标”,就可以啦。

感谢支持,比心

欢迎加入预训练模型交流群
(0)

相关推荐

  • NLP 高引论文解读两篇 | BERT模型、SQuAD数据集

    BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 作者: Jacob Devlin, M ...

  • 论文解读:Bert原理深入浅出

    Bert 自 Google 于 2018 年发表至今,一直给人们带来惊喜,期间也陆陆续续因为Bert出现的原因多了不少新的岗位,甚至公司 JD 上都明确表明必须懂 Bert. 它在 11 项自然语言处 ...

  • 字节跳动 | AMBERT:一种多粒度Tokenization的预训练语言模型

    论文标题:AMBERT: A Pre-trained Language Model with Multi-Grained Tokenization(多粒度分词的预训练语言模型AMBERT) 作者:Xi ...

  • ACL 2019论文| 揭秘认知图谱!从多跳阅读理解问答开始

    "机器的阅读理解与问答"一直以来被认为是"自然语言理解(NLU)"的核心问题之一,随着BERT等模型的兴起,单段落的简单阅读理解任务取得了重大突破:研究者将目光 ...

  • 【ACL 2019】用于多跳推理的动态融合图网络

    多文档问答是自然语言处理领域近期比较火热的一个研究问题,不同于传统的问答系统,多文档问答需要模型从数个文档中协同地寻找问题的答案,这对模型的多跳推理能力提出了很高的要求. 论文原文:https://a ...

  • 《民法典》:当“抵押权”遇上“居住权”

    来源:深圳律协 居住权制度渊源已久,起源于罗马法.罗马法中的居住权属于人役权的范围,其具有保护弱者的的功能.后被<法国民法典><德国民法典>等吸收借鉴.虽然在我国<物权法 ...

  • 跨骑摩托车早上难启动,换遍配件也没解决,直到遇上我

    一辆125水冷跨骑摩托车行驶3万多km,最近出现冷机难启动故障,尤其在冬季的早晨,更难启动,热车情况时好一些.只要发动机启动后,加速.中高速均正常.在其他维修店换过火花塞.点火线圈.电子点火器.检查配 ...

  • 当纤薄遇上镂空,它是规则自定义者

    三年前的夏天,我去瑞士参加一年一度的蒙特勒爵士音乐节,空气中弥漫着萨克斯和钢琴的味道,疫情之前,每年有超过二十万乐迷赶到日内瓦湖边,听音乐喝啤酒,惬意放松. 2021年10月,蒙特勒音乐节将从日内瓦湖 ...

  • 当公主殿下遇上小恶魔

    看到题目,我猜你会想到"美女与野兽",这个经典童话故事陪伴几代人成长,又被好莱坞改编成电影翻拍多次,给人们留下深刻印象. 不过,我们今天谈到的可不是童话故事,而是一组有意思的江诗丹 ...

  • 遇上飞机急刹,我乘火车去了瑞士山谷

    飞机在腾空前最后一刻来了个急刹,空姐说可能有故障,我跟着人流走出机舱,接过一块印着瑞士国旗的巧克力. 转乘火车从苏黎士到日内瓦,我觉得也不错.这趟双层列车乘客很少,大部分是穿制服的军人. 很快天就黑了 ...

  • 当花园遇上杂货,温暖到你的心坎里!

    那回我跟我妈说,我喜欢杂货,想淘点杂货摆在花园. 我妈说:杂货,那还不容易,我也喜欢,我知道有家杂货铺子杂货特别多,我带你去. 跟着我妈弯弯绕绕进了菜市场,在一个拐弯角落找到了我妈最爱的杂货,扫把撮箕 ...

  • 当十二生肖遇上甲骨文,趣味横生!

    社会迅猛发展,中华优秀的传统文化精髓也不断地发生着演化,生肖是历史悠久的文化符号,随着历史的发展,人们以此为雏形,创造出大量不同的生肖形象作品. 作者融入自己的思考,对生肖形象进行设计,结合了甲骨文造 ...

  • 黄芪遇上这几物

    黄芪遇上这几物 1.黄芪+枸杞--益气升阳,提高记忆力 2.黄芪+桑叶--清热益气,增强免疫力 3.黄芪+合欢皮--解毒消痈.祛腐生新 4.黄芪+肉桂--温中散寒,补气止痛 5.黄芪+白术--补气健脾 ...

  • 当肥胖、湿疹、口臭、关节炎、偏头痛、淋巴结节遇上低脂纯素……

    多年来身体状况频出的她, 在那个被惊醒的夜晚, 不由得为自身健康忧虑, 一瞬间转念, 下定决定改变, 坚持正确的饮食后, 重重惊喜就此发生...... 投稿人 / 安静 我是一位80后宝妈,很高兴能在 ...