向AI转型的程序员都关注了这个号👇👇👇
机器学习AI算法工程 公众号:datayx
Toolkits 综合NLP工具包
THULAC 中文词法分析工具包 by 清华 (C++/Java/Python)
NLPIR by 中科院 (Java)
LTP 语言技术平台 by 哈工大 (C++) pylyp LTP的python封装
FudanNLP by 复旦 (Java)
BaiduLac by 百度 Baidu's open-source lexical analysis tool for Chinese, including word segmentation, part-of-speech tagging & named entity recognition.
HanLP (Java)
FastNLP (Python) 一款轻量级的 NLP 处理套件。
SnowNLP (Python) Python library for processing Chinese text
YaYaNLP (Python) 纯python编写的中文自然语言处理包,取名于“牙牙学语”
小明NLP (Python) 轻量级中文自然语言处理工具
DeepNLP (Python) Deep Learning NLP Pipeline implemented on Tensorflow with pretrained Chinese models.
chinese_nlp (C++ & Python) Chinese Natural Language Processing tools and examples
lightNLP (Python) 基于Pytorch和torchtext的自然语言处理深度学习框架
Chinese-Annotator (Python) Annotator for Chinese Text Corpus 中文文本标注工具
Poplar (Typescript) A web-based annotation tool for natural language processing (NLP)
Jiagu (Python) Jiagu以BiLSTM等模型为基础,使用大规模语料训练而成。将提供中文分词、词性标注、命名实体识别、情感分析、知识图谱关系抽取、关键词抽取、文本摘要、新词发现等常用自然语言处理功能。
SmoothNLP (Python & Java) 专注于可解释的NLP技术
FoolNLTK (Python & Java) A Chinese Nature Language Toolkit
Popular NLP Toolkits for English/Multi-Language 常用的英文或支持多语言的NLP工具包
CoreNLP by Stanford (Java) A Java suite of core NLP tools.
Stanza by Stanford (Python) A Python NLP Library for Many Human Languages
NLTK (Python) Natural Language Toolkit
spaCy (Python) Industrial-Strength Natural Language Processing with a online course
textacy (Python) NLP, before and after spaCy
OpenNLP (Java) A machine learning based toolkit for the processing of natural language text.
gensim (Python) Gensim is a Python library for topic modelling, document indexing and similarity retrieval with large corpora.
Kashgari - Simple and powerful NLP framework, build your state-of-art model in 5 minutes for named entity recognition (NER), part-of-speech tagging (PoS) and text classification tasks. Includes BERT and word2vec embedding.
Chinese Word Segment 中文分词
Jieba 结巴中文分词 (Python及大量其它编程语言衍生) 做最好的 Python 中文分词组件
北大中文分词工具 (Python) 高准确度中文分词工具,简单易用,跟现有开源工具相比大幅提高了分词的准确率。
kcws 深度学习中文分词 (Python) BiLSTM+CRF与IDCNN+CRF
ID-CNN-CWS (Python) Iterated Dilated Convolutions for Chinese Word Segmentation
Genius 中文分词 (Python) Genius是一个开源的python中文分词组件,采用 CRF(Conditional Random Field)条件随机场算法。
loso 中文分词 (Python)
yaha "哑哈"中文分词 (Python)
ChineseWordSegmentation (Python) Chinese word segmentation algorithm without corpus(无需语料库的中文分词)
Go语言高性能分词 (Go) Go efficient text segmentation; support english, chinese, japanese and other.
Ansj中文分词 (java) 基于n-Gram+CRF+HMM的中文分词的java实现
Information Extraction 信息提取
MITIE (C++) library and tools for information extraction
Duckling (Haskell) Language, engine, and tooling for expressing, testing, and evaluating composable language rules on input strings.
IEPY (Python) IEPY is an open source tool for Information Extraction focused on Relation Extraction.
Snorkel A training data creation and management system focused on information extraction
Neural Relation Extraction implemented with LSTM in TensorFlow
A neural network model for Chinese named entity recognition
bert-chinese-ner 使用预训练语言模型BERT做中文NER
Information-Extraction-Chinese Chinese Named Entity Recognition with IDCNN/biLSTM+CRF, and Relation Extraction with biGRU+2ATT 中文实体识别与关系提取
Familia 百度出品的 A Toolkit for Industrial Topic Modeling
Text Classification All kinds of text classificaiton models and more with deep learning. 用知乎问答语聊作为测试数据。
ComplexEventExtraction 中文复合事件的概念与显式模式,包括条件事件、因果事件、顺承事件、反转事件等事件抽取,并形成事理图谱。
TextRank4ZH 从中文文本中自动提取关键词和摘要
QA & Chatbot 问答和聊天机器人
Rasa NLU (Python) turn natural language into structured data, a Chinese fork at Rasa NLU Chi
Rasa Core (Python) machine learning based dialogue engine for conversational software
Chatstack A Full Pipeline UI for building Chinese NLU System
Snips NLU (Python) Snips NLU is a Python library that allows to parse sentences written in natural language and extracts structured information.
DeepPavlov (Python) An open source library for building end-to-end dialog systems and training chatbots.
Chatscript Natural Language tool/dialog manager, a rule-based chatbot engine.
Chatterbot (Python) ChatterBot is a machine learning, conversational dialog engine for creating chat bots.
Chatbot (Python) 基於向量匹配的情境式聊天機器人
Tipask (PHP) 一款开放源码的PHP问答系统,基于Laravel框架开发,容易扩展,具有强大的负载能力和稳定性。
QuestionAnsweringSystem (Java) 一个Java实现的人机问答系统,能够自动分析问题并给出候选答案。
QA-Snake (Python) 基于多搜索引擎和深度学习技术的自动问答
使用TensorFlow实现的Sequence to Sequence的聊天机器人模型 (Python)
使用深度学习算法实现的中文阅读理解问答系统 (Python)
AnyQ by Baidu 主要包含面向FAQ集合的问答系统框架、文本语义匹配工具SimNet。
DuReader中文阅读理解baseline代码 (Python)
基于SmartQQ的自动机器人框架 (Python)
QASystemOnMedicalKG (Python) 以疾病为中心的一定规模医药领域知识图谱,并以该知识图谱完成自动问答与分析服务。
GPT2-chitchat (Python) 用于中文闲聊的GPT2模型
CDial-GPT (Python) 提供了一个大规模中文对话数据集,并提供了在此数据集上的中文对话预训练模型(中文GPT模型)
开放知识图谱OpenKG.cn
开放中文知识图谱的schema
大规模中文概念图谱CN-Probase 公众号介绍
大规模1.4亿中文知识图谱开源下载
农业知识图谱 农业领域的信息检索,命名实体识别,关系抽取,分类树构建,数据挖掘
CLDC中文语言资源联盟
中文 Wikipedia Dump
基于不同语料、不同模型(比如BERT、GPT)的中文预训练模型 中文预训练模型框架,支持不同语料、编码器、目标任务的预训练模型(from RUC and Tencent)
OpenCLaP 多领域开源中文预训练语言模型仓库 (from Tsinghua)
98年人民日报词性标注库@百度盘
搜狗20061127新闻语料(包含分类)@百度盘
UDChinese (for training spaCy POS)
中文word2vec模型
上百种预训练中文词向量
Tencent AI Lab Embedding Corpus for Chinese Words and Phrases
中文预训练BERT with Whole Word Masking
中文GPT2训练代码 可以写诗,新闻,小说,或是训练通用语言模型。
中文语言理解测评基准ChineseGLUE 包括代表性的数据集、基准(预训练)模型、语料库、排行榜。
中华新华字典数据库 包括歇后语,成语,词语,汉字。
Synonyms:中文近义词工具包 基于维基百科中文和word2vec训练的近义词库,封装为python包文件。
Chinese_conversation_sentiment A Chinese sentiment dataset may be useful for sentiment analysis.
中文突发事件语料库 Chinese Emergency Corpus
dgk_lost_conv 中文对白语料 chinese conversation corpus
用于训练中英文对话系统的语料库 Datasets for Training Chatbot System
八卦版問答中文語料
中文公开聊天语料库
中国股市公告信息爬取 通过python脚本从巨潮网络的服务器获取中国股市(sz,sh)的公告(上市公司和监管机构)
tushare财经数据接口 TuShare是一个免费、开源的python财经数据接口包。
金融文本数据集 SmoothNLP 金融文本数据集(公开) Public Financial Datasets for NLP Researches
保险行业语料库 [52nlp介绍Blog] OpenData in insurance area for Machine Learning Tasks
最全中华古诗词数据库 唐宋两朝近一万四千古诗人, 接近5.5万首唐诗加26万宋诗. 两宋时期1564位词人,21050首词。
DuReader中文阅读理解数据
中文语料小数据 包含了中文命名实体识别、中文关系识别、中文阅读理解等一些小量数据
Chinese-Literature-NER-RE-Dataset A Discourse-Level Named Entity Recognition and Relation Extraction Dataset for Chinese Literature Text
ChineseTextualInference 中文文本推断项目,包括88万文本蕴含中文文本蕴含数据集的翻译与构建,基于深度学习的文本蕴含判定模型构建.
大规模中文自然语言处理语料 维基百科(wiki2019zh),新闻语料(news2016zh),百科问答(baike2018qa)
中文人名语料库 中文姓名,姓氏,名字,称呼,日本人名,翻译人名,英文人名。
公司名、机构名语料库 公司简称,缩写,品牌词,企业名。
中文敏感词词库 敏感词过滤的几种实现+某1w词敏感词库
中文简称词库 A corpus of Chinese abbreviation, including negative full forms.
中文数据预处理材料 中文分词词典和中文停用词
漢語拆字字典
SentiBridge: 中文实体情感知识库 刻画人们如何描述某个实体,包含新闻、旅游、餐饮,共计30万对。
OpenCorpus A collection of freely available (Chinese) corpora.
ChineseNlpCorpus 情感/观点/评论 倾向性分析,中文命名实体识别,推荐系统
FinancialDatasets SmoothNLP 金融文本数据集(公开) Public Financial Datasets for NLP Researches Only
People's Daily & Children's Fairy Tale PD&CFT: A Chinese Reading Comprehension Dataset
哈工大 LCQMC 数据集
AFQMC 蚂蚁金融语义相似度数据集
OPPO 小布对话文本语义匹配数据集
谷歌 PAWS-X 数据集
北大中文文本复述数据集 PKU-Paraphrase-Bank
Chinese-STS-B 数据集
Chinese-MNLI 自然语言推理数据集
Chinese-SNLI 自然语言推理数据集
OCNLI 中文原版自然语言推理数据集
CINLID 中文成语语义推理数据集
以上数据集被汇总整理在 GitHub 仓库:https://github.com/zejunwang1/CSTS
语义相似度
哈工大 LCQMC 数据集
LCQMC 是哈尔滨工业大学在自然语言处理国际顶会 COLING2018 构建的问题语义匹配数据集,其目标是判断两个问题的语义是否相同。该数据集的数据预览如下:
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:http://icrc.hitsz.edu.cn/Article/show/171.html
AFQMC 蚂蚁金融语义相似度数据集
AFQMC(Ant Financial Question Matching Corpus)蚂蚁金融语义相似度数据集,用于问题相似度计算。即:给定客服里用户描述的两句话,用算法来判断是否表示了相同的语义。每一条数据有三个属性,分别是句子1,句子2,句子相似度标签。标签 "1" :表示两个句子的语义类似;"0":表示两个句子的语义不同。
原始数据为 json 格式,笔者将其处理成形如 LCQMC 三列的格式,每列之间使用 ' ' 分隔:
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:https://tianchi.aliyun.com/dataset/dataDetail?dataId=106411
OPPO 小布对话文本语义匹配数据集
该数据集通过对闲聊、智能客服、影音娱乐、信息查询等多领域真实用户交互语料进行用户信息脱敏、相似度筛选处理得到,数据主要特点是文本较短、非常口语化、存在文本高度相似而语义不同的难例。该数据集所有标签都有经过人工精标确认。
原始数据为 json 格式,笔者将其处理成形如 LCQMC 三列的格式,每列之间使用 ' ' 分隔:
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:https://tianchi.aliyun.com/competition/entrance/531851/introduction
谷歌 PAWS-X 数据集
谷歌发布的同义句识别数据集,中文部分包含了释义对和非释义对,即识别一对句子是否具有相同的释义(含义),特点是具有高度重叠词汇,重点考察模型对句法结构的理解能力。该数据集的数据预览如下:
每条数据包含4列,分别表示数据 id,sentence1,sentence2 和 label,每列之间使用 ' ' 分隔。
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:https://github.com/google-research-datasets/paws
北大中文文本复述数据集 PKU-Paraphrase-Bank
北大发布的中文文本复述语料库,每条数据包含两列,分别表示两个具有相同含义的句子,列与列之间使用 ' ' 分隔。该数据集一共有 509832 组句子对,平均每句 23.05 个词。
原始数据集链接:https://github.com/pkucoli/PKU-Paraphrase-Bank/
Chinese-STS-B 数据集
该数据集通过翻译加部分人工修正的方法,从英文原数据集生成,可以一定程度上缓解中文语义相似度计算数据集不够的问题。每条数据包含三列,分别表示 sentence1、sentence2 和相似等级,相似等级范围为 0~5,5 表示语义一致,0 表示语义不相关。
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:https://github.com/pluto-junzeng/CNSD
自然语言推理
Chinese-MNLI 自然语言推理数据集
该数据集来自于中文语言理解测评基准 CLUE benchmark(https://github.com/CLUEbenchmark/CLUE),数据内容来自于 fiction、telephone、travel、government、slate 等,通过对原始的英文 MNLI 和 XNLI 数据进行翻译得到。该数据集可用于判断给定的两个句子之间属于蕴涵、中立、矛盾关系。
原始的每条数据为 json 格式,包含三个属性:sentence1、sentence2 和 label 标签,其中 label 标签有三种:entailment、neutral、contradiction。笔者将原始数据转化成形如 LCQMC 三列的格式,并去除了极少部分标签为 "-" 的数据,处理后的数据预览如下:
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:https://storage.googleapis.com/cluebenchmark/tasks/cmnli_public.zip
Chinese-SNLI 自然语言推理数据集
该数据集通过翻译加人工修正的方法,从英文原数据集生成,可以一定程度上缓解中文自然语言推理数据集不够的问题。该数据集的格式和 Chinese-MNLI 一致,原始的每条数据为 json 格式,笔者将其转化成形如 LCQMC 三列的格式,处理后的数据预览如下:
训练集、验证集和测试集的数量统计如下表所示:
原始数据集链接:https://gitee.com/jiaodaxin/CNSD
OCNLI 中文原版自然语言推理数据集
原生中文自然语言推理数据集 OCNLI,是第一个非翻译的、使用原生汉语的大型中文自然语言推理数据集。该数据集来自于中文语言理解测评基准 CLUE benchmark,原始的每条数据为 json 格式:
笔者将原始数据转化成形如 LCQMC 三列的格式,并去除了极少部分标签为 "null" 的数据,三列分别表示 sentence1、sentence2 和 label 标签。处理后的数据预览如下:
训练集、验证集和测试集的数量统计如下表所示:
数据集原始链接:https://storage.googleapis.com/cluebenchmark/tasks/ocnli_public.zip
CINLID 中文成语语义推理数据集
中文成语语义推理数据集(Chinese Idioms Natural Language Inference Dataset)收集了 91,247 个由人工撰写的成语对(含少量歇后语、俗语等短文本),通过人工标注的方式进行平衡分类,标签为 entailment、contradiction 和 neutral,支持自然语言推理(NLI)的任务。
原始数据集以 json 的形式存在,每一行即一条数据,每一条数据包含 sentence1、sentence2、和 label 三个字段,label 的取值范围为 entailment、contradiction 和 neutral。
笔者将原始数据转化成形如 LCQMC 三列的格式,预览如下:
该数据可用于:
测试语义模型的语义理解能力;
用于微调预训练模型以获得良好的语句表示,能较好的捕捉语义相关性。