nlp开源库与开源数据集

nlp 评估数据集

GLUE : General Language Understanding Evaluation
CLUE :Chinese Language Understanding Evaluation
BLURB(Biomedical Language Understanding & Reasoning Evaluation)
BLURB(Biomedical Language Understanding & Reasoning Evaluation)

nlp 开源库

NLP库

以下是顶级库的列表,排序方式是在GitHub上的星数倒序。

Hugging Face Transformers
57.1k GitHub stars.

Transformers 提供了数千个预训练模型来执行不同形式的任务,例如文本、视觉和音频。这些模型可应用于文本(文本分类、信息提取、问答、摘要、翻译、文本生成,支持超过 100 种语言)、图像(图像分类、对象检测和分割)和音频(语音识别和音频分类 )。Transformer 模型还可以结合多种模式执行任务,例如表格问答、OCR、从扫描文档中提取信息、视频分类和视觉问答。

  1. spaCy

22.2k GitHub stars.

spaCy是 Python 和 Cython 中用于自然语言处理的免费开源库。它从一开始就设计用于生产环境。spaCy 带有预训练的管道,目前支持 60 多种语言的标记化和训练。它具有最先进的神经网络模型,可以用于标记、解析、命名实体识别、文本分类、并且使用 BERT 等预训练Transformers进行多任务学习,可以对模型进行 打包、部署和工作,方便生产环境的部署。spaCy 是商业开源软件,在 MIT 许可下发布。

FairSeq
15.1k GitHub stars.

Fairseq 是一个序列建模工具包,允许研究人员和开发人员为翻译、摘要、语言建模和其他文本生成任务训练自定义模型。它提供了各种序列建模论文的参考实现。

Gensim
12.8k GitHub stars.

Gensim 是一个 Python 库,用于主题建模、文档索引和大型语料库的相似性检索。目标受众是 NLP 和信息检索 (IR) 社区。Gensim 具有流行算法的高效多核实现,包括但不限于Latent Semantic Analysis (LSA/LSI/SVD)、Latent Dirichlet Allocation (LDA)、Random Projections (RP)、Hierarchical Dirichlet Process(HDP) 或 word2vec 深度学习等。

Flair
11.2k GitHub stars.

Flair 是一个强大的 NLP 库。Flair 的目标是将最先进的 NLP 模型应用于文本中,例如命名实体识别 (NER)、词性标注 (PoS)、对生物医学数据的特殊支持、语义消歧和分类。Flair 具有简单的界面,允许使用和组合不同的单词和文档嵌入,包括 Flair 嵌入、BERT 嵌入和 ELMo 嵌入。该框架直接构建在 PyTorch 上,可以轻松地训练自己的模型并使用 Flair 嵌入和类库来试验新方法。

  1. AllenNLP

10.8k GitHub stars.

AllenNLP是基于 PyTorch 构建的 NLP 研究库,使用开源协议为Apache 2.0 ,它包含用于在各种语言任务上开发最先进的深度学习模型并提供了广泛的现有模型实现集合,这些实现都是按照高标准设计,为进一步研究奠定了良好的基础。AllenNLP 提供了一种高级配置语言来实现 NLP 中的许多常见方法,例如transformer、多任务训练、视觉+语言任务、公平性和可解释性。这允许纯粹通过配置对广泛的任务进行实验,因此使用者可以专注于解决研究中的重要问题。

  1. NLTK

10.4k GitHub stars.

NLTK — Natural Language Toolkit — 是一套支持自然语言处理研究和开发的开源 Python 包、数据集和教程的集合。它为超过 50 个语料库和词汇资源(如 WordNet)提供易于使用的接口,以及一套用于分类、标记化、词干提取、标记、解析和语义推理的文本处理库。

  1. CoreNLP

8.3k GitHub stars.

斯坦福 CoreNLP 提供了一组用 Java 编写的自然语言分析工具。它可以接收原始的人类语言文本输入,并给出单词的基本形式、词性、公司名称、人名等,规范化和解释日期、时间和数字量,标记句子的结构 在短语或单词依赖方面,并指出哪些名词短语指的是相同的实体。

  1. Pattern

8.1k GitHub stars.

注意:该库已经2年没有更新了

Pattern 是 Python 的web的挖掘工具包,它包含了:网络服务(谷歌、推特、维基百科)、网络爬虫和 HTML DOM 解析器。它有几个自然语言处理模型:词性标注器、n-gram 搜索、情感分析和 WordNet。它实现了机器学习模型:向量空间模型、聚类、分类(KNN、SVM、感知器)。模式也可用于网络分析:图形中心性和可视化。

  1. TextBlob

8k GitHub stars.

TextBlob 是一个用于处理文本数据的 Python 库。它提供了一个简单的 API,用于深入研究常见的自然语言处理任务,例如词性标注、名词短语提取、情感分析、分类、翻译等。TextBlob 站在 NLTK 和 Pattern 的基础上制作,并且可以很好地与两者配合使用。

  1. Hugging Face Tokenizers

5.2k GitHub stars.

该库提供了当今最常用的标记器的实现,重点是性能和通用性。

Haystack
3.8k GitHub stars.

Haystack 是一个端到端框架,能够为不同的搜索用例构建功能强大且可用于生产的管道。无论要执行问答还是语义文档搜索,都可以使用 Haystack 中最先进的 NLP 模型来提供独特的搜索体验并为用户提供使用自然语言进行查询的功能。Haystack 以模块化方式构建,因此可以结合其他开源项目(如 Huggingface 的 Transformers、Elasticsearch 或 Milvus)。

  1. Snips NLU

3.6k GitHub stars.

