| |
|
开发:
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,并且两者有很多相似点。两篇论文地址如下: 1. 动机由于大规模预训练模型的兴起,如Bert,它确实有很不错的表现能力。然而,在实际应用中Bert规模太大,在推理时计算复杂度太高,往往需要很长的时间,因此需要设计一种自适应推理模型。 2. DeeBert2.1. 介绍DeeBert是在Bert每一层encoder后增加一个输出出口(即一个分类器)。如下图所示,长方形表示的是encoder,圆形表示的是分类器,其实DeeBert的模型架构与FastBert的模型架构几乎一致。 ? 2.2. TrainingDeeBert的训练分为两阶段:
2.3. inference当输入样本x到达某一层的分类器,如果该分类器的预测结果的信息熵小于设定的阈值S,则直接返回该分类器的预测结果同时不在往后执行;如果该分类器的预测结果的信息熵大于设定的阈值S,则继续往后执行。 ? 2.4. experimentsDeeBert使用GLUE数据集进行实验,实验结果如下: 3. FastBert3.1. 介绍FastBert的模型架构与DeeBert的模型架构类似,都是在Bert的每层encoder后增加一个分类器,FastBert给最后一个分类器取名为老师分类器,其它分类器都称为学生分类器。如下图所示: 3.2. TrainingFastBert的训练也分为两阶段:
3.3. inference在推理阶段,FastBert与DeeBert的策略也是几乎一样,都使用了分类器输出的信息熵作为是否早退的指标,当信息熵小于阈值S则早退,大于阈值S则继续执行。FastBert只是在信息熵基础上乘了一个系数,如下图所示: ?其中N是分类类别,分子部分其实就是信息熵。 3.4. experimentFastBert选取了六个中文数据集以及六个中文数据集进行实验,结果如下: ? 4. DeeBert与FastBert对比4.1. 相同点
4.2. 不同点不同点主要是训练的第二阶段,DeeBert采用有标签数据微调分类器,使用交叉熵作为loss。而FastBert采用自蒸馏技术,使用无标签数据,将老师分类器的概率分布蒸馏给学生分类器的概率分布,使用kL散度作为loss。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |