Facebook开源问答系统DrQA:基于单一信源回答开放域提问

简介:
本文来自AI新媒体量子位(QbitAI)

今天一大早,Yann LeCun就转发了一条消息:Facebook开源了DrQA的代码。

DrQA是一个开放域问答系统。

关于DrQA,Facebook还发表了一篇论文《Reading Wikipedia to Answer Open-Domain Questions(阅读维基百科来回答开放域问题)》。这篇论文也入选了下周即将在温哥华召开的ACL 2017大会。

论文的作者为来自斯坦福的Danqi Chen(陈丹琦,之前毕业于清华姚班),以及来自Facebook人工智能实验室(FAIR)的Adam Fisch,Jason Weston,Antoine Bordes。

Adam Fisch介绍说,DrQA的主要任务是大规模机器阅读(MRS)。在这种情况下,DrQA会在一个非常庞大的非结构化文档语料库中寻找问题的答案。因此,这个系统最大的挑战就是文档检索与文本的机器理解如何更好的结合。

论文摘要

640?wx_fmt=png&wxfrom=5&wx_lazy=1

 DrQA系统架构

这篇论文提出使用维基百科作为唯一的知识来源,以解决开放域问答。任何事实性提问的答案,都是来自维基百科中的内容。

我们的方法结合了基于二元语法哈希(bigram hashing)和TF-IDF匹配的搜索组件,以及一个训练用来在维基百科段落中寻找答案的RNN模型。

我们在多个现有问答数据库上的实验表明:1、上述两个模块与现有方案相比优势很大 2、使用远监督的多任务学习,可以让上述组合更高效的完成任务。

为了回答任何问题,DrQA必须首先检索超过500万个条目中的相关文章,然后仔细扫描以确定答案。我们把这个成为大规模机器阅读(MRS)。

我们的工作将维基百科视为文章的集合,而不依赖于其内部图形结构。因此,这个通用方法可以切换到其他文件、书籍或是日报等领域。

像IBM DeepQA这样的大规模问答系统,依赖于多个来源给出答案:除了维基百科,DeepQA还是用了知识库、词典、新闻、书籍等。因此这样的系统严重依赖信息冗余来获得正确答案。

而只有单一知识来源,迫使模型在搜索答案时必须非常精确,因为相关证据可能只会出现一次。因此,这对机器阅读能力是一个挑战。

获取论文,可以在量子位微信公众号(QbitAI)对话界面回复:“drqa”四个字母。

开源代码

Facebook已经把DrQA问答系统的PyTorch实现公布在GitHub上。地址在此:

https://github.com/facebookresearch/DrQA

在这个页面上,Facebook还展示了一下DrQA的问答界面,我们挑选几个给大家看看。首先是这个问题:“生命、宇宙和一切的答案是什么?”

640?wx_fmt=png&wxfrom=5&wx_lazy=1

安装DrQA需要Python 3.5或以上,当然也需要安装PyTorch。更多细节都在requirements.txt中。

另外,Facebook还提供了预训练的模型,以及维基百科问答数据。这部分内容大小为7.5GB,解压之后约为25GB大小。

【完】

本文作者:问耕 
原文发布时间:2017-07-27
相关文章
|
机器学习/深度学习 算法 决策智能
【重磅开源】Facebook开源 Nevergrad:一种用于无梯度优化的开源工具
【重磅开源】Facebook开源 Nevergrad:一种用于无梯度优化的开源工具
167 0
|
缓存 数据可视化 测试技术
开源多年后,Facebook这个调试工具,再登Github热门榜
让许多工程师合作开发大型应用大多会面临一个挑战,通常没有一个人知道每个模块是如何工作的,这种技能会让开发新功能、调查Bug或优化性能变得困难,为了解决这个问题,Facebook创建并开源了Flipper,一个可扩展的跨平台的调试工具,用来调试 iOS 和 Android 应用。近日又双叒登上了Github热榜。
|
前端开发 JavaScript 测试技术
Facebook 开源可扩展文本编辑器 Lexical
Meta(原 Facebook)近日开源可扩展文本编辑器 Lexical,源代码托管在 GitHub 上采用 MIT 许可证。
529 0
Facebook 开源可扩展文本编辑器 Lexical
|
XML jenkins Java
Facebook开源静态代码分析工具Infer介绍
Infer是Facebook公司的一个开源的静态分析工具。Infer 可以分析 Objective-C, Java 或者 C 代码,用于发现潜在的问题。其作用类似于sonar和fortify。Infer更倾向于发现代码中的空指针异常、资源泄露以及内存泄漏的问题。
Facebook开源静态代码分析工具Infer介绍
|
机器学习/深度学习 人工智能 文字识别
图神经网络版本的PyTorch来了,Facebook开源GTN框架,还可对图自动微分
近日,Facebook的AI研究院发表了一篇论文「DIFFERENTIABLE WEIGHTED FINITE-STATE TRANSDUCERS」,开源了用于图网络建模的GTN框架,操作类似于PyTorch这种传统的框架,也可以进行自动微分等操作,大大提高了对图模型建模的效率。
326 0
图神经网络版本的PyTorch来了,Facebook开源GTN框架,还可对图自动微分
|
移动开发 Java 程序员
Facebook 将神奇动画引擎 Pop 开源了!
Facebook 2月发布的新闻类应用Paper,因为其灵动的用户界面和交互,成为近来最令人眼前一亮的移动产品之一。 而这个产品的背后是2011年Facebook收购的Push Pop Press,创始人是分别在Apple任设计师和工程师的Mike Matas与Kimon Tsinteris。他们的合作者还有传奇人物Bret Victor。他们为美国前副总统Al Gore开发的电子书Our Choice当时就曾技惊四座。
337 0
Facebook 将神奇动画引擎 Pop 开源了!
|
PHP C语言 开发者
Facebook 发布开源编程语言 Hack
Facebook周四发布一款名为“Hack”的全新编程语言,并声称该语言将能使代码的编写和测试更加高效快速。Facebook已在公司内部使用该语言超过一年时间,现在将以开源的形式将其正式发布。
421 0
Facebook 发布开源编程语言 Hack
|
存储 安全 算法
Conceal —— Facebook推出的android数据加密的开源APIandroid数据加密的开源API
现如今很多的智能手机,都支持把应用安装到SD卡中,这会帮用户节省很多空间,但是许多黑客也会利用这一点窃取用户的隐私。一般情况下,应用都有SD卡的读写权限,当然他也可以读取到其他应用,存储在SD卡上的数据。这意味着如果你安装了恶意的应用,他就可以轻易的获取SD卡上的所有数据。
371 0
Conceal —— Facebook推出的android数据加密的开源APIandroid数据加密的开源API
|
SQL 存储 前端开发
Facebook 在 2013 年的开源贡献
自从 Facebook 的第一行PHP代码,第一句 MySQL 的 INSERT 语句以来,开源就已经是我们工程哲学中的一个重要的部分。
194 0
Facebook 在 2013 年的开源贡献
|
安全 前端开发 API
KVOController:facebook 开源的 KVO(Key-value Observing)工具
KVOController 是一个简单安全的 KVO(Key-value Observing,键-值 观察)工具,用于 iOS 和 OS X 应用开发中,开源自 facebook。
270 0
下一篇
无影云桌面