NOTE 本目录是PaddlePaddle 1.8版本的PaddleNLP模型库,目前已全面升级至PaddlePaddle 2.0版本。欢迎体验PaddleNLP 2.0
PaddleNLP是基于飞桨 PaddlePaddle深度学习框架开发的自然语言处理(NLP)工具,算法,模型和数据的开源项目。百度在NLP领域十几年的深厚积淀为PaddleNLP提供了强大的核心动力,使用PaddleNLP,您可以得到:
-
丰富而全面的NLP任务支持:
-
稳定可靠的NLP模型和强大的预训练参数:
- PaddleNLP集成了百度内部广泛使用的NLP工具模型,为您提供了稳定可靠的NLP算法解决方案。基于百亿级数据的预训练参数和丰富的预训练模型,助您轻松提高模型效果,为您的NLP业务注入强大动力。
-
持续改进和技术支持,零基础搭建NLP应用:
- PaddleNLP为您提供持续的技术支持和模型算法更新,为您的NLP业务保驾护航。
- 克隆代码库到本地
git clone https://github.com/PaddlePaddle/PaddleNLP.git
- 进入到特定的子目录中查看代码和运行任务(如情感分析)
cd legacy/sentiment_classification
任务场景 | 对应项目/目录 | 简介 |
---|---|---|
中文分词,词性标注,命名实体识别🔥 | LAC | LAC,全称为Lexical Analysis of Chinese,是百度内部广泛使用的中文处理工具,功能涵盖从中文分词,词性标注,命名实体识别等常见中文处理任务。 |
词向量(word2vec) | word2vec | 提供单机多卡,多机等分布式训练中文词向量能力,支持主流词向量模型(skip-gram,cbow等),可以快速使用自定义数据训练词向量模型。 |
语言模型 | Language_model | 基于循环神经网络(RNN)的经典神经语言模型(neural language model)。 |
情感分类🔥 | Senta,EmotionDetection | Senta(Sentiment Classification,简称Senta)和EmotionDetection两个项目分别提供了面向通用场景和人机对话场景专用的情感倾向性分析模型。 |
文本相似度计算🔥 | SimNet | SimNet,又称为Similarity Net,为您提供高效可靠的文本相似度计算工具和预训练模型。 |
语义表示🔥 | pretrain_language_models | 集成了ELMO,BERT,ERNIE 1.0,ERNIE 2.0,XLNet等热门中英文预训练模型。 |
文本生成 | seq2seq | seq2seq为您提供了一些列经典文本生成模型案例,如vanilla seq2seq,seq2seq with attention,variational seq2seq模型等。 |
阅读理解 | machine_reading_comprehension | Paddle Machine Reading Comprehension,集合了百度在阅读理解领域相关的模型,工具,开源数据等一系列工作。包括DuReader (百度开源的基于真实搜索用户行为的中文大规模阅读理解数据集),KT-Net (结合知识的阅读理解模型,SQuAD以及ReCoRD曾排名第一), D-Net (预训练-微调框架,在EMNLP2019 MRQA国际阅读理解评测获得第一),等。 |
对话系统 | dialogue_system | 包括:1)DGU(Dialogue General Understanding,通用对话理解模型)覆盖了包括检索式聊天系统中context-response matching任务和任务完成型对话系统中意图识别,槽位解析,状态追踪等常见对话系统任务,在6项国际公开数据集中都获得了最佳效果。 2) knowledge-driven dialogue:百度开源的知识驱动的开放领域对话数据集,发表于ACL2019。 3)ADEM(Auto Dialogue Evaluation Model):对话自动评估模型,可用于自动评估不同对话生成模型的回复质量。 |
机器翻译 | machine_translation | 全称为Paddle Machine Translation,基于Transformer的经典机器翻译模型。 |
.
├── machine_translation # 机器翻译相关代码,数据,预训练模型
├── dialogue_system # 对话系统相关代码,数据,预训练模型
├── machcine_reading_comprehension # 阅读理解相关代码,数据,预训练模型
├── pretrain_language_models # 语言表示工具箱
├── language_model # 语言模型
├── lexical_analysis # LAC词法分析
├── shared_modules/models # 共享网络
│ ├── __init__.py
│ ├── classification
│ ├── dialogue_model_toolkit
│ ├── language_model
│ ├── matching
│ ├── neural_machine_translation
│ ├── reading_comprehension
│ ├── representation
│ ├── sequence_labeling
│ └── transformer_encoder.py
├── shared_modules/preprocess # 共享文本预处理工具
│ ├── __init__.py
│ ├── ernie
│ ├── padding.py
│ └── tokenizer
├── sentiment_classification # Senta文本情感分析
├── similarity_net # SimNet短文本语义匹配
其中,除了 models
和 preprocess
分别是共享的模型集合与共享的数据预处理流程之外,其它目录包含的都是相互独立的任务,可以直接进入这些目录运行任务。