朋友,千万不能错过!13个自然语言处理的深度学习框架

2018 年 3 月 13 日 深度学习与NLP Nereus

    本文主要介绍一些基于Python,用于自然语言处理( NLP )的常用的神经网络框架和库。


Chainer

    Chainer是由日本公司Preferrence Networks于2014年创建的,是一个功能强大、灵活、直观的基于Python语言的神经网络框架,采用一种“define-by-run”方案[ 1 )。它存储计算的历史而不是编程逻辑。Chainer支持CUDA计算和multi-GPU计算。该框架是在达到MIT许可条件下发布,并且已经应用于情感分析、机器翻译、语音识别、问答等,使用不同类型的神经网络,例如卷积网络、递归网络和序列到序列的模型。

 

Deeplearning4j

    Deep learning 4j是一个由Java语言编写深度学习编程库,但也有一个Python API,Keras,下面将对此进行介绍。分布式CPU和GPU、迭代约简(iterative reduce)的并行训练和微服务体系结构自适应(micro-service architecture adaptation)是其主要特点。向量空间建模(Vector space modeling)使该工具能够解决文本挖掘问题,用于词性( PoS )标记、依存性解析和word2vec用于训练词向量。

 

Deepnl

    Deepnl是由Giusppe Attardi开发的一款为自然语言处理而专门创建的神经网络Python库。它提供了用于词性标注、命名实体识别、语义角色标注(使用卷积神经网络)和词向量训练的工具。


Dynet

    Dynet是卡内基梅隆大学和很多其他许多大学联合开发的工具。它支持c++和Python语言,可以在CPU或GPU上运行。dynet是基于网络结构的dynamic declaration。该工具用于为NLP问题创建优秀的系统,包括句法分析、机器翻译、形态变化(morphological inflection)等。

 

Keras

    Keras是一个基于高级神经网络的Python API,运行在CPU或GPU上。它支持卷积和递归网络,并且可以在Tensorflow、CNTK或Theano之上运行。主要关注点是使用户能够快速进行实验。实际中有许多Keras用法的示例:分类、文本生成和摘要、标记、解析、机器翻译、语音识别等。


Nlpnet

    Erick Rocha Fonseca的nlpnet也是一个基于神经网络的用于NLP任务的Python库。卷积网络使用户能够进行词性标注、语义角色标注和依赖性解析。大多数架构都是语言独立的。

 

OpenNMT

    Openmt是一个基于Python的机器翻译工具,符合MIT license,并依赖PyTorch库。该系统展示了效率和最先进的翻译准确性,并被许多翻译提供商所使用。它还可以用于文本摘要生成、语音识别和图像到文本转换等。

 

PyTorch

    PyTorch是一个快速灵活的神经网络框架,具有一种势在必行的架势。它在tape-based自体移植系统上搭建神经网络,并提供具有超强GPU加速度的tensor computation。递归神经网络主要用于机器翻译、分类、文本生成、标记和其他NLP任务。

 

SpaCy

    开发人员称SpaCy是世界上最快的系统。他们还称SpaCy是为深度学习准备文本语料的最佳方式。SpaCy在gensim、Keras、TensorFlow和scikit - learning等知名Python库上运行良好。其作者马修·洪尼巴尔说,SpaCy的使命是使最先进的自然语言处理技术实用化,并得到广泛应用,比如用于文本分类、命名实体识别、词性标注、依存句法分析等。

 

Stanford’s CoreNLP

    斯坦福大学的CoreNLP是一个灵活、快速、现代化的语法分析工具,为包括Python在内的大多数常见编程语言提供了APIs。它还可以为简单web应用提供服务。正如官方网站上提到的,该框架具有词性( POS )标记器、命名实体识别器( NER )、解析器、coreference resolution system、情感分析、自举模式学习和开放信息提取工具。

 

Tensorflow

    谷歌大脑团队开发了TensorFlow,并于2015年发布,主要用于研究。现在许多公司如Airbus、英特尔、IBM、Twitter等都在工业生成中都使用Tensorflow。系统架构灵活,因此可以在CPU或GPU上高效运行。主要概念是流图(flow graph)。图的节点反映数学运算次数,而边表示结点之间通信的多维数据阵(张量)。TensorFlow最著名的NLP应用程序之一是谷歌翻译。其他应用包括文本分类和摘要生成、语音识别、标注等。

 

TFLearn

    由于是Tensorflow的一个低级API,因此创建了许多高级API来运行在它上面,以使用户体验更快、更容易理解。TFLearn是在CPU和GPU上运行的主要工具之一。它有一个特殊的图形可视化工具,详细展示了权重,梯度,激活等模型训练情况。该库已经用于情感分析、文本生成和命名实体识别。它允许用户使用卷积神经网络和递归神经网络( LSTM )。

 

Theano

    Theano是一个数字计算Python库,用户可以创建自己的机器学习模型。像Keras这样的许多框架都是建立在Theano之上。用于机器翻译、语音识别、词向量计算和文本分类的工具。

 

Summary

    在本文中,我们介绍了基于Python编写的,用于进行自然语言处理的主流的神经网络库。这些工具是Chainer、Deeplearning 4j、Deepnl、Dynet、Keras、Nlpnet、Openmt、PyTorch、SpaCy、斯坦福大学的CoreNLP、Tensorflow、TFLearn和Theano。


相关资源

    1. https://chainer.org/

    2. http://learningsys.org/papers/LearningSys_2015_paper_33.pdf

    3. https://deeplearning4j.org/

    4. http://www.aclweb.org/anthology/W15-1515

    5. https://github.com/attardi/deepnl

    6. https://github.com/clab/dynet

    7. https://arxiv.org/pdf/1701.03980.pdf

    8. https://keras.io/

    9. https://github.com/erickrf/nlpnet

    10. http://nilc.icmc.usp.br/nlpnet/

    11. http://opennmt.net/

    12. http://opennmt.net/OpenNMT/applications/

    13. http://pytorch.org/about/

    14. https://spacy.io/

    15. https://stanfordnlp.github.io/CoreNLP/

    16. https://www.tensorflow.org/

    17. http://tflearn.org/

    18. https://github.com/Theano/Theano

    19. https://github.com/odashi/chainer_nmt

往期精彩内容推荐

千万不要错过!ICLR-2018精品论文解析

历史最全GAN网络及其各种变体整理(附论文及代码实现)

斯坦福大学2017年春季_基于卷积神经网络的视觉识别课程视频教程及ppt分享

深度学习杰出人物专访系列(Andrew Ng)分享(一)

深度学习与NLP 深度学习|机器学习|人工智能 精品视频教程合集分享

纯干货15 48个深度学习相关的平台和开源工具包,一定有很多你不知道的!!!

纯干货14 2017年-李宏毅-最新深度学习/机器学习中文视频教程分享_后篇

模型汇总19 强化学习(Reinforcement Learning)算法基础及分类

模型汇总17 基于Depthwise Separable Convolutions的Seq2Seq模型_SliceNet原理解析

11纯干货7 Domain Adaptation视频教程(附PPT)及经典论文分享

深度学习模型-13 迁移学习(Transfer Learning)技术概述

扫描下方二维码可以订阅哦!

DeepLearning_NLP

深度学习与NLP

       商务合作请联系微信号:lqfarmerlq

登录查看更多
8

相关内容

【MIT深度学习课程】深度序列建模,Deep Sequence Modeling
专知会员服务
76+阅读 · 2020年2月3日
KGCN:使用TensorFlow进行知识图谱的机器学习
专知会员服务
80+阅读 · 2020年1月13日
【课程推荐】普林斯顿陈丹琦COS 484: 自然语言处理课程
专知会员服务
82+阅读 · 2019年12月11日
六篇 EMNLP 2019【图神经网络(GNN)+NLP】相关论文
专知会员服务
71+阅读 · 2019年11月3日
深度学习算法与架构回顾
专知会员服务
77+阅读 · 2019年10月20日
教程 | 从零开始搭建『深度学习』GPU开发环境
机器学习算法与Python学习
8+阅读 · 2019年10月28日
【赠书】TensorFlow自然语言处理
AINLP
17+阅读 · 2019年7月14日
最流行的6大开源自然语言处理库对比
大数据技术
8+阅读 · 2018年8月14日
Python NLP入门教程
七月在线实验室
7+阅读 · 2018年6月5日
深度学习开发必备开源框架
九章算法
12+阅读 · 2018年5月30日
机器学习者必知的 5 种深度学习框架
深度学习世界
7+阅读 · 2018年5月3日
教你用Python进行自然语言处理(附代码)
数据派THU
6+阅读 · 2018年3月28日
Python NLP 入门教程
大数据技术
19+阅读 · 2017年10月24日
Caffe 深度学习框架上手教程
黑龙江大学自然语言处理实验室
14+阅读 · 2016年6月12日
A Comprehensive Survey on Graph Neural Networks
Arxiv
21+阅读 · 2019年1月3日
Arxiv
21+阅读 · 2018年8月30日
Arxiv
6+阅读 · 2018年6月20日
Arxiv
3+阅读 · 2018年6月1日
Arxiv
3+阅读 · 2018年5月28日
Arxiv
15+阅读 · 2018年2月4日
Arxiv
4+阅读 · 2017年7月25日
VIP会员
相关资讯
教程 | 从零开始搭建『深度学习』GPU开发环境
机器学习算法与Python学习
8+阅读 · 2019年10月28日
【赠书】TensorFlow自然语言处理
AINLP
17+阅读 · 2019年7月14日
最流行的6大开源自然语言处理库对比
大数据技术
8+阅读 · 2018年8月14日
Python NLP入门教程
七月在线实验室
7+阅读 · 2018年6月5日
深度学习开发必备开源框架
九章算法
12+阅读 · 2018年5月30日
机器学习者必知的 5 种深度学习框架
深度学习世界
7+阅读 · 2018年5月3日
教你用Python进行自然语言处理(附代码)
数据派THU
6+阅读 · 2018年3月28日
Python NLP 入门教程
大数据技术
19+阅读 · 2017年10月24日
Caffe 深度学习框架上手教程
黑龙江大学自然语言处理实验室
14+阅读 · 2016年6月12日
相关论文
A Comprehensive Survey on Graph Neural Networks
Arxiv
21+阅读 · 2019年1月3日
Arxiv
21+阅读 · 2018年8月30日
Arxiv
6+阅读 · 2018年6月20日
Arxiv
3+阅读 · 2018年6月1日
Arxiv
3+阅读 · 2018年5月28日
Arxiv
15+阅读 · 2018年2月4日
Arxiv
4+阅读 · 2017年7月25日
Top
微信扫码咨询专知VIP会员