<返回更多

2020年人气最高的十大NLP库推荐

2020-08-26    
加入收藏
2020年人气最高的十大NLP库推荐

 

自然语言处理

自然语言处理已成为 2020 年深度学习领域中研究最多的领域之一,这主要是由于其日益普及,未来的潜力以及对各种应用程序的支持。

如果你以前玩过深度学习,那么可能知道传统的深度学习框架,例如 Tensorflow,Keras 和 Pytorch。 假定你了解这些基本框架,本文将专门简要介绍很多有用的 NLP 库,2020 年把这些库都用起来吧!

通用框架

1.AllenNLP

2020年人气最高的十大NLP库推荐

 

人气指数:⭐⭐⭐⭐(四星)

官网网站https://allennlp.org/

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

简要说明:AllenNLP 是由世界著名的艾伦人工智能实验室(Allen Institute for AI Lab)建立的 NLP 深度学习通用框架,不仅包含了最先进的参考模型,可以进行快速部署,而且支持多种任务和数据集,还包含了很多很酷的演示案例,看完案例,你就知道自己是否想学习和使用这个框架了!

2.Fast.ai

人气指数:⭐⭐⭐⭐(四星)

官方网站: http://docs.fast.ai/

Github: https://github.com/fastai/fastai

简要说明:Fast.ai 的构建旨在通过其免费的在线课程和易于使用的软件库,为没有技术背景的人们提供深度学习的机会。 实际上,它的共同创始人杰里米·霍华德(Jeremy Howard)刚刚出版(2020年8月)一本全新的书,名为《面向程序员的 fastai 和 PyTorch 深度学习:不需要博士学位的AI应用》,其标题不言而喻。在 Fast.ai 库中,它们具有指定的 Text 节,该节用于与 NLP 相关的所有内容。它们具有具有超高层次的抽象和易于实现的 NLP 数据预处理、模型构建、培训和评估。 在这里,推荐那些偏爱实践而不是理论,并希望快速解决问题的人使用 Fast.ai。

预处理

1.Spacy

人气指数:⭐⭐⭐⭐⭐(五星)

官方网站:https://spacy.io/

GitHub:https://github.com/explosion/spaCy

简要说明:Spacy是最受欢迎的文本预处理库,也是你能找到最方便的库。它包含许多易于使用的函数,可以用于标记化、词性标记、命名实体识别等。它还支持59种以上的语言和几种预训练的单词向量,你很容易就可以快速入门!

2.NLTK

人气指数:⭐⭐⭐⭐⭐(五星)

官方网站:https://www.nltk.org/

GitHub:https://github.com/nltk/nltk

简要说明:与 Spacy 相似,它是 NLP 的另一个流行的预处理库。它的功能包括标记化、词干提取、标记、句法分析和语义推理。就我个人而言,NLTK 是我最喜欢的预处理库,因为 NLTK 足够简单,而且能帮助我们快速完成工作。

3.TorchText

人气指数:⭐⭐⭐⭐(四星)

官方网站:https://torchtext.readthedocs.io/en/latest/

GitHub:https://github.com/pytorch/text

简要说明:TorchText 因为得到 Pytorch 的支持,所以越来越受欢迎。它包含便利的数据处理实用程序,可在批量处理和准备之前将其输入到深度学习框架中。我经常使用 TorchText 来加载训练、验证和测试数据集,来进行标记化、vocab 构造和创建迭代器,这些迭代器稍后可被 dataloader 使用。它不仅是一个非常方便的工具,仅用几行简单的代码就能处理所有繁重的工作,还可以轻松地为数据集使用经过预训练的单词嵌入,例如 word2Vec 或 FastText。

使用 Pytorch 进行的 BERT 文本分类示例:

https://towardsdatascience.com/bert-text-classification-using-pytorch-723dfb8b6b5b

Transformers

2020年人气最高的十大NLP库推荐

 

Huggingface

人气指数:⭐⭐⭐⭐⭐(五星)

官方网站:https://huggingface.co/

GitHub:https://github.com/huggingface/transformers

简要说明:这是最流行的库,它实现了从 BERT 和 GPT-2 到 BART 和 Reformer 的各种转换。huggingface 的代码可读性强和文档也是清晰易读。在官方github的存储库中,甚至通过不同的任务来组织 Python 脚本,例如语言建模、文本生成、问题回答、多项选择等。他们具有内置的脚本,用于为每个任务运行基线转换,真的很方便!

具体任务

1.Gensim

人气指数:⭐⭐⭐(三星)

官方网站:https://radimrehurek.com/gensim/

GitHub:https://github.com/RaRe-Technologies/gensim

任务:主题建模,文本摘要,语义相似度

简要说明:Gensim 是用于特定文本主题建模的高端行业级软件。它的功能非常强大,独立于平台,并且具有可扩展性。不仅可以用来判断两个报纸文章之间的语义相似性,而且可以利用简单的函数调用来执行此操作并返回其相似度分数,非常方便!

2.OpenNMT

人气指数:⭐⭐⭐(三星)

官方网站:https://opennmt.net/

GitHub:https://github.com/OpenNMT/OpenNMT-py

任务:机器翻译

简要说明:OpenNMT 是用于机器翻译和序列学习任务的便捷而强大的工具。其包含的高度可配置的模型和培训过程,让它成为了一个非常简单的框架。因其开源且简单的特性,建议大家使用 OpenNMT 进行各种类型的序列学习任务。

3.ParlAI

2020年人气最高的十大NLP库推荐

 

人气指数:⭐⭐⭐(三星)

官方网站:https://parl.ai/

GitHub:https://github.com/facebookresearch/ParlAI

任务:面向任务的对话,聊天对话,视觉问答

说明:ParlAI 是 Facebook 的#1 框架,用于共享、训练和测试用于各种对话任务的对话模型。其提供了一个支持多种参考模型、预训练模型、数据集等的多合一环境。与本文中的其他大多数工具不同,如果你想自行定制内容,ParlAI 需要一定的编码水平和机器学习专业知识。换句话说,就是用起来有点复杂,但是如果你要是用于对话,它还是一个很好的工具。

4.DeepPavlov

2020年人气最高的十大NLP库推荐

 

人气指数:⭐⭐⭐(三星)

官方网站:http://deeppavlov.ai/

GitHub:https://github.com/deepmipt/DeepPavlov

任务:面向任务的对话,聊天对话

简要说明:除了 ParlAI 之外,我想说 DeepPavlov 更适合于应用程序和部署,而不是用于研究,尽管我们仍然可以用 DeepPavlov 来进行很多自定义。 我认为,DeepPavlov 到 ParlAI 就像 Tensorflow 到 Pytorch。DeepPavlov 是主要用于聊天机器人和虚拟助手开发的框架,因为它提供了生产就绪和行业级对话代理所需的所有环境工具。

--END--

喜欢本文的同学记得收藏+点赞~

更多内容,欢迎大家关注我们的公众号:为AI呐喊(weainahan)

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>