RoBERTa中文预训练模型:RoBERTa for Chinese
RoBERTa for Chinese, TensorFlow & PyTorch
项目主页:https://github.com/brightmart/roberta_zh
中文预训练RoBERTa模型
RoBERTa是BERT的改进版,通过改进训练任务和数据生成方式、训练更久、使用更大批次、使用更多数据等获得了State of The Art的效果;可以用Bert直接加载。
本项目是用TensorFlow实现了在大规模中文上RoBERTa的预训练,也会提供PyTorch的预训练模型和加载方式。
中文预训练RoBERTa模型-下载
** 推荐 RoBERTa-zh-Large 通过验证**
RoBERTa-zh-Large TensorFlow版本,Bert 直接加载
RoBERTa 24层版训练数据:30G原始文本,近3亿个句子,100亿个中文字(token),产生了2.5亿个训练数据(instance);
覆盖新闻、社区问答、多个百科数据等。
Roberta_l24_zh_base TensorFlow版本,Bert 直接加载
24层base版训练数据:10G文本,包含新闻、社区问答、多个百科数据等。
What is RoBERTa:
A robustly optimized method for pretraining natural language processing (NLP) systems that improves on Bidirectional Encoder Representations from Transformers, or BERT, the self-supervised method released by Google in 2018.RoBERTa, produces state-of-the-art results on the widely used NLP benchmark, General Language Understanding Evaluation (GLUE). The model delivered state-of-the-art performance on the MNLI, QNLI, RTE, STS-B, and RACE tasks and a sizable performance improvement on the GLUE benchmark. With a score of 88.5, RoBERTa reached the top position on the GLUE leaderboard, matching the performance of the previous leader, XLNet-Large.(Introduction from Facebook blog)
发布计划 Release Plan:
1、24层RoBERTa模型(roberta_l24_zh),使用30G文件训练, 9月8日
2、12层RoBERTa模型(roberta_l12_zh),使用30G文件训练, 9月8日
3、6层RoBERTa模型(roberta_l6_zh), 使用30G文件训练, 9月8日
4、PyTorch版本的模型(roberta_l6_zh_pytorch) 9月8日
5、30G中文语料,预训练格式,可直接训练(bert,xlent,gpt2) 9月14日或待定
6、测试集测试和效果对比 9月14日
效果测试与对比 Performance
自然语言推断:XNLI
注:RoBERTa_l24_zh,只跑了两次,Performance可能还会提升
Sentence Pair Matching (SPM): LCQMC
注:RoBERTa_l24_zh,只跑了一次,目前还不是最佳成绩。保存训练轮次和论文一致:
? 处地方,将会很快更新到具体的值
RoBERTa中文版 Chinese Version
本项目所指的中文预训练RoBERTa模型只指按照RoBERTa论文主要精神训练的模型。包括:
1、数据生成方式和任务改进:取消下一个句子预测,并且数据连续从一个文档中获得(见:Model Input Format and Next Sentence Prediction,DOC-SENTENCES)2、更大更多样性的数据:使用30G中文训练,包含3亿个句子,100亿个字(即token)。由新闻、社区讨论、多个百科,包罗万象,覆盖数十万个主题,所以数据具有多样性(为了更有多样性,可以可以加入网络书籍、小说、故事类文学、微博等)。3、训练更久:总共训练了近20万,总共见过近16亿个训练数据(instance); 在Cloud TPU v3-256 上训练了24小时,相当于在TPU v3-8(128G显存)上需要训练一个月。4、更大批次:使用了超大(8k)的批次batch size。5、调整优化器等超参数。
除以上外,本项目中文版,使用了全词mask(whole word mask)。在全词Mask中,如果一个完整的词的部分WordPiece子词被mask,则同属该词的其他部分也会被mask,即全词Mask。
本项目中并没有直接实现dynamic mask。通过复制一个训练样本得到多份数据,每份数据使用不同mask,并加大复制的分数,可间接得到dynamic mask效果。
中文全词遮蔽 Whole Word Mask
模型加载(以Sentence Pair Matching即句子对任务,LCQMC为例)
下载LCQMC数据集,包含训练、验证和测试集,训练集包含24万口语化描述的中文句子对,标签为1或0。1为句子语义相似,0为语义不相似。
tensorFlow版本:
1、复制本项目: git clone https://github.com/brightmart/roberta_zh2、进到项目(roberta_zh)中。假设你将RoBERTa预训练模型下载并解压到该改项目的roberta_zh_large目录,即roberta_zh/roberta_zh_large运行命令:export BERT_BASE_DIR=./roberta_zh_large
export MY_DATA_DIR=./data/lcqmc
python run_classifier.py \--task_name=lcqmc_pair \--do_train=true \--do_eval=true \--data_dir=$MY_DATA_DIR \--vocab_file=$BERT_BASE_DIR/vocab.txt \--bert_config_file=$BERT_BASE_DIR/bert_config_large.json \--init_checkpoint=$BERT_BASE_DIR/roberta_zh_large_model.ckpt \--max_seq_length=128 \--train_batch_size=64 \--learning_rate=2e-5 \--num_train_epochs=3 \--output_dir=./checkpoint_lcqmc注:task_name为lcqmc_pair。这里已经在run_classifier.py中的添加一个processor,并加到processors中,用于指定做lcqmc任务,并加载训练和验证数据。
PyTorch加载方式,先参考issue 9;将很快提供更具体方式。
Learning Curve 学习曲线
If you have any question, you can raise an issue, or send me an email: brightmart@hotmail.com
项目贡献者,还包括:
skyhawk1990
本项目受到 TensorFlow Research Cloud (TFRC) 资助 / Project supported with Cloud TPUs from Google's TensorFlow Research Cloud (TFRC)
Reference
1、RoBERTa: A Robustly Optimized BERT Pretraining Approach
2、Pre-Training with Whole Word Masking for Chinese BERT
3、BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding
4、LCQMC: A Large-scale Chinese Question Matching Corpus
?
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧
关于PaperWeekly
PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。
▽ 点击 | 阅读原文 | 访问项目主页
RoBERTa中文预训练模型:RoBERTa for Chinese相关推荐
- ACL 2021 | ChineseBERT:香侬科技提出融合字形与拼音信息的中文预训练模型
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 转载自:PaperWeekly 中文预训练模型 自 BERT 以来, ...
- 【ACL2021】ChineseBERT:香侬科技提出融合字形与拼音信息的中文预训练模型
点击下面卡片,关注我呀,每天给你送来AI技术干货! 来自:PaperWeekly 中文预训练模型 自 BERT 以来,大规模预训练模型已成为自然语言处理研究的一大重点,无论是训练更大的模型,如 BER ...
- 天池NLP中文预训练模型赛来了!
↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale赛事 主办单位:阿里云,CLUE,乐言科技 自从2017年具有划时代意义的Tr ...
- bert中文预训练模型_HFL中文预训练系列模型已接入Transformers平台
哈工大讯飞联合实验室(HFL)在前期陆续发布了多个中文预训练模型,目前已成为最受欢迎的中文预训练资源之一.为了进一步方便广大用户的使用,借助Transformers平台可以更加便捷地调用已发布的中文预 ...
- bert 中文 代码 谷歌_ELECTRA中文预训练模型开源,110个参数,性能媲美BERT
感谢参考原文-http://bjbsair.com/2020-03-27/tech-info/7050/ 在去年11月份,NLP大神Manning联合谷歌做的ELECTRA一经发布,迅速火爆整个NLP ...
- 常用的中文预训练模型、预训练词向量下载地址收藏
中文预训练模型下载 原版:https://huggingface.co/models Google原版bert:https://github.com/google-research/bert 中文XL ...
- 【论文泛读】ChineseBERT:融合字形与拼音信息的中文预训练模型
本次分享的论文ChineseBERT来自于ACL 2021会议,论文全名为ChineseBERT: Chinese Pretraining Enhanced by Glyph and Pinyin I ...
- 登顶CLUE榜单,腾讯云小微与腾讯AI Lab联合团队提出基于知识的中文预训练模型...
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 2018年以来,以BERT.GPT等为代表的大规模预训练模型,带来了 ...
- 中文预训练模型ZEN开源,效果领域内最佳,创新工场港科大出品
允中 发自 凹非寺 量子位 报道 | 公众号 QbitAI 改进策略简单有效.收敛速度快,同时小数据效果出色. 这就是中文预训练模型ZEN. 在中文任务中,ZEN不仅性能优于BERT,也比之前中文预 ...
最新文章
- httpd中工作模型的比较
- 11种常见SQLMAP使用方法详解
- 在创建的Silverlight Control中使用图片
- printf 指针地址_c语言入门 第十四章指针
- heartbeat 日志分析
- 一般一个前端项目完成需要多久_制作分销小程序最快要多久
- Android之多线程断点下载
- 【BZOJ5082】弗拉格 矩阵乘法
- Java自学知识点_良心_精心整理
- QTP基础教程(讲义)《软件测试技术》
- 初识 Speex 语音压缩
- python黑魔法指南_python黑魔法
- 常用Word 排版要求
- 广东惠州港口吞吐量稳中有升
- 安徽省2019c语言二级答案,安徽省计算机等级二级考试真题C语言.doc
- 【Shader】基于图像的光照(Image Based Lighting,IBL)
- linux7 ppt,Linux_7_.ppt
- for循环实现的一些例子
- Linux 获取磁盘唯一ID方式
- IOS 发布被拒 PLA 1.2问题 整个过程介绍 03 个人账户升级公司账户
热门文章
- dos命令在vba中应用
- centos7安装redis的正确姿势
- Kali Linux虚拟机安装完整安装过程及简单配置(视频)
- C# SHA1散列算法
- 一个最为简单的jquery 分页实现方法!可以用用于理解js分页的原理。
- iOS获取缓存文件的大小并清除缓存
- java method 创建_java中创建对象的5种方式
- php和python和javascript_Node.js与PHP、Python的字符处理性能对比
- 分布式mysql保持数据一致性_一种分布式跨数据库保持事务一致性的方法及系统与流程...
- java是如何写入文件的