| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 文献阅读记录——Masked Generative Distillation -> 正文阅读 |
|
[人工智能]文献阅读记录——Masked Generative Distillation |
仅对文章大致的方法做个记录。 先给出论文和代码的链接:https://github.com/yzd-v/MGD ????????这篇论文讲的是一个通用于各种视觉任务的知识蒸馏方法,因为它属于特征模仿类的知识蒸馏方法。所谓的特征模仿,就是要让学生网络的某一个或几个特征图去模仿对应的教师网络的特征图,从数学表达式上来说,就是计算学生网络特征图和教师网络特征图均方误差,如下所示: ?????????其中F表示特征图,T表示教师,S表示学生,函数falign的作用是将学生网络特征图的shape reshap成和教师网络特征图相同的shape,这样才能逐点计算均方误差。 ????????而本文就是基于上式进行的简单改进,其动机如下: ????????对于基于cnn的模型,更深层的特征有更大的感受野,对原始输入图片有更好的特征表示。换个角度来说,就是特征图上的像素在一定程度上包含相邻像素的信息。因此我们能使用部分像素来恢复完整的特征图。 ????????此文章中的方法就是去通过学生网络masked feature去生成教师网络的feature,从而帮助学生实现更好的特征表示。 ? ? ? ? 具体实现方法很简单,分为3步:? ????????1、特征对齐,通过1*1卷积将学生网络某一层输出的特征图reshape成和教师网络对应层的特征图的shape一致。 ? ? ? ? 2、生成masked feature. 在特征图上每一个点都生成一个随机数Ri,j(0,1之间),然后有一个超参数𝜆,比这个𝜆大的为1,否则为0,就获得了一个特征掩膜。 ?这步我个人理解 就是对特征图进行随机的采样,然后获得一个不那么完整的特征图 ? ? ? ? 3、然后将这个掩膜和reshape后的特征图相乘就获得了masked feature; ? ? ? ? 4、这个masked feature 经过生成模块:3*3conv,Relu,3*3conv 后生成了新的特征图,这个特征图会和教师网络的特征图进行知识蒸馏,即计算两者的特征模仿的损失。 ?? ? 整体流程如下: 整个过程相当的简单啊,和原本的特征模仿相比就多了一个先采样再生成的过程。 这为啥有效,我的想法是:通过这个掩膜,获得了部分的特征图,然后再生成新的特征图去模仿教师网络的特征图,相比原始的特征模仿,多的这一步,是增大网络学习的难度,从而迫使学生网络去学习一个更优秀的特征表示,而生成的特征图去模仿教师网络是因为教师网络的特征表示更优秀,通过模仿可以让学生网络训练时候的”进步“方向不走偏,往学习更优秀的特征表示的方向走。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
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 1:52:32- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |