Masked Generative Distillation(MGD)2022年ECCV

Masked Generative Distillation(MGD)2022年ECCV

摘要

**目前的蒸馏算法通常通过模仿老师的输出来提高学生的表现。本文表明,教师还可以通过引导学生特征恢复来提高学生的代表性。从这个角度来看,我们提出的掩模生成蒸馏(MGD),它很简单:我们掩模学生特征的随机像素,并通过一个简单的块强制其生成教师的完整特征。**MGD是一种真正通用的基于特征的蒸馏方法,可用于各种任务,包括图像分类、目标检测、语义分割和实例分割。我们用大量的数据集对不同的模型进行了实验,结果表明所有的学生都取得了很好的进步。

介绍

知识蒸馏可以分为两种:第一种是专门为不同的任务而设计的,例如用于分类的基于logit的蒸馏和用于检测的基于head的蒸馏。第二种是基于特征的蒸馏。由于各种网络之间只有头部或投影后的特征是不同的,从理论上讲,基于特征的蒸馏方法可以被用于各种任务。然而,为特定任务设计的蒸馏方法通常不适用于其他任务。例如,OFD和KR对探测器改进有限。FKD和FGD是专门为探测器设计的,由于缺乏neck,无法用于其他任务。

以往基于特征的蒸馏方法,由于教师的特征具有更强的表征能力,通常会让学生尽可能地模仿教师的输出。然而,我们认为没有必要直接模仿老师来提高学生特征的表征能力。用于蒸馏的特征通常是通过深度网络获得的高阶语义信息。特征像素已经在一定程度上包含了相邻像素的信息。因此,如果我们可以使用部分像素通过一个简单的块来还原教师的全部特征,那么这些使用像素的代表性也可以得到提高。从这个角度出发,我们提出了一种简单有效的基于特征的蒸馏方法——掩模生成蒸馏(MGD)如图2所示,**我们首先对学生特征的随机像素进行mask,然后通过一个简单的块将mask后的特征生成教师的完整特征。由于每次迭代都使用随机像素,因此在整个训练过程中都会使用所有像素,这意味着特征将更加鲁棒,并且其表达能力将得到提高。**在我们的方法中,教师只是引导学生还原特征,并不要求学生直接模仿。

image-20240309153035374

为了验证我们的假设,即在不直接模仿教师的情况下,掩模特征生成可以提高学生的特征表达能力,我们从学生和教师的neck对特征注意力进行了可视化。如图1所示,

image-20240309154928033

学生和教师的特征有很大的不同,与教师相比,学生特征的背景有更高的反应。经过MGD训练以后,学生和教师特征仍有显著差异,但学生对背景的反应大大降低。但是学生的表现超过了FGD,甚至达到了与教师相同的mAP。这也说明MGD训练可以提高学生特征的表征能力。此外,我们还在图片分类和密集检测任务上做了实验。结果表明MGD对图像分类、目标检测和语义分割等任务都有效。MGD可以与其他基于logit或基于head的蒸馏方法相结合,以获得更大的性能收益。综上所述,本文的贡献有:

1、我们提出了一种新的基于特征的知识蒸馏方法,使学生利用被掩蔽的特征来生成教师的特征,而不是直接模仿教师的特征。

2、本文提出了一种新的基于特征的蒸馏方法——掩模生成蒸馏,该方法简单易用,只需要两个超参数

相关工作

面向密集检测的知识蒸馏

分类和密集预测有很大的区别。许多用于分类的蒸馏工作在密集预测上都失败了。理论上,基于特征的蒸馏方法应该有助于分类和密集预测任务,这也是我们方法的目标。

Chen等首先计算检测器的neck和头部的蒸馏损失。由于前景和背景的极度不平衡,在什么地方进行蒸馏是目标检测的关键。为了避免从背景中引入噪声,FGFI利用细粒度掩模提取物体附近的区域。然而,Defeat指出,来自前景和背景的信息都很重要。GID选择学生和老师在蒸馏中表现不同的领域。FKD利用教师和学生注意力的总和,使学生的注意力集中在可变的区域。FGD提出了焦点蒸馏,它迫使学生学习教师的关键部分,而全局蒸馏则弥补了缺失的全局信息。

方法