注意:该库已经2年没有更新了

Snips NLU 是一个可以从用自然语言编写的句子中提取结构化信息的 Python 库。每当用户使用自然语言与人工智能交互时,他们的文字都需要被翻译成机器可读的形式(向量)。Snips NLU 的 NLU(自然语言理解)引擎首先检测用户的意图是什么(也就是意图),然后提取查询的参数(称为slots)。

  1. NLP Architect

2.8k GitHub stars.

NLP Architect 是一个用于探索用于优化自然语言处理和自然语言理解神经网络的最先进的深度学习拓扑和技术的Python 库。它允许在应用程序中轻松快速地集成 NLP 模型,并展示优化的模型。

  1. PyTorch-NLP

2k GitHub stars.

PyTorch-NLP 扩展了 PyTorch并提供基本的文本数据处理功能。

  1. Polyglot

1.9k GitHub stars.

Polyglot 是一个支持大量多语言应用程序的自然语言管道:标记化(165 种语言)、语言检测(196 种语言)、命名实体识别(40 种语言)、部分语音标记(16 种语言)、情感分析(136 种语言)、Word 嵌入(137 种语言)、形态分析(135 种语言)和音译(69 种语言)。

但是该库的最新更新时间是3年前。

  1. TextAttack

1.8k GitHub stars.

TextAttack 是一个用于 NLP 中的对抗性攻击、数据增强和模型训练 的Python 框架。

Word Forms
513 GitHub stars.

Word forms可以准确地生成一个英语单词的所有可能形式。它可以连接不同的词性,例如名词与形容词、形容词与副词、名词与动词等。

  1. Rosetta

420 GitHub stars.

Rosetta 是一个基于 TensorFlow 的隐私保护框架。它集成了主流的隐私保护计算技术,包括密码学、联邦学习和可信执行环境。Rosetta 重用了 TensorFlow 的 API,只需极少的代码更改,就可以将传统的 TensorFlow 代码转换为隐私保护的方式运行。

必备基础库

这里列出了一些并非特定于 NLP 但仍然经常用于 NLP 项目的数据科学库。

Scikit-learn
48.6k GitHub stars.

Scikit-learn(也称为 sklearn)是 Python 编程语言的免费软件机器学习库。它具有各种分类、回归和聚类算法,包括支持向量机、随机森林、梯度提升、k-means 和 DBSCAN,是建立在 Python 数值和科学库 NumPy 和 SciPy 之上的。

Pandas
32.4k GitHub stars.

Pandas 是一个提供了操作表格数据的Python 包。它已经成为在 Python 中进行实际的、真实的数据分析的基础模块。它可以被称作最强大、最灵活的开源数据分析/操作工具。

技术交流群邀请函

原文链接:https://blog.csdn.net/qq_33161208/article/details/122945411

开源数据集

中文 NLP 数据集搜索:https://www.cluebenchmarks.com/dataSet_search.html

在学习 NLP 的这条不归路上,我们总会发现大多数先进算法与优质示例代码都是用英文数据集。而当我们满怀希望地把模型迁移到中文世界时,缺少公开的优质数据集简直就是天堑。比如说最简单的语言模型与词嵌入模型,只需要一段段自然的中文文本就行了,然而实际上我们会发现好用的公开大型语料真的很少。

我们需要在 GitHub 等平台上找收集中文 NLP 数据集的各种项目,再根据需求进行选择。值得注意的是,很多国内中文数据集已经非常老了,它们的使用会比较麻烦,这时候就需要我们自行判断与试错了。

不过在本文中,我们将介绍一项新的中文 NLP 数据搜索项目,它可能是目前最全的中文 NLP 数据集信息收集项目。该项目收集了一百多条中文 NLP 数据信息,并以搜索的形式展示结果。我们只要键入关键词,或者数据集所属的领域等信息,就能找到对应的数据集。

每一条搜索结果都会展示数据集的基本信息、访问链接等关键信息,能帮助我们快速筛选数据集。因为每一个领域都能找到非常多的同类数据集,因此这些简述非常有意义。
如果读者想看看到底有哪些数据集,可以直接查看该搜索项目的 GitHub 地址,所有数据集的信息都在上面。

这可能是最全的中文 NLP 数据集合

本项目中的 NLP 数据集囊括了 NER、QA、情感分析、文本分类、文本分配、文本摘要、机器翻译、知识图谱、语料库以及阅读理解等 10 大类共 142 个数据集。具体而言,对于每一个数据集,项目作者都提供了数据集名称、更新时间、数据集提供者、说明、关键字、类别以及论文地址等几方面的信息。

项目地址:https://github.com/CLUEbenchmark/CLUEDatasetSearch

本项目中文 NLP 数据集分类。
情感分析

作为自然语言处理(NLP)的一种常见应用,情感分析特别适用于以提取文本情感内容为目的的分类方法中。本项目中介绍了 11 个情感分析数据集来源,其中包括 NLPCC 2013/2014、Weibo Emotions Corpus、之江杯电商评论观点挖掘大赛以及 2019 搜狐校园算法大赛数据集。

项目中部分情感分析中文数据集详情。*

文本分类

作为自然语言处理中最常用和最基础的应用,文本分类方面的数据集已经有很多。本项目中介绍了 19 个文本分类数据集来源,其中包括今日头条中文新闻(文本)分类、THUCNews 中文文本分类、2017 知乎看山杯机器学习挑战赛 以及中科大新闻分类语料库等。
项目中部分文本分类数据集详情。

原文链接:https://blog.csdn.net/mrjkzhangma/article/details/104929505

你可能感兴趣的:(自然语言处理,深度学习,人工智能)