首页 技术 正文
技术 2022年11月16日
0 收藏 533 点赞 3,197 浏览 747 个字

目前大部分的nlp任务采用两阶段的模型,第一阶段进行预训练,一般是训练一个语言模型。最出名的是BERT,BERT的预训练阶段包括两个任务,一个是Masked Language Model,还有一个是Next Sentence Prediction。通过预训练能够利用海量的无标注的预料,以从中抽取出语言学特征,并在第二阶段结合具体任务,以这些从海量无标住语料中抽取出的语言学特征作为特征补充。第一阶段预训练出的模型具有很强的泛化能力,一方面是因为语料非常丰富能够学习到很多特征,另一方面是因为使用多层的Transformer作为特征提取器能够抽取出泛化能够更强的特征。从GPT2.0可以看出加大用于进行预训练模型的语料,同时提高这些语料的质量能够使训练出的模型更具泛化性能。从ERNIE来看补充更多的先验知识供预训练模型学习能够使模型泛化能力更高。ERNIE相当于融入了知识图谱。

在具体的第二阶段的任务中我们只需结合第一阶段的预训练模型简单的修改一些输出层,再用我们自己的数据进行一个增量训练,对权重进行一个轻微的调整。例如BERT训练好的模型会保存在checkpoint中,在我们进行具体的第二阶段的任务时,例如分类任务,只需传入当前的训练语料会加载预训练模型的图以及训练好的具备丰富特征的参数,因为预训练好的模型泛化能力很强,所以具体任务中只需要对可训练的这些参数进行fine-tuning(微调)便能满足当前任务,因为可用的标注语料很少,只用这些语料通过特征抽取器可能并无法抽取出泛化能力强的特征,通过预训练的模型能够进行很好的特征补充,使得抽取出的特征更加适用于我们具体的任务。结合具体任务的训练语料对可训练的参数进行微调,然后把这些微调后的参数以及图保存起来,以便于我们进一步进行预测时使用。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,075
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,551
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,399
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,176
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,811
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,893