对于不同的任务,模型的体系结构差别很大。此外,大多数蒸馏方法都是为特定任务而设计的。然而,基于特征的蒸馏可以同时用户分类和密集预测任务。特征蒸馏的基本方法可表述为:
L f e a = ∑ k = 1 C ∑ i = 1 H ∑ j = 1 W ( ( F k , i , j T − f a l i g n ( F k , i , j S ) ) ) 2 L_{fea} = \sum_{k=1}^C\sum_{i=1}^H\sum_{j=1}^W((F_{k,i,j}^T - f_{align}(F_{k,i,j}^S)))^2 Lfea=k=1Ci=1Hj=1W((Fk,i,jTfalign(Fk,i,jS)))2
image-20240309163448611分别表示教师和学生的特征,image-20240309163604272是将学生特征image-20240309163613035与教师特征image-20240309163620336对齐的自适应层。C,H,W表示特征图的形状。这种方法有助于学生直接模仿教师特征。然而,我们提出了掩蔽生成蒸馏(MGD),其目的是迫使学生生成教师的特征,而不是模仿它,从而使学生在分类密集预测方面都有显著的提高。

带Mask特征的生成

对于基于CNN的模型,更深层的特征具有更大的接受域和更好的原始输入图像的表示。换句话说,特征图像素在一定程度上已经包含了相邻像素的信息。因此,我们可以使用部分像素来恢复完整的特征图。我们的方法旨在通过学生的mask特征来生成老师的特征,这可以帮助学生获得更好的表现。

