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

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

fine-tuning 两阶段模型的更多相关文章

  1. L23模型微调fine tuning

    resnet185352 链接:https://pan.baidu.com/s/1EZs9XVUjUf1MzaKYbJlcSA 提取码:axd1 9.2 微调 在前面的一些章节中,我们介绍了如何在只有 ...

  2. SPSS数据分析—两阶段最小二乘法

    传统线性模型的假设之一是因变量之间相互独立,并且如果自变量之间不独立,会产生共线性,对于模型的精度也是会有影响的.虽然完全独立的两个变量是不存在的,但是我们在分析中也可以使用一些手段尽量减小这些问题产 ...

  3. (原)caffe中fine tuning及使用snapshot时的sh命令

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/5946041.html 参考网址: http://caffe.berkeleyvision.org/tu ...

  4. 【转载】Analysis Service Tabular Model #002 Analysis services 的结构:一种产品 两个模型

    Analysis Service 2012 Architecture – One Product, Two Models 在之前SQL Server 2008 R2 版本中的分析服务实际上只有一个版本 ...

  5. 基于两阶段提交的分布式事务实现(UP-2PC)

    引言:分布式事务是分布式数据库的基础性功能,在2017年上海MySQL嘉年华(IMG)和中国数据库大会(DTCC2018)中作者都对银联UPSQL Proxy的分布式事务做了简要介绍,受限于交流形式难 ...

  6. 分布式事务专题笔记(二)分布式事务解决方案之 2PC(两阶段提交)

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 前面已经了解了分布式事务的基础理论,以理论为基础,针对不同的分布式场景业界常见的解决方案有2PC.TCC ...

  7. 分布式:分布式事务(CAP、两阶段提交、三阶段提交)

    1 关于分布式系统 1.1 介绍 我们常见的单体结构的集中式系统,一般整个项目就是一个独立的应用,所有的模块都聚合在一起.明显的弊端就是不易扩展.发布冗重.服务治理不好做. 所以我们把整个系统拆分成若 ...

  8. 深度学习与CV教程(12) | 目标检测 (两阶段,R-CNN系列)

    作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...

  9. 分布式事务(一)两阶段提交及JTA

    原创文章,同步发自作者个人博客 http://www.jasongj.com/big_data/two_phase_commit/ 分布式事务 分布式事务简介 分布式事务是指会涉及到操作多个数据库(或 ...

随机推荐

  1. HTTP协议7之Cookie--转

    Cookie是HTTP协议中非常重要的东西, 之前拜读了Fish Li 写的[细说Cookie], 让我学到了很多东西.Fish的这篇文章写得太经典了. 所以我这篇文章就没有太多内容了. 最近我打算写 ...

  2. python try exception finally记录

    try exception finally中,finally下的语句块始终会执行 测试finally代码 def test_try_exception(a, b): '''测试异常捕获语句''' re ...

  3. shell 生成文件统计信息

    #!/bin/bash #file name : filestat.sh if [ $# -ne 1 ]; then echo "Usage is $0 basepath"; ex ...

  4. MySQL学习13 - 索引

    一.索引的介绍 二 .索引的作用 三.常见的几种索引: 3.1 普通索引 3.2 唯一索引 3.3 主键索引 3.4 组合索引 四.索引名词 五.正确使用索引的情况 什么是最左前缀呢? 六.索引的注意 ...

  5. 要求必须全部重复的数据sql--想了半天才写出来的

    CREATE TABLE [dbo].[ABC]( ) NULL, ) NULL, ) NULL, ) NULL ) ON [PRIMARY] GO --DELETE FROM [dbo].[ABC] ...

  6. 使用以太网通信方式刷新AB PLC固件

    本文详细介绍如何使用以太网通信方式刷新AB PLC固件 一.准备工作 1.  AB PLC控制器一台,本文以5069-L330ER为例,将其通电: 2.  5069-L330ER的IP已设置为172. ...

  7. 如何局部覆盖element-ui的默认样式

  8. 【汇编语言】DOXBox 0.74 常用debug命令

    1.查看.修改寄存器(r命令) ①-r ②-r  ax(要修改的寄存器) -:m(输入想要改成什么值) 2.查看内存单元(d命令) ①-d 查看128个内存单元内容. ②-d 段地址:偏移地址 查看指 ...

  9. eclipse快速查看工程代码行数

    1.点击要统计的项目或许文件夹,在菜单栏点击Search,然后点击File... 2.选中正则表达式(Regular expression),并在搜索文本框输入\n ;3.在文件名中输入*或*.jav ...

  10. 机器学习基石9-Linear Regression

    注: 文章中所有的图片均来自台湾大学林轩田<机器学习基石>课程. 笔记原作者:红色石头 微信公众号:AI有道 上节课,主要介绍了在有noise的情况下,VC Bound理论仍然是成立的.同 ...