文本分类(三)
Github优秀文本分类项目解析(基于预训练语言模型,如:Bert、XLNet、AlBert等)。
CoreJT
中科院自动化所在读直博生,感兴趣的研究方向:文本分类、情感分析、机器阅读理解与问答系统以及对话系统。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
文本分类(三) | (6) 番外篇(预训练语言模型的另一种使用方式)
完整项目(番外篇)本篇博客也是对Github优秀文本分类项目的解析,该文本分类项目,主要基于预训练语言模型,包括bert、xlnet、bert/xlnet + CNN/GRU/LSTM、Albert等,使用PyTorch实现。项目其实提供了一种预训练语言模型的通用方法,可以将本项目扩展为使用任意的预训练语言模型(包括:albert、xlnet、roberta,t5,gpt等,以及他们与各种...原创 2020-01-31 15:05:38 · 8190 阅读 · 1 评论 -
文本分类(三) | (5) 训练、验证以及测试
完整项目最后,介绍一下模型的训练、验证以及测试流程。目录1. 训练2. 验证3. 测试1. 训练def train(config, model, train_iter, dev_iter, test_iter): start_time = time.time() model.train()#训练模式 param_optimizer = list...原创 2020-01-29 15:10:55 · 3331 阅读 · 3 评论 -
文本分类(三) | (4)模型及其配置的定义(基于预训练语言模型)
完整项目本篇博客,主要介绍各个模型的模块定义,包括模型本身的定义以及模型对应的配置(超参数)的定义,二者在一个模块文件中。目录1. bert2. bert+CNN3. bert+RNN4. bert+RCNN5. bert+DPCNN6. ERNIE1. bert配置类class Config(object): """配置参...原创 2020-01-29 14:54:01 · 3388 阅读 · 6 评论 -
文本分类(三) | (3) 数据预处理
完整项目本篇博客主要介绍一下数据预处理,包括构建数据集和迭代器。由于预训练语言模型有相应的词表文件,所以不需要手动构建词典,不过在预处理阶段,需要指明输入序列的填充部分和非填充部分。目录1.构建数据集2. 构建迭代器1.构建数据集PAD, CLS = '[PAD]', '[CLS]' # padding符号, bert中综合信息符号def bui...原创 2020-01-29 13:50:58 · 3072 阅读 · 9 评论 -
文本分类(三) | (2) 程序入口
完整项目run.py是整个项目的入口,它包含两部分,一是使用argparse工具,配置相关参数;二是整个项目的流程框架,各个模块/函数的调用。目录1. 参数配置2. 项目流程1. 参数配置#声明argparse对象 可附加说明parser = argparse.ArgumentParser(description='Chinese Text Classif...原创 2020-01-29 13:31:29 · 1595 阅读 · 0 评论 -
文本分类(三) | (1) 项目介绍(基于预训练语言模型)
完整项目文本分类(三)专栏主要是对Github优秀文本分类项目的解析,该文本分类项目,主要基于预训练语言模型,包括bert、bert + CNN/RNN/RCNN/DPCNN、ERNIE等,使用PyTorch实现。本博客还讲解了一种预训练语言模型的通用方法,即使用transformers库,可以将本项目扩展为使用任意的预训练语言模型(包括:albert、xlnet、roberta,t5,g...原创 2020-01-29 13:22:48 · 5364 阅读 · 6 评论
分享