艾伦人工智能研究院推出PyTorch上的NLP库 | 附paper+demo

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

f2e451b3be88cb061da219729d253d5161aad5cb

微软联合创始人保罗·艾伦建立的艾伦人工智能研究院(AI2)今天发布了一个PyTorch上的开源自然语言处理(NLP)研究库:AllenNLP。

这个库提供灵活的数据API,能实现智能的batching和padding,对文本处理中的常见操作进行高层抽象,还提供了一个模块化、可扩展的实验框架。

9428043df4511e32c35c2559aa7d242ca41e61fc

AllenNLP包含3个模型:机器理解、语义角色标注和文本蕴含。

其中,机器阅读理解(MC)模型能够从一段文本中选择一段,来回答自然语言问题。AllenNLP中的MC模型是Seo et al, 2017论文提出的BiDAF(双向注意流)的实现。AllenNLP的BiDAF模型在SQuAD数据集上测试的EM成绩是68.7,略好于原始BiDAF模型的67.7分,训练速度也是原来的10倍。

语义角色标注(SRL)模型能从一个句子中还原出它的潜在谓词参数结构,还能为回答“谁”对“谁”做了“什么”这类关于句子含义的基本问题而建立表示。AllenNLP的SRL模型是He et al, 2017论文提出的deep BiLSTM的实现,性能与原文的模型相当,在CoNLL 2012上的F1得分为78.9。

当处理一对句子的时候,文本蕴含(TE)模型能预测第一个句子中的事实是否隐含了第二个句子中的事实。AllenNLP的TE模型是Parikh et al, 2017论文中可分解注意模型的实现,在SNLI数据集上达到了84.7的准确率,接近原始模型86.3%的成绩。

c56ddabe3b639532129c4429c1b1cab1825caed8

AllenNLP由AI2与华盛顿大学等高校的研究者合作开发和维护。

关于这个库的更多信息,以及文中提到的3个模型,见以下链接:

AllenNLP主页:http://allennlp.org/

论文:http://allennlp.org/papers/AllenNLP_white_paper.pdf

GitHub地址:https://github.com/allenai/allennlp

Demo:http://demo.allennlp.org/

安装指南:http://allennlp.org/tutorials/installation

机器阅读理解模型 - BiDAF (Seo et al, 2017):
https://www.semanticscholar.org/paper/Bidirectional-Attention-Flow-for-Machine-Comprehen-Seo-Kembhavi/007ab5528b3bd310a80d553cccad4b78dc496b02

语义角色标注模型 - deep BiLSTM model (He et al, 2017):
https://homes.cs.washington.edu/~luheng/files/acl2017_hllz.pdf

文本蕴含模型 - 可分解注意模型(Parikh et al, 2017):
https://www.semanticscholar.org/paper/A-Decomposable-Attention-Model-for-Natural-Languag-Parikh-T%C3%A4ckstr%C3%B6m/07a9478e87a8304fc3267fa16e83e9f3bbd98b27

本文作者:李林
原文发布时间:2017-09-09 
相关文章
|
自然语言处理 Python
如何使用自然语言处理库`nltk`进行文本的基本处理
这段Python代码展示了如何使用`nltk`库进行文本的基本处理,包括分词和词频统计。首先需要安装`nltk`库,然后通过`word_tokenize`方法将文本拆分为单词,并使用`FreqDist`类统计每个单词的出现频率。运行代码后,会输出每个词的出现次数,帮助理解文本的结构和常用词。
457 1
|
机器学习/深度学习 自然语言处理 PyTorch
PyTorch与Hugging Face Transformers:快速构建先进的NLP模型
【8月更文第27天】随着自然语言处理(NLP)技术的快速发展,深度学习模型已经成为了构建高质量NLP应用程序的关键。PyTorch 作为一种强大的深度学习框架,提供了灵活的 API 和高效的性能,非常适合于构建复杂的 NLP 模型。Hugging Face Transformers 库则是目前最流行的预训练模型库之一,它为 PyTorch 提供了大量的预训练模型和工具,极大地简化了模型训练和部署的过程。
1186 2
|
机器学习/深度学习 自然语言处理 PyTorch
PyTorch 在自然语言处理中的应用案例研究
【8月更文第27天】PyTorch 是一个强大的开源机器学习框架,它为开发者提供了构建和训练深度学习模型的能力。在自然语言处理(NLP)领域,PyTorch 提供了一系列工具和库,使开发者能够快速地实现和测试新的想法。本文将介绍如何使用 PyTorch 来解决常见的 NLP 问题,包括文本分类和机器翻译,并提供具体的代码示例。
461 2
|
机器学习/深度学习 数据采集 自然语言处理
【NLP自然语言处理】基于PyTorch深度学习框架构建RNN经典案例:构建人名分类器
【NLP自然语言处理】基于PyTorch深度学习框架构建RNN经典案例:构建人名分类器
|
机器学习/深度学习 人工智能 PyTorch
人工智能平台PAI产品使用合集之Alink是否加载预训练好的pytorch模型
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
436 10
|
机器学习/深度学习 人工智能 PyTorch
人工智能平台PAI产品使用合集之Alink在PAI上执行时下载依赖库失败,是什么原因
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
机器学习/深度学习 数据采集 自然语言处理
PyTorch 在自然语言处理中的应用实践
【8月更文第29天】随着深度学习技术的发展,自然语言处理(NLP)领域取得了显著的进步。PyTorch 作为一款强大的深度学习框架,因其灵活性和易用性而被广泛采用。本文将介绍如何利用 PyTorch 构建文本分类模型,并以情感分析为例进行详细介绍。
273 0
|
机器学习/深度学习 人工智能 PyTorch
人工智能平台PAI使用问题之如何布置一个PyTorch的模型
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
机器学习/深度学习 PyTorch TensorFlow
在深度学习中,数据增强是一种常用的技术,用于通过增加训练数据的多样性来提高模型的泛化能力。`albumentations`是一个强大的Python库,用于图像增强,支持多种图像变换操作,并且可以与深度学习框架(如PyTorch、TensorFlow等)无缝集成。
在深度学习中,数据增强是一种常用的技术,用于通过增加训练数据的多样性来提高模型的泛化能力。`albumentations`是一个强大的Python库,用于图像增强,支持多种图像变换操作,并且可以与深度学习框架(如PyTorch、TensorFlow等)无缝集成。
|
数据可视化 计算机视觉 异构计算
确保您已经安装了必要的库,包括`torch`、`torchvision`、`segmentation_models_pytorch`、`PIL`(用于图像处理)和`matplotlib`(用于结果可视化)。您可以使用pip来安装这些库:
确保您已经安装了必要的库,包括`torch`、`torchvision`、`segmentation_models_pytorch`、`PIL`(用于图像处理)和`matplotlib`(用于结果可视化)。您可以使用pip来安装这些库:

推荐镜像

更多