BERT基于transformer的双向编码器

BERT(Bidirection Ecoder Representations from Transformers):左右信息,深的双向Transformer编码(enceder)模型

基于特征的模型feature-based:ELMo,基于RNN

基于微调的模型fine-tuning:GPT,单向语言模型

目录

1.MLM:Mask Language Model 掩码语言模型(完形填空形式)自监督的方式

2.BERT框架:

3.损失函数

 4.总结


1.MLM:Mask Language Model 掩码语言模型(完形填空形式)自监督的方式

例如 i am a little boy,she is a beautiful gilr.转换成为MLM为i__ a  __boy,__is a  beautiful girl.

2.BERT框架:

pre-training和fine-tuning两步,第一步,不同的预训练任务上用无标签数据训练模型;第二步,使用预训练初始化参数并基于有标签的数据进行微调。

任务一:Mask-L-M 15%的概率掩码,其中80%mask,10%随机替换,10%不变

任务二:相邻句子预测(next sentence prediction),50%相邻句子,50%随机。

每个序列的第一个词源是特殊的用作分类的Token[CLS],最后的隐藏层的状态与这个Token[CLS]相关联,Token[CLS]用于生成序列的表征并用于分类任务,即学习到的特征都整合到[CLS]这个词源中。

大量无标签数据的训练结果不一定比少量有标签数据集训练的结果差。

BERT基于transformer的双向编码器_第1张图片

输入由三部分组成,token embedding 为词编码,词义信息。segment为段编码,表示来自第几个句子。position embedding为位置嵌入,代表位置信息。

3.损失函数

  • 第一部分是来自 Mask-LM 的单词级别分类任务;使用交叉熵损失
  • 另一部分是句子级别的分类任务;使用交叉熵损失
  • 总的目标函数为两个损失函数求和最小化

 4.总结

通过这两个任务的联合学习,可以使得 BERT 学习到的表征既有 token 级别信息,同时也包含了句子级别的语义信息。

BERT告诉我们,大量无标签数据上的训练结果不一定比少量有标签数据上的训练结果差。

BERT使用自监督的方式在两个任务(MLM和NSP)上进行预训练,使得编码器具备优质的提取特征的能力,迁移至下游任务进一步完成NLP的任务。

python的学习还是要多以练习为主,想要练习python的同学,推荐可以去看,他们现在的IT题库内容很丰富,属于国内做的很好的了,而且是课程+刷题+面经+求职+讨论区分享,一站式求职学习网站,最最最重要的里面的资源全部免费。

牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网求职之前,先上牛客,就业找工作一站解决。互联网IT技术/产品/运营/硬件/汽车机械制造/金融/财务管理/审计/银行/市场营销/地产/快消/管培生等等专业技能学习/备考/求职神器,在线进行企业校招实习笔试面试真题模拟考试练习,全面提升求职竞争力,找到好工作,拿到好offer。icon-default.png?t=M85Bhttps://www.nowcoder.com/link/pc_csdncpt_ssdxjg_python

 

他们这个python的练习题,知识点编排详细,题目安排合理,题目表述以指导的形式进行。整个题单覆盖了Python入门的全部知识点以及全部语法,通过知识点分类逐层递进,从Hello World开始到最后的实践任务,都会非常详细地指导你应该使用什么函数,应该怎么输入输出。

牛客网(牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网还提供题解专区和讨论区会有大神提供题解思路,对新手玩家及其友好,有不清楚的语法,不理解的地方,看看别人的思路,别人的代码,也许就能豁然开朗。

快点击下方链接学起来吧!

牛客网 - 找工作神器|笔试题库|面试经验|实习招聘内推,求职就业一站解决_牛客网

参考:

BERT 论文逐段精读【论文精读】_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1PL411M7eQ?spm_id_from=333.999.0.0

你可能感兴趣的:(bert,transformer,自然语言处理,深度学习)