[nlp] 小傻学百度ERNIE

what is ERNIE

ERNIE:Enhanced Representation through knowledge integration (Baidu)

why ERNIE?

  1. 通过实体和短语mask能够学习语法和句法信息的语言模型
  2. 在很多中文自然语言处理任务上达到state-of-the art
  3. 放出了代码和预训练模型

ERNIE 1.0

简介

方法:与bert类似
训练数据集:中文维基百科,百度百科,百度新闻,百度贴吧
参数: L = 12,H = 768,A = 12 (BERT BASE)

创新点:

在这里插入图片描述
字粒度的输入
不同级别的mask(单字(与bert相同)、实体、短语)
在这里插入图片描述
mask实现(code)
batching.py —mask函数

其他细节:

中文繁体->简体
英文大写->小写
词表大小17964

dialogue embedding
输入层使用多轮对话修改NSP任务(random replace 构造负样本)
在这里插入图片描述

ERNIE 2.0

ERNIE1.0 :
(更多的语料

实体级别的连续Mask——>改变了训练Task

能否通过重新设计Task提升效果?)

ERNIE 2.0: A Continual Pre-Training Framework for Language Understanding (Baidu)
贡献:
多任务持续学习预训练框架 ERNIE 2.0
构建三种类型的无监督任务,训练模型并刷新GLUE
Fine-tuning code & English model
数据更多: Reddit 搜索数据等
参数与BERT一致

the architecture of ERNIE2.0

在这里插入图片描述

连续多任务学习

不遗忘之前的训练结果
多任务高效的进行训练
使用上一任务的参数,并且新旧任务一起训练
将每个任务分成多次迭代,框架完成不同迭代的训练自动分配
在这里插入图片描述

多任务训练

Sentence level loss & word level loss
每个任务有独立的loss function, sentence task 可以和word task 一起训练
在这里插入图片描述
模型结构
在这里插入图片描述
Task embedding:表示在训练哪一个task

任务1: 词法级别预训练任务

Knowledge Masking Task(ERNIE 1.0):学习当前和全局依赖
Capitalization Prediction Task:大写用于专名识别等,小写也可用在其他任务
Token-Document Relation Prediction Task:token存在段落A中是否token会在文档的段落B中出现

任务2:语言结构级别预训练任务

对应bert中的NSP任务。
Sentence Reordering Task:文档中的句子打乱(分成1到m段,shuffle),识别正确顺序
Sentence Distance Task:句子间的距离,3分类任务
0 相连的句子
1同一文档中不相连的句子
2两篇文档间的句子

任务3:语法级别预训练任务

Discourse Relation Task:计算两句间的语义与修辞关系
IR Relevance Task:短文本信息检索关系(百度的核心)
Query-title (搜索数据)
0:搜索并点击
1:搜索并展现
2:无关,随机替换

结论

目前来看最好的中英文预训练语言模型之一
(https://gluebenchmark.com/leaderboard)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值