艾伦人工智能研究所发布 AllenNLP 1.0 ,设计和评估新深度学习模型更容易

2020 年 7 月 03 日

艾伦人工智能研究所发布 AllenNLP 1.0 ,设计和评估新深度学习模型更容易

本文最初发布在 Medium 博客,经原作者 Michael Schmitz 授权,InfoQ 中文站翻译并分享。


AI2 已发布其免费 NLP 库的官方版本 v1。AllenNLP 使得为几乎任何自然语言处理问题设计和评估新的深度学习模型变得更加容易,同时还提供了在云端或笔记本计算机上轻松运行这些模型的基础架构。


AllenNLP 1.0 现已发布


AllenNLP GitHub 项目地址:https://github.com/allenai/allennlp


AllenNLP 是一个来自 AI2 的免费、开源的自然语言处理平台,该平台的设计初衷是让研究人员能够轻松地构建最先进的模型。AllenNLP 通过提供与研究人员熟悉的概念相关的抽象和 API,以及一套近期文献中的参考实现,加快了将想法转化为有效模型的速度。最近,AI2 发布了 AllenNLP 1.0,为社区提供了新的模型、更好的性能以及新的资源。


AllenNLP 1.0 版本是 AI2 工程团队工作几个月以来的成果(包括超过 500 次 GitHub 提交),代表了该库重要的成熟里程碑。AI2 已经改进了平台的几乎每个角落,从文档到添加新的 NLP 组件,再到调整 API,从而使它们可以更好地为社区提供长期服务。



AllenNLP 演示中的命名实体识别示例。


需要注意的是,目前 AllenNLP 需要 Python 3.6.1 或更高版本。安装 AllenNLP 的首选方式是通过 pip。只需在 Python 环境中运行 pip install allennlp 即可。AllenNLP 支持 Linux 和 Mac OSX,尚不支持 Windows。


AllenNLP 库于 2017 年发布,提供了自然语言组件,研究人员可以轻松地构建新模型。模型架构可以由高级配置语言清楚地指定,这也为科学家们提供了一种简单的方法来实验不同的架构和参数。自发布以来,AllenNLP 已经发展到包括许多模型的参考实现,有超过 20 个模型的交互式演示。GitHub 上有 800 多个开源项目使用了这个库,学术出版物也引用了数百次。要了解更多关于 AllenNLP 平台的信息,请阅读白皮书或查看 AI2 的新指南


为了保持相关性,平台工程师与 AI2 的研究科学家紧密合作,他们正在自然语言处理和人工智能的前沿领域进行着更广泛的创新。ELMo 就是一个这样的例子,在论文《深层次上下文词表征》(Deep contextualized word representations)中已有描述,该论文首先展示了语言模型如何在各种任务中产生显著效果。(要了解更多关于这些模型及其影响的信息,请参阅《上下文词表征:将单词输入计算机》(Contextual Word Representations: Putting Words into Computers))AllenNLP 平台旨在加速新的研究,这些研究利用了 ELMo 等通用模块以及此后开发的其他模块。


版本 1.0 都包括什么?


版本 1.0 的主要亮点包括:


  1. 几个新模型,包括 TransformerQA共指模型(Coreference model)、NMN 阅读理解模型、以及用于文本蕴涵(Textual entailment,TE)的 RoBERTa 模型


译注:文本蕴涵(Textual entailment TE)在自然语言处理是一个文本片段之间的定向关系。拥有一个文本片段的含意时,可以从另一个文本如下关系。TE 的框架中,将会导致必须需要的文本被称为文本(T)和假设(H)作为分别。文本蕴涵是不一样的纯逻辑蕴涵,它有一个更宽松的定义:“T 推导到 H”(T⇒H),通常情况下,如果一个人阅读 T 将推断为 H 是最有可能的正确的关系。文本蕴含关系是有方向性的,如正向的“T 推导到 H”或反向的“H 推导到 T”。


  1. 新的《AllenNLP 指南》(AllenNLP Guide,),这是一个交互式资源,全面介绍了 AI2 的库和实验框架。

  2. 整个库的性能改进,包括切换到原生 PyTorch 数据加载,通过 Apex 启用对 16 位浮点的支持,以及提高多 GPU 训练的效率。

  3. 将模型拆分为单独的模型仓库(allennlp-models),从而提供一个具有较少依赖性的干净核心库。

  4. 将实验框架从核心库组件中解耦,无需实验框架即可更轻松地使用该库,并简化了过程中的配置文件。