我们用image-20240309165856455分别表示为教师和学生的第L个特征图。首先,我们设置第l个随机mask来覆盖学生的第l个特征,可以表示为:
M i , j l = { 0 , i f R i , i l < λ 1 , O t h e r w i s e M_{i,j}^l =\left\{\begin{matrix} 0, if R_{i,i}^l < \lambda& \\ 1, Otherwise& \end{matrix}\right. Mi,jl={0,ifRi,il<λ1,Otherwise
为(0,1)中的随机数,i,j分别为特征图的横坐标和纵坐标。是表示掩码比的超参数。第l个特征映射被第l个随机掩码覆盖。

然后我们使用相应的掩码覆盖学生的特征图,并尝试用左边的像素生成教师的特征图,可以表示为:
G ( f a l i g n ( S l ) × M l → T l ) G(f_{align(S^l)} \times M^l\rightarrow T^l) G(falign(Sl)×MlTl)

G ( F ) = W l 2 ( R e L U ( W l 1 ( F ) ) ) G(F) = W_{l2}(ReLU(W_{l1}(F))) G(F)=Wl2(ReLU(Wl1(F)))

表示包含两个卷积层的投影层:和,一个激活层ReLU。在本文中,对于自适应层我们采用1x1卷积层,投影层在这里插入图片描述
image-20240309183219956使用3x3卷积层。

根据这个方法,我们设计了MGD的蒸馏损失:
L d i s ( S , T ) = ∑ l = 1 L ∑ k = 1 C ∑ i = 1 H ∑ j = 1 W ( T k , i , j l − G ( f a l i g n ( S k , i , j l ) × M i , j l ) ) 2 L_{dis}(S,T) = \sum_{l=1}^L\sum_{k=1}^C \sum_{i=1}^H \sum _{j=1}^W(T_{k,i,j}^l - G(f_{align}(S_{k,i,j}^l )\times M_{i,j}^l))^2 Ldis(S,T)=l=1Lk=1Ci=1Hj=1W(Tk,i,jlG(falign(Sk,i,jl)×Mi,jl))2
其中L为蒸馏层数和,C,H,W为特征映射的形状。S和T分别表示学生和教师的特征。

总损失

利用提出的MGD损失image-20240309183849892,我们用总损失训练所有模型如下:
L a l l = L o r i g i n a l + α × L d i s L_{all} = L_{original} + \alpha \times L_{dis} Lall=Loriginal+α×Ldis
image-20240309184008902是所有任务重模型的原始损失,image-20240309184019152为平衡损失的超参数。MGD是一种简单有效的蒸馏方法,可方便地应用于各种任务。算法1总结了我们方法的过程

image-20240309184111331

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/526721.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

先进电机技术 —— 高速电机与低速电机

一、背景 高速电机是指转速远高于一般电机的电动机&#xff0c;通常其转速在每分钟几千转至上万转甚至几十万转以上。这类电机具有功率密度高、响应速度快、输出扭矩大等特点&#xff0c;在航空航天、精密仪器、机器人、电动汽车、高端装备制造等领域有着广泛的应用。 高速电…

无人机生态环境监测、图像处理与GIS数据分析

构建“天空地”一体化监测体系是新形势下生态、环境、水文、农业、林业、气象等资源环境领域的重大需求&#xff0c;无人机生态环境监测在一体化监测体系中扮演着极其重要的角色。通过无人机航空遥感技术可以实现对地表空间要素的立体观测&#xff0c;获取丰富多样的地理空间数…

跨平台大小端判断与主机节序转网络字节序使用

1.macOS : 默认使用小端 ,高位使用高地址,转换为网络字节序成大端 #include <iostream> #include <arpa/inet.h> int main() {//大小端判断union{short s;char c[sizeof(short)];}un;un.s = 0x0102;printf("低地址:%d,高地址:%d\n",un.c[0],un.c[1]);if …

灯塔批量添加指纹信息

攻击地址https://github.com/loecho-sec/ARL-Finger-ADD 指纹文件https://github.com/lemonlove7/EHole_magic/blob/main/finger.json 成功导入可以看到

基于Springboot的在线租房和招聘平台(有报告)。Javaee项目,springboot项目。

演示视频&#xff1a; 基于Springboot的在线租房和招聘平台&#xff08;有报告&#xff09;。Javaee项目&#xff0c;springboot项目。 项目介绍&#xff1a; 采用M&#xff08;model&#xff09;V&#xff08;view&#xff09;C&#xff08;controller&#xff09;三层体系结…

采用 Amazon DocumentDB 和 Amazon Bedrock 上的 Claude 3 构建游戏行业产品推荐

前言 大语言模型&#xff08;LLM&#xff09;自面世以来即展示了其创新能力&#xff0c;但 LLM 面临着幻觉等挑战。如何通过整合外部数据库的知识&#xff0c;检索增强生成&#xff08;RAG&#xff09;已成为通用和可行的解决方案。这提高了模型的准确性和可信度&#xff0c;特…

【个人开发】llama2部署实践(三)——python部署llama服务(基于GPU加速)

1.python环境准备 注&#xff1a;llama-cpp-python安装一定要带上前面的参数安装&#xff0c;如果仅用pip install装&#xff0c;启动服务时并没将模型加载到GPU里面。 # CMAKE_ARGS"-DLLAMA_METALon" FORCE_CMAKE1 pip install llama-cpp-python CMAKE_ARGS"…

PyTorch搭建LeNet训练集详细实现

一、下载训练集 导包 import torch import torchvision import torch.nn as nn from model import LeNet import torch.optim as optim import torchvision.transforms as transforms import matplotlib.pyplot as plt import numpy as npToTensor()函数&#xff1a; 把图像…

【脚本玩漆黑的魅影】全自动刷努力值

文章目录 原理全部代码 原理 全自动练级&#xff0c;只不过把回城治疗改成吃红苹果。 吃一个可以打十下&#xff0c;背包留10个基本就练满了。 吃完会自动停止。 if img.getpixel(data_attack[0]) data_attack[1] or img.getpixel(data_attack_2[0]) data_attack_2[1]: # …

RESTful API关键部分组成和构建web应用程序步骤

RESTful API是一种基于HTTP协议的、符合REST原则的应用程序接口。REST&#xff08;Representational State Transfer&#xff09;是一种软件架构风格&#xff0c;用于设计网络应用程序的通信模式。 一个RESTful API由以下几个关键部分组成&#xff1a; 资源&#xff08;Resour…

关于天线综合4(伍德沃德——罗森取样法)

伍德沃德——罗森取样法 就是在各个点指定方向图的值&#xff0c;对其方向图取样 主要就是将线源电流分布分解成一组等幅度、线性相位的源的和 求出对应电流分量方向图 中心位于wwn 最大值为an&#xff0c; 其中wn控制该分量方向图最大值的位置&#xff0c;an控制分量方向图的幅…

腾讯云8核16G服务器性能怎么样?能支持多少人访问?

腾讯云8核16G轻量服务器CPU性能如何&#xff1f;18M带宽支持多少人在线&#xff1f;轻量应用服务器具有100%CPU性能&#xff0c;18M带宽下载速度2304KB/秒&#xff0c;折合2.25M/s&#xff0c;系统盘为270GB SSD盘&#xff0c;月流量3500GB&#xff0c;折合每天116.6GB流量&…