基于tensorflow 1.x 的bert系列预训练模型工具
共 2364字,需浏览 5分钟
·
2021-09-23 09:13
向AI转型的程序员都关注了这个号👇👇👇
机器学习AI算法工程 公众号:datayx
tfbert
基于tensorflow 1.x 的bert系列预训练模型工具
支持多GPU训练,支持梯度累积,支持pb模型导出,自动剔除adam参数
采用dataset 和 string handle配合,可以灵活训练、验证、测试,在训练阶段也可以使用验证集测试模型,并根据验证结果保存参数。
源代码获取方式
关注微信公众号 datayx 然后回复 tf 即可获取。
AI项目体验地址 https://loveai.tech
说明
config、tokenizer参考的transformers的实现。
内置有自定义的Trainer,像pytorch一样使用tensorflow1.14,具体使用下边会介绍。
目前内置 文本分类、文本多标签分类、命名实体识别例子。
内置的几个例子的数据处理代码都支持多进程处理,实现方式参考的transformers。
内置代码示例数据集百度网盘提取码:rhxk
支持模型
bert、electra、albert、nezha、wobert、ChineseBert(GlyceBert)
requirements
tensorflow==1.x
tqdm
jieba
目前本项目都是在tensorflow 1.x下实现并测试的,最好使用1.14及以上版本,因为内部tf导包都是用的
import tensorflow.compat.v1 as tf
使用说明
Config 和 Tokenizer
使用方法和transformers一样
多卡运行方式,需要设置环境变量CUDA_VISIBLE_DEVICES,内置trainer会读取参数:
CUDA_VISIBLE_DEVICES=1,2 python run.py
详情查看代码样例
XLA和混合精度训练训练速度测试
使用哈工大的rbt3权重进行实验对比,数据为example中的文本分类数据集。开启xla和混合精度后刚开始训练需要等待一段时间优化,所以第一轮会比较慢, 等开启后训练速度会加快很多。最大输入长度32,批次大小32,训练3个epoch, 测试环境为tensorflow1.14,GPU是2080ti。
开启混合精度比较慢,base版本模型的话需要一两分钟,但是开启后越到后边越快,训练步数少的话可以只开启xla就行了,如果多的话 最好xla和混合精度(混合精度前提是你的卡支持fp16)都打开。
可加载中文权重链接
机器学习算法AI大数据技术
搜索公众号添加: datanlp
长按图片,识别二维码
阅读过本文的人还看了以下文章:
基于40万表格数据集TableBank,用MaskRCNN做表格检测
《深度学习入门:基于Python的理论与实现》高清中文PDF+源码
2019最新《PyTorch自然语言处理》英、中文版PDF+源码
《21个项目玩转深度学习:基于TensorFlow的实践详解》完整版PDF+附书代码
PyTorch深度学习快速实战入门《pytorch-handbook》
【下载】豆瓣评分8.1,《机器学习实战:基于Scikit-Learn和TensorFlow》
李沐大神开源《动手学深度学习》,加州伯克利深度学习(2019春)教材
【Keras】完整实现‘交通标志’分类、‘票据’分类两个项目,让你掌握深度学习图像分类
如何利用全新的决策树集成级联结构gcForest做特征工程并打分?
Machine Learning Yearning 中文翻译稿
斯坦福CS230官方指南:CNN、RNN及使用技巧速查(打印收藏)
中科院Kaggle全球文本匹配竞赛华人第1名团队-深度学习与特征工程
不断更新资源
深度学习、机器学习、数据分析、python
搜索公众号添加: datayx