AllenNLP 演示中的文本蕴涵示例。


AllenNLP 的下一步


现在版本 1.0 已经发布,AI2 正在壮大他们的平台团队,这样他们就可以更好地为科学家提供构建最先进的自然语言处理模型所需的研究成果。


AI2 计划继续在性能改进和基础设施方面进行投资,以使建立一个广泛的演示库变得更容易,并与 AI2 研究科学家密切合作,以确保该库能够跟上他们的最新研究。


原文链接:


https://medium.com/ai2-blog/allennlp-1-0-df0327445509


2020 年 7 月 03 日 08:00765
用户头像
刘燕 InfoQ记者

发布了 427 篇内容, 共 139.7 次阅读, 收获喜欢 731 次。

关注

评论

发布
暂无评论
发现更多内容

政策加持迎来区块链技术应用“红利期”

CECBC区块链专委会

数据采集能力受限?企业数字化运营如何迈出第1步

易观大数据

Web 开发必须掌握的三个技术:Token、Cookie、Session

华为云开发者社区

HTTP Token web开发 session Cookie

读书笔记-张潇雨-个人投资课(全)

lmymirror

读书笔记 投资 分享 理财

《effective-go》 学习笔记

半亩房顶

golang

字符串匹配 - Sunday算法

半亩房顶

数据结构与算法 字符串匹配算法

learn go with tests 学习笔记(七)反射

半亩房顶

golang 反射 golang新手

零代码/无代码 vs 低代码 如何分类?如何区别?到底有什么不同?分析超过20款零代码低代码产品

代码制造者

编程 行业分析 低代码 零代码

关于微服务架构思考

Arthur

Executor看不懂?教你如何盘它

Edison

线程池 后端开发

Netty之旅:你想要的NIO知识点,这里都有!

一枝花算不算浪漫

Netty nio

learn go with tests 学习笔记(二) 数组与切片

半亩房顶

golang golang新手

learn go with tests 学习笔记(六)进程同步

半亩房顶

golang golang新手

500行代码写一个俄罗斯方块游戏

程序员生活志

我是如何参与硅谷顶级开源项目并赚得2500美金

阿水

硅谷 Minio

nested exception is java.lang.IllegalStateException: refreshAfterWrite requires a LoadingCache异常解决

谙忆

人生修炼秘籍

xiaoboey

时间管理 人生修炼 知行合一 熵增 时间复利

learn go with tests 学习笔记(五)并发

半亩房顶

golang golang新手

“啰嗦”是成事唯一正确的方法

泰稳@极客邦科技

团队管理 个人成长 团队协作 沟通

用户体验(UX)设计≠用户界面(UI)设计

刘华Kenneth

敏捷 设计 UX 用户体验

话题讨论 | 特朗普正式封禁微信,iPhone 和微信二选一?

InfoQ写作平台

写作平台 话题讨论

RocketMQ源码解析-开篇

Edison

RocketMQ 中间件

企业网站搭建避坑指南

姜奋斗

网站 新手指南 企业 网站搭建 避坑

learn go with tests 学习笔记(一) hello world

半亩房顶

golang golang新手

learn go with tests 学习笔记(四)依赖注入

半亩房顶

golang golang新手

Python爬取微信公众号文章保存到数据库

wjchenge

疫情之年 下半年区块链应用落地会加速么?

CECBC区块链专委会

区块链 场景应用落地

消息疯狂堆积!RocketMQ出Bug了?

Edison

RocketMQ 中间件

MySQL事物-学习笔记

Edison

MySQL 数据库 数据库事务

Java项目如何分层

老胡爱分享

分层架构 项目

learn go with tests 学习笔记(三) 指针和错误

半亩房顶

golang golang新手

艾伦人工智能研究所发布 AllenNLP 1.0 ,设计和评估新深度学习模型更容易-InfoQ