IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 动态网络加速之早退机制:DeeBert[2020ACL] 与 FastBert[2020ACL] -> 正文阅读

[人工智能]动态网络加速之早退机制:DeeBert[2020ACL] 与 FastBert[2020ACL]

这篇文章主要介绍两篇文章关于动态网络中的早退机制,有意思的是两篇文章都出自2020年ACL,并且两者有很多相似点。两篇论文地址如下:

DeeBert

FastBert

1. 动机

由于大规模预训练模型的兴起,如Bert,它确实有很不错的表现能力。然而,在实际应用中Bert规模太大,在推理时计算复杂度太高,往往需要很长的时间,因此需要设计一种自适应推理模型。

2. DeeBert

2.1. 介绍

DeeBert是在Bert每一层encoder后增加一个输出出口(即一个分类器)。如下图所示,长方形表示的是encoder,圆形表示的是分类器,其实DeeBert的模型架构与FastBert的模型架构几乎一致。

DeeBert

?

2.2. Training

DeeBert的训练分为两阶段:

  • 第一阶段,禁用除最后一个分类器以外的所有分类器,使用有标签数据集微调最后一个分类器以及所有的encoder,这与原论文Bert的微调保持一致。

  • 第二阶段,禁用第一阶段微调的所有参数,使用有标签数据集仅仅微调第一阶段所禁用的分类器。

2.3. inference

当输入样本x到达某一层的分类器,如果该分类器的预测结果的信息熵小于设定的阈值S,则直接返回该分类器的预测结果同时不在往后执行;如果该分类器的预测结果的信息熵大于设定的阈值S,则继续往后执行。

?

2.4. experiments

DeeBert使用GLUE数据集进行实验,实验结果如下:

3. FastBert

3.1. 介绍

FastBert的模型架构与DeeBert的模型架构类似,都是在Bert的每层encoder后增加一个分类器,FastBert给最后一个分类器取名为老师分类器,其它分类器都称为学生分类器。如下图所示:

3.2. Training

FastBert的训练也分为两阶段:

  • 第一阶段,与DeeBert一样,冻结所有学生分类器,使用有标签数据微调所有encoder以及老师分类器

  • 第二阶段,冻结第一阶段微调的所有参数,使用自蒸馏技术,这里使用无标签数据就可以,将老师分类器预测的概率分布蒸馏给学生分类器。这里使用KL散度衡量分布距离,loss是所有学生分类器与老师分类器的KL散度之和。

3.3. inference

在推理阶段,FastBert与DeeBert的策略也是几乎一样,都使用了分类器输出的信息熵作为是否早退的指标,当信息熵小于阈值S则早退,大于阈值S则继续执行。FastBert只是在信息熵基础上乘了一个系数,如下图所示:

?其中N是分类类别,分子部分其实就是信息熵。

3.4. experiment

FastBert选取了六个中文数据集以及六个中文数据集进行实验,结果如下:

?

4. DeeBert与FastBert对比

4.1. 相同点

  1. 两个模型的架构都是一致,只是取名不一样

  2. 两个模型训练都是两个阶段,并且第一阶段是一致的,都与Bert的微调一致

  3. 两个模型推理阶段一致,都使用分类器输出概率的信息熵作为早退指标,信息熵小于阈值S则早退,信息熵大于阈值S则继续执行

4.2. 不同点

不同点主要是训练的第二阶段,DeeBert采用有标签数据微调分类器,使用交叉熵作为loss。而FastBert采用自蒸馏技术,使用无标签数据,将老师分类器的概率分布蒸馏给学生分类器的概率分布,使用kL散度作为loss。

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-07 22:41:41  更:2022-04-07 22:44:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 11:48:26-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码