2022年必须要了解的20个开源NLP库_第1页
2022年必须要了解的20个开源NLP库_第2页
2022年必须要了解的20个开源NLP库_第3页
2022年必须要了解的20个开源NLP库_第4页
2022年必须要了解的20个开源NLP库_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

站长统计2022年必须要了解的20个开源NLP库在本⽂中,我列出了当今最常⽤的NLP库,并对其进⾏简要说明。它们在不同的⽤例中都有特定的优势和劣势,因此它们都可以作为专门从事NLP的优秀数据科学家备选⽅案。每个库的描述都是从它们的GitHub中提取的。imageNLP库以下是顶级库的列表,排序⽅式是在GitHub上的星数倒序。1、HuggingFaceTransformers57.1kGitHubstars.Transformers提供了数千个预训练模型来执⾏不同形式的任务,例如⽂本、视觉和⾳频。这些模型可应⽤于⽂本(⽂本分类、信息提取、问答、摘要、翻译、⽂本⽣成,⽀持超过100种语⾔)、图像(图像分类、对象检测和分割)和⾳频(语⾳识别和⾳频分类)。Transformer模型还可以结合多种模式执⾏任务,例如表格问答、OCR、从扫描⽂档中提取信息、视频分类和视觉问答。2、spaCy22.2kGitHubstars.spaCy是Python和Cython中⽤于⾃然语⾔处理的免费开源库。它从⼀开始就设计⽤于⽣产环境。spaCy带有预训练的管道,⽬前⽀持60多种语⾔的标记化和训练。它具有最先进的神经⽹络模型,可以⽤于标记、解析、命名实体识别、⽂本分类、并且使⽤BERT等预训练Transformers进⾏多任务学习,可以对模型进⾏打包、部署和⼯作,⽅便⽣产环境的部署。spaCy是商业开源软件,在MIT许可下发布。3、Fairseq15.1kGitHubstars.Fairseq是⼀个序列建模⼯具包,允许研究⼈员和开发⼈员为翻译、摘要、语⾔建模和其他⽂本⽣成任务训练⾃定义模型。它提供了各种序列建模论⽂的参考实现。4、Gensim12.8kGitHubstars.Gensim是⼀个Python库,⽤于主题建模、⽂档索引和⼤型语料库的相似性检索。⽬标受众是NLP和信息检索(IR)社区。Gensim具有流⾏算法的⾼效多核实现,包括但不限于LatentSemanticAnalysis(LSA/LSI/SVD)、LatentDirichletAllocation(LDA)、RandomProjections(RP)、HierarchicalDirichletProcess(HDP)或word2vec深度学习等。5、Flair11.2kGitHubstars.Flair是⼀个强⼤的NLP库。Flair的⽬标是将最先进的NLP模型应⽤于⽂本中,例如命名实体识别(NER)、词性标注(PoS)、对⽣物医学数据的特殊⽀持、语义消歧和分类。Flair具有简单的界⾯,允许使⽤和组合不同的单词和⽂档嵌⼊,包括Flair嵌⼊、BERT嵌⼊和ELMo嵌⼊。该框架直接构建在PyTorch上,可以轻松地训练⾃⼰的模型并使⽤Flair嵌⼊和类库来试验新⽅法。6、AllenNLP10.8kGitHubstars.AllenNLP是基于PyTorch构建的NLP研究库,使⽤开源协议为Apache2.0,它包含⽤于在各种语⾔任务上开发最先进的深度学习模型并提供了⼴泛的现有模型实现集合,这些实现都是按照⾼标准设计,为进⼀步研究奠定了良好的基础。AllenNLP提供了⼀种⾼级配置语⾔来实现NLP中的许多常见⽅法,例如transformer、多任务训练、视觉+语⾔任务、公平性和可解释性。这允许纯粹通过配置对⼴泛的任务进⾏实验,因此使⽤者可以专注于解决研究中的重要问题。7、NLTK10.4kGitHubstars.NLTK—NaturalLanguageToolkit—是⼀套⽀持⾃然语⾔处理研究和开发的开源Python包、数据集和教程的集合。它为超过50个语料库和词汇资源(如WordNet)提供易于使⽤的接⼝,以及⼀套⽤于分类、标记化、词⼲提取、标记、解析和语义推理的⽂本处理库。8、CoreNLP8.3kGitHubstars.斯坦福CoreNLP提供了⼀组⽤Java编写的⾃然语⾔分析⼯具。它可以接收原始的⼈类语⾔⽂本输⼊,并给出单词的基本形式、词性、公司名称、⼈名等,规范化和解释⽇期、时间和数字量,标记句⼦的结构在短语或单词依赖⽅⾯,并指出哪些名词短语指的是相同的实体。9、Pattern8.1kGitHubstars.注意:该库已经2年没有更新了Pattern是Python的web的挖掘⼯具包,它包含了:⽹络服务(⾕歌、推特、维基百科)、⽹络爬⾍和HTMLDOM解析器。它有⼏个⾃然语⾔处理模型:词性标注器、n-gram搜索、情感分析和WordNet。它实现了机器学习模型:向量空间模型、聚类、分类(KNN、SVM、感知器)。模式也可⽤于⽹络分析:图形中⼼性和可视化。10、TextBlob8kGitHubstars.TextBlob是⼀个⽤于处理⽂本数据的Python库。它提供了⼀个简单的API,⽤于深⼊研究常见的⾃然语⾔处理任务,例如词性标注、名词短语提取、情感分析、分类、翻译等。TextBlob站在NLTK和Pattern的基础上制作,并且可以很好地与两者配合使⽤。11、HuggingFaceTokenizers5.2kGitHubstars.该库提供了当今最常⽤的标记器的实现,重点是性能和通⽤性。12、Haystack3.8kGitHubstars.Haystack是⼀个端到端框架,能够为不同的搜索⽤例构建功能强⼤且可⽤于⽣产的管道。⽆论要执⾏问答还是语义⽂档搜索,都可以使⽤Haystack中最先进的NLP模型来提供独特的搜索体验并为⽤户提供使⽤⾃然语⾔进⾏查询的功能。Haystack以模块化⽅式构建,因此可以结合其他开源项⽬(如Huggingface的Transformers、Elasticsearch或Milvus)。13、SnipsNLU3.6kGitHubstars.注意:该库已经2年没有更新了SnipsNLU是⼀个可以从⽤⾃然语⾔编写的句⼦中提取结构化信息的Python库。每当⽤户使⽤⾃然语⾔与⼈⼯智能交互时,他们的⽂字都需要被翻译成机器可读的形式(向量)。SnipsNLU的NLU(⾃然语⾔理解)引擎⾸先检测⽤户的意图是什么(也就是意图),然后提取查询的参数(称为slots)。14、NLPArchitect2.8kGitHubstars.NLPArchitect是⼀个⽤于探索⽤于优化⾃然语⾔处理和⾃然语⾔理解神经⽹络的最先进的深度学习拓扑和技术的Python库。它允许在应⽤程序中轻松快速地集成NLP模型,并展⽰优化的模型。15、PyTorch-NLP2kGitHubstars.PyTorch-NLP扩展了PyTorch并提供基本的⽂本数据处理功能。16、Polyglot1.9kGitHubstars.Polyglot是⼀个⽀持⼤量多语⾔应⽤程序的⾃然语⾔管道:标记化(165种语⾔)、语⾔检测(196种语⾔)、命名实体识别(40种语⾔)、部分语⾳标记(16种语⾔)、情感分析(136种语⾔)、Word嵌⼊(137种语⾔)、形态分析(135种语⾔)和⾳译(69种语⾔)。但是该库的最新更新时间是3年前。17、TextAttack1.8kGitHubstars.TextAttack是⼀个⽤于NLP中的对抗性攻击、数据增强和模型训练的Python框架。18、WordForms513GitHubstars.Wordforms可以准确地⽣成⼀个英语单词的所有可能形式。它可以连接不同的词性,例如名词与形容词、形容词与副词、名词与动词等。19、Rosetta420GitHubstars.Rosetta是⼀个基于TensorFlow的隐私保护框架。它集成了主流的隐私保护计算技术,包括密码学、联邦学习和可信执⾏环境。Rosetta重⽤了TensorFlow的API,只需极少的代码更改,就可以将传统的TensorFlow代码转换为隐私保护的⽅式运⾏。必备基础库这⾥列出了⼀些并⾮特定于NLP但仍然经常⽤于NLP项⽬的数据科学库。20、scikit-learn48.6kGitHubstars.Scikit-learn(也称为sklearn)是Python编程语⾔的免费软件机器学习库。它具有各种分类、回归和聚类算法,包括⽀持向量机、随机森林、梯度提

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论