新手上路 2小时前
主楼

研究摘要与趋势

著名的 NLP 研究实验室

教程

阅读内容

通用机器学习
  • 机器学习入门 - 来自 Google 高级创意工程师的讲解,适合工程师和高管阅读
  • AI Playbook - a16z AI playbook 是一个很好的链接,可以转发给您的经理或用于您的演示文稿内容
  • Ruder's Blog by Sebastian Ruder 用于评论 NLP 研究的最佳成果
  • 如何标记数据 指南,用于管理更大的语言标注项目
  • 取决于定义 博客文章集合,涵盖广泛的 NLP 主题,并包含详细的实现说明
NLP 入门和指南
博客和新闻简报

视频和在线课程

材料可以在这里 找到。
  • 应用自然语言处理 - 来自 IIT Madras 的讲座系列,从基础知识到自动编码器和所有内容。这门课程的 GitHub Notebook 也可以在这里找到。
  • DeepLearning.AI 自然语言处理专项课程 - 4 门课程组成的专项课程,涵盖情感分析、词嵌入、RNN、LSTM、注意力机制以及 Transformer 模型(如 BERT 和 T5)等,用于机器翻译和摘要等任务。

书籍

  • Node.js 和 Javascript - 用于自然语言处理的 Node.js 库
  • Twitter-text - Twitter 文本处理库的 JavaScript 实现
  • Knwl.js - JS 中的自然语言处理器
  • Retext - 用于分析和操作自然语言的扩展系统
  • NLP Compromise - 浏览器中的自然语言处理
  • Natural - node 的通用自然语言功能
  • Poplar - 一个用于自然语言处理(NLP)的基于网络的标注工具
  • NLP.js - 用于构建机器人的 NLP 库
  • node-question-answering - 基于 Node.js 的 DistilBERT,快速且生产就绪的问答系统
  • Python - Python NLP 库
  • sentimental-onix 使用 onnx 为 spacy 提供情感模型
  • TextAttack - NLP 中的对抗攻击、对抗训练和数据增强
  • TextBlob - 提供一致的 API 用于处理常见的自然语言处理(NLP)任务。站在Natural Language Toolkit (NLTK)Pattern这些巨人的肩膀上,并且与两者都配合良好 :+1:
  • spaCy - 使用 Python 和 Cython 的工业级 NLP :+1:
  • Speedster - 自动应用 SOTA 优化技术,以在您的硬件上实现最大推理加速
  • textacy - 基于 spaCy 构建的高级 NLP
  • gensim - 用于从纯文本进行无监督语义建模的 Python 库 :+1:
  • scattertext - 用于生成语料库之间语言差异的 d3 可视化的 Python 库
  • GluonNLP - 一个用于自然语言处理的深度学习工具包,基于 MXNet/Gluon 构建,用于在广泛的自然语言处理任务上研究和部署最先进的模型。
  • AllenNLP - 一个基于 PyTorch 构建的自然语言处理研究库,用于在各种语言任务上开发最先进的深度学习模型。
  • PyTorch-NLP - 一个为快速原型设计而设计的研究工具包,具有更好的数据加载器、词向量加载器、神经网络层表示以及常见的自然语言处理指标,如 BLEU
  • Rosetta - 文本处理工具和包装器(例如 Vowpal Wabbit)
  • PyNLPl - Python 自然语言处理库。通用的 Python NLP 库,处理一些特定格式,如 ARPA 语言模型、Moses 短语表、GIZA++对齐。
  • foliapy - 用于处理FoLiA的 Python 库,FoLiA 是一种用于语言标注的 XML 格式。
  • PySS3 - 实现了一种名为 SS3 的新型白盒机器学习模型的 Python 包,用于文本分类。由于 SS3 具有可视化解释其推理的能力,该包还附带易于使用的交互式可视化工具([在线演示](http://tworld.io/ss3/))。
  • jPTDP - 用于联合词性标注(POS)和依存句法分析的工具包。jPTDP 为 40 多种语言提供预训练模型。
  • BigARTM - 一个用于主题建模的快速库
  • Snips NLU - 一个用于意图解析的生产就绪库
  • Chazutsu - 一个用于下载和解析标准 NLP 研究数据集的库
  • Word Forms - Word Forms 可以准确生成英语单词的所有可能形式
  • 多语言潜在狄利克雷分配(LDA) - 一个多语言且可扩展的文档聚类流程
  • 自然语言工具包(NLTK) - 一个包含各种 NLP 功能的库,支持超过 50 种语料库。
  • NLP 架构师 - 一个用于探索 NLP 和 NLU 最先进的深度学习拓扑结构和技术的库。
  • Flair - 一个基于 PyTorch 构建的非常简单的最先进的多语言 NLP 框架。包括 BERT、ELMo 和 Flair 嵌入。
  • Kashgari - 简单的 Keras 驱动的多语言 NLP 框架,允许您在 5 分钟内构建用于命名实体识别 (NER)、词性标注 (PoS) 和文本分类任务的模式。包含 BERT 和 word2vec 嵌入。
  • FARM - 快速且简单的 NLP 迁移学习。为行业收获语言模型。专注于问答。
  • Haystack - 用于构建自然语言搜索界面的端到端 Python 框架,用于数据。利用 Transformer 和 NLP 的最新技术。支持 DPR、Elasticsearch、HuggingFace 的 Modelhub 等!
  • PraisonAI - 支持 100 多个 LLM 的多 AI 代理框架,通过 LiteLLM、MCP 集成、代理工作流程和内置内存,用于 NLP 任务。
  • Rita DSL - 一种 DSL,松散地基于RUTA on Apache UIMA。允许定义语言模式(基于规则的 NLP),然后将其转换为spaCy,或者如果你更喜欢较少的功能和轻量级 - 正则表达式模式。
  • Transformers - 用于 TensorFlow 2.0 和 PyTorch 的自然语言处理。
  • Tokenizers - 为研究和生产优化的分词器。
  • fairSeq Facebook AI Research 在 PyTorch 中实现的 SOTA seq2seq 模型。
  • corex_topic - 基于极小领域知识的层次主题模型
  • Sockeye - 驱动 Amazon Translate 的神经机器翻译 (NMT) 工具包。
  • DL Translate - 基于 transformers 和 Facebook 的 mBART Large 的 50 种语言深度学习翻译库。
  • Jury - 提供多种自动化指标评估 NLP 模型输出的工具。
  • python-ucto - 基于 Unicode 的正规表达式分词器,适用于多种语言。Python 绑定到 C++库,支持FoLiA 格式
  • Pearmut - 多语言 NLP 任务的标注工具,如机器翻译。
  • C++ - C++库
  • InsNet - 用于构建无需填充的动态批处理实例依赖 NLP 模型的神经网络库。
  • MIT Information Extraction Toolkit - C、C++和 Python 工具,用于命名实体识别和关系抽取
  • CRF++ - 条件随机场(CRFs)的开源实现,用于序列数据的分词/标注及其他自然语言处理任务。
  • CRFsuite - 条件随机场(CRFs)的实现,用于序列数据的标注。
  • BLLIP Parser - BLLIP 自然语言解析器(也称为 Charniak-Johnson 解析器)
  • colibri-core - C++库,命令行工具和 Python 绑定,用于快速且内存高效地提取和处理基本语言结构,如 n-gram 和 skipgram。
  • ucto - 基于 Unicode 感知的正则表达式的多语言分词器。工具和 C++库。支持 FoLiA 格式。
  • libfolia - 用于FoLiA 格式的 C++库。
  • frog - 为荷兰语开发的基于内存的 NLP 套件:词性标注器,词元化器,依存句法分析器,命名实体识别,浅层句法分析器,形态分析器。
  • MeTA - MeTA : ModErn Text Analysis 是一个 C++ 数据科学工具包,用于促进挖掘大型文本数据。
  • Mecab (Japanese)
  • Moses
  • StarSpace - 来自 Facebook 的一个库,用于创建词级、段落级、文档级嵌入以及文本分类
  • QSMM - 自适应概率自上而下和自下而上解析器
  • Java - Java NLP 库
  • Stanford NLP
  • OpenNLP
  • NLP4J
  • Word2vec in Java
  • ReVerb Web-Scale Open Information Extraction
  • OpenRegex An efficient and flexible token-based regular expression language and engine.
  • CogcompNLP - 由伊利诺伊大学认知计算小组开发的核库。
  • MALLET - 机器学习语言工具包 - 用于统计自然语言处理、文档分类、聚类、主题建模、信息提取以及其他文本机器学习应用的软件包。
  • RDRPOSTagger - 一个强大的词性标注工具包(支持 Java 和 Python),并提供 40 多种语言的预训练模型。
  • Kotlin - Kotlin NLP 库
  • Lingua 一个适用于 Kotlin 和 Java 的语言检测库,适用于长文本和短文本
  • Kotidgy — 基于索引的文本数据生成器,用 Kotlin 编写
  • Scala - Scala NLP 库
  • Saul - 用于开发 NLP 系统的库,包括内置模块如 SRL、POS 等
  • ATR4S - 具备最先进自动术语识别方法的工具包。
  • tm - 基于正则化多语言PLSA的主题模型实现。
  • word2vec-scala - word2vec 模型的 Scala 接口;包含向量操作,如词距离和词类比。
  • Epic - Epic 是一个用 Scala 编写的高性能统计解析器,以及一个用于构建复杂结构预测模型的框架。
  • Spark NLP - Spark NLP 是一个基于 Apache Spark ML 构建的自然语言处理库,为机器学习管道提供简单、高效且准确的 NLP 注释,易于在分布式环境中扩展。
  • R - R NLP 库
  • text2vec - R 中的快速向量化、主题建模、距离和 GloVe 词嵌入。
  • wordVectors - 一个用于创建和探索 word2vec 和其他词嵌入模型的 R 包。
  • RMallet - 用于与 Java 机器学习工具 MALLET 进行交互的 R 包
  • dfr-browser - 在网络浏览器中创建 d3 可视化,用于浏览文本的主题模型。
  • dfrtopics - 用于探索文本主题模型的 R 包。
  • sentiment_classifier - 使用词义消歧和 WordNet 读取器进行情感分类。
  • jProcessing - 日语自然语言处理库,具有日语情感分类功能
  • corporaexplorer - 用于动态探索文本集合的 R 包
  • tidytext - 使用 tidy 工具进行文本挖掘
  • spacyr - spaCy NLP 的 R 语言封装
  • CRAN 任务视图:自然语言处理
  • Clojure
  • Clojure-openNLP - Clojure 中的自然语言处理(opennlp)
  • Infections-clj - Clojure 和 ClojureScript 的 Rails 式变形库
  • postagga - 一个用于 Clojure 和 ClojureScript 的自然语言解析库
  • Ruby
  • Kevin Dias 的自然语言处理(NLP)Ruby 库、工具和软件集合
  • 用 Ruby 实现的实用自然语言处理
  • Rust
  • adk-rust - 生产就绪的 AI 代理开发套件,具有模型无关的设计(Gemini、OpenAI、Anthropic),多种代理类型,以及 MCP 支持
  • whatlang — 基于三元组的自然语言识别库
  • snips-nlu-rs - 用于意图解析的生产就绪库
  • rust-bert - 即用型 NLP 流程和基于 Transformer 的模型
  • NLP++ - NLP++语言
  • VSCode Language Extension - VSCode 的 NLP++语言扩展
  • nlp-engine - NLP++引擎,可在 Linux 上运行 NLP++代码,包括完整的英语解析器
  • VisualText - NLP++语言的官方网站
  • NLP++ Wiki - NLP++语言的维基条目
  • Julia
  • CorpusLoaders - 用于各种 NLP 语料库的多种加载器
  • Languages - 用于处理人类语言的软件包
  • TextAnalysis - 用于文本分析的 Julia 软件包
  • TextModels - 基于神经网络的自然语言处理模型
  • WordTokenizers - 用于自然语言处理和其他相关任务的 高性能分词器
  • Word2Vec - Julia 的 word2vec 接口

服务

具有 NER、主题标记等高级功能的 NLP API
  • Vedika API - 具有多智能体群智能的 AI 驱动印度教占星术 API
  • Wit-ai - 用于应用程序和设备的自然语言界面
  • IBM Watson's Natural Language Understanding - API 和 Github 演示
  • Amazon Comprehend - NLP 和 ML 套件涵盖大多数常见任务,如命名实体识别、标签和情感分析
  • Google Cloud Natural Language API - 语法分析、命名实体识别、情感分析以及内容标签,至少支持 9 种语言,包括英语和中文(简体和繁体)
  • ParallelDots - 高级文本分析 API 服务,范围从情感分析到意图分析
  • Microsoft Cognitive Service
  • TextRazor
  • Rosette
  • Textalytic - 浏览器中的自然语言处理,提供情感分析、命名实体提取、词性标注、词频统计、主题建模、词云等功能
  • NLP Cloud - 通过 RESTful API 提供 SpaCy NLP 模型(包括自定义和预训练模型),用于命名实体识别(NER)、词性标注等
  • Cloudmersive - 统一且免费的 NLP API,执行语音标注、文本改写、语言翻译/检测和句子解析等操作

注释工具

  • GATE - 通用架构与文本工程是一个拥有 15 年以上历史的免费开源项目
  • Anafora 是一个免费的、开源的基于网络的原始文本标注工具
  • brat - brat 快速标注工具是一个用于协作文本标注的在线环境
  • doccano - doccano 是免费的、开源的,并提供文本分类、序列标注和序列到序列的标注功能
  • INCEpTION - 一个提供智能辅助和知识管理的语义标注平台
  • tagtog , 以团队为中心的网页工具,用于查找、创建、维护和共享数据集 - 费用$
  • prodigy 是一个基于主动学习的标注工具,费用$
  • LightTag - 为团队提供托管和管理的文本标注工具,费用$
  • rstWeb - 开源本地或在线话语树标注工具
  • GitDox - 开源服务器标注工具,具有 GitHub 版本控制和 XML 数据及协作电子表格网格的验证功能
  • Label Studio - 针对团队的托管和管理文本标注工具,免费增值模式,费用为$
  • Datasaur 支持个人或团队进行多种 NLP 任务,免费增值模式
  • Konfuzio - 团队优先托管和本地文本、图像和 PDF 标注工具,由主动学习驱动,免费增值模式,费用为$
  • UBIAI - 适用于团队的易于使用的文本标注工具,拥有最全面的自动标注功能。支持命名实体识别(NER)、关系和文档分类,以及用于发票标注的 OCR 标注,售价为
  • Shoonya - Shoonya 是一个免费且开源的数据标注平台,具有广泛的组织和工作空间级别管理系统。Shoonya 对数据类型无关,可用于团队大规模地标注数据,并具有不同级别的验证阶段。
  • Annotation Lab - 免费端到端无代码平台,用于文本标注和深度学习模型训练/调优。开箱即用支持命名实体识别、分类、关系提取和断言状态 Spark NLP 模型。对用户、团队、项目和文档提供无限支持。非自由软件。
  • FLAT - FLAT 是一个基于网络的语言学标注环境,围绕 FoLiA 格式 构建,FoLiA 是一种丰富的基于 XML 的语言学标注格式。免费且开源。

技术

文本嵌入

词嵌入

基于句子和语言模型的词嵌入

问答和知识提取

数据集

  • nlp-datasets 优秀的 NLP 数据集集合
  • gensim-data - 预训练 NLP 模型和 NLP 语料库的数据存储库。
  • tiny_qa_benchmark_pp - 微型多语言 NLP 问答数据集存储库和生成您自己的合成副本的库。

多语言 NLP 框架

  • UDPipe 是一个可训练的管道,用于对 Universal Treebanks 和其他 CoNLL-U 文件进行分词、词性标注、词元提取和句法分析。主要用 C++ 编写,为多语言 NLP 处理提供快速可靠的解决方案。
  • NLP-Cube :自然语言处理管道 - 句子分割、分词、词元提取、词性标注和依存句法分析。新平台,用 Python 和 Dynet 2.0 编写。提供独立(CLI/Python 绑定)和服务器功能(REST API)。
  • UralicNLP 是一个 NLP 库,主要用于许多濒危的乌拉尔语系语言,如萨米语、莫尔多瓦语、马里语、科米语等。也支持一些非濒危语言,如芬兰语,以及非乌拉尔语系语言,如瑞典语和阿拉伯语。UralicNLP 可以进行形态分析、生成、词元提取和消歧。

韩国的 NLP

  • KoNLPy - 用于韩语自然语言处理的 Python 包。
  • Mecab (韩语) - 用于韩语 NLP 的 C++ 库
  • KoalaNLP - 用于韩语自然语言处理的 Scala 库。
  • KoNLP - 用于韩语自然语言处理的 R 包

博客和教程

数据集

阿拉伯语中的 NLP

  • goarabic - 用于阿拉伯文文本处理的 Go 包
  • jsastem - 用于阿拉伯语的词干提取的 JavaScript
  • PyArabic - 用于阿拉伯语的 Python 库
  • RFTokenizer - 可训练的 Python 分词器,用于阿拉伯语、希伯来语和科普特语

数据集

中文自然语言处理

  • jieba - 用于中文分词的 Python 包
  • SnowNLP - 用于中文自然语言处理的 Python 包
  • FudanNLP - 用于中文文本处理的 Java 库
  • HanLP - 多语言 NLP 库

文集

  • funNLP - 主要面向中文的 NLP 工具和资源集合

德语中的自然语言处理

  • German-NLP - 精选的开源现成资源和工具列表,特别关注德语

波兰语中的自然语言处理

  • Polish-NLP - 专注于波兰语自然语言处理(NLP)的资源精选列表。模型、工具、数据集。

西班牙语中的自然语言处理

  • spanlp - 用于检测、审查和清理西班牙语文本中脏话、粗俗语、仇恨言论、种族主义、排外主义和欺凌的 Python 库。它包含 21 个西班牙语国家的数据。

数据

词与句嵌入

印地语中的自然语言处理

数据、语料库和树库

需要登录/访问的语料库/数据集可以通过邮件获取

语言模型和词嵌入

库和工具

泰国的 NLP

  • PyThaiNLP - Python 中的泰语 NLP 包
  • JTCC - Java 中的字符簇库
  • CutKum - 使用 TensorFlow 进行深度学习的词段切分
  • Thai Language Toolkit - 基于 Wirote Aroonmanakun 2002 年的论文,包含数据集
  • SynThai - 使用 Python 进行词段切分和词性标注的深度学习工具

数据

丹麦语的自然语言处理

越南语 NLP

  • underthesea - 越南 NLP 工具包
  • vn.vitk - 一个越南文本处理工具包
  • VnCoreNLP - 一个越南自然语言处理工具包
  • PhoBERT - 越南预训练语言模型
  • pyvi - Python 越南语核心 NLP 工具包
  • VieNeu-TTS - 一种先进的设备端越南语文本转语音系统,支持即时语音克隆。

数据

  • Vietnamese treebank - 10,000 个用于依存句法分析的句子
  • BKTreeBank - 一个越南语依存树库
  • UD_Vietnamese - 越南语通用依存句法树库
  • VIVOS - 一个包含 15 小时由 AILab 录音的自由越南语音语料库
  • VNTQcorpus(big).txt - 1.75 million sentences in news
  • ViText2SQL - 越南语文本到 SQL 语义解析数据集(EMNLP-2020 发现)
  • EVB Corpus - 2000 万词汇(20,000,000 words),来自 15 本双语书籍、100 篇平行英语-越南语/越南语-英语文本、250 篇平行法律和法规文本、5000 篇新闻报道和 2000 条电影字幕。

荷兰语 NLP

  • python-frog - Frog 的 Python 绑定,Frog 是用于荷兰语的 NLP 套件。(词性标注、词元化、依存句法分析、命名实体识别)
  • SimpleNLG_NL - 用于荷兰语自然语言生成的荷兰语表面实现器,基于英语和法语的 SimpleNLG 实现。
  • Alpino - 荷兰依赖句法分析器(也进行词性标注和词元化)。
  • Kaldi NL - 基于 Kaldi 的荷兰语音识别模型。
  • spaCy - 荷兰模型可用。- 使用 Python 和 Cython 的工业级 NLP 工具。

印度尼西亚的 NLP

数据集

库与嵌入

尼泊尔语中的自然语言处理

数据集

波斯语中的自然语言处理

  • Hazm - 波斯语自然语言处理工具包。
  • Parsivar : 用于波斯语的语言处理工具包
  • Perke : Perke 是一个用于波斯语的 Python 关键词提取包。它提供了一个端到端的关键词提取流程,其中每个组件都可以轻松地修改或扩展以开发新模型。
  • Perstem : 波斯语词干提取器、形态分析器、转写器和部分词性标注器
  • ParsiAnalyzer : Elasticsearch 的波斯语分析器
  • virastar : 清理波斯语文本!

数据集

  • Bijankhan Corpus : Bijankhan corpus 是一个标注语料库,适用于波斯语(Farsi)的自然语言处理研究。这个语料库收集自日常新闻和普通文本。在这个语料库中,所有文档都按不同主题分类,如政治、文化等。总共有 4300 个不同主题。Bijankhan 语料库包含约 260 万手动标注的单词,其标签集包含 40 个波斯语词性标签。
  • Uppsala Persian Corpus (UPC) : Uppsala Persian Corpus (UPC)是一个大型、免费提供的波斯语语料库。该语料库是 Bijankhan 语料库的修改版本,增加了句子分割和一致的标记化,包含 2,704,028 个标记,并标注了 31 个词性标签。词性标签及其解释列在这个表格中。
  • 大规模俗语波斯语 :大规模俗语波斯语数据集(LSCP)在一个语义分类法中分层组织,该分类法专注于将多任务非正式波斯语言理解作为一个综合问题。LSCP 包含来自 2700 万条非正式波斯推文的 1.2 亿个句子,其中包含句法注释中的依赖关系、词性标签、情感极性和原始波斯句子的自动翻译(英语(EN)、德语(DE)、捷克语(CS)、意大利语(IT)和印地语(HI)口语)。了解更多关于此项目的信息,请访问LSCP 网页
  • ArmanPersoNERCorpus :该数据集总共包含 250,015 个标记和 7,682 个波斯句子。它分为 3 个部分,依次用作训练集和测试集。每个文件每行包含一个标记及其手动标注的命名实体标签。每个句子用换行符分隔。NER 标签采用 IOB 格式。
  • FarsiYar PersianNER :该数据集基于Persian Wikipedia Corpus,包含约 2500 万个标记和约 100 万句波斯语句子。NER 标签采用 IOB 格式。超过 1000 名志愿者通过网页面板或安卓应用为该数据集贡献了标签改进。他们每两周发布一次更新标签。
  • PERLEX :首个用于关系抽取的波斯语数据集,是“Semeval-2010-Task-8”数据集的专家翻译版本。相关出版物链接。
  • Persian Syntactic Dependency Treebank :该树库免费提供非商业用途。商业用途请联系我们。标注句数为 29,982 句,包括波斯语价值词汇中几乎所有动词的样本。
  • Uppsala Persian Dependency Treebank (UPDT) :基于依存关系的句法标注语料库。
  • Hamshahri : Hamshahri 文集是一个标准的可靠波斯语文本集合,曾在 2008 年和 2009 年的跨语言评估论坛(CLEF)期间用于评估波斯语信息检索系统。

乌克兰的自然语言处理

  • awesome-ukrainian-nlp - 一个精选的乌克兰自然语言处理数据集、模型等列表。
  • UkrainianLT - 另一个精选列表,专注于机器翻译和语音处理。

匈牙利语中的自然语言处理

葡萄牙语中的自然语言处理

  • Portuguese-nlp - 一个专注于葡萄牙语的资源和工具列表。

其他语言

  • 俄语:pymorphy2 - 一个优秀的俄语词性标注器
  • 亚洲语言:泰语、老挝语、中文、日语和韩语 ICU Tokenizer 在 ElasticSearch 中的实现
  • 古代语言:CLTK :古典语言工具包是一个用于在古代语言中进行自然语言处理的 Python 库和文本集合
  • 希伯来语:NLPH_Resources - 一个用于希伯来语自然语言处理的论文、语料库和语言资源集合
😀 😊 😵‍💫 😡 🤝 🙏 👍 👎 ❤️