
知识蒸馏
文章平均质量分 95
AI智韵
专注AI技术,紧跟时代前沿,将最新的论文成果运用到Yolo系列的改进中!每篇文章都包含几种改进方法,步骤详细,解释清楚,还提供了PDF版本的文章和完整的改进代码!大家遇到使用的问题,或者我写的不清楚的地方,请私信告诉我!如果是写的不够清楚,我再去修改,如果有错误和Bug,我尽快修复!谢谢大家!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
知识蒸馏DEiT算法实战:使用RegNet蒸馏DEiT模型
【第58篇】DEiT:通过注意力训练数据高效的图像transformer &蒸馏1、将蒸馏token作为Teacher标签。两个token通过注意力在transformer中相互作用。实现蒸馏。DEiT实战:使用DEiT实现图像分类任务(一)2、通过卷积神经网络去蒸馏蒸馏token,让transformer从卷积神经网络学习一些卷积特征,比如归纳偏置这样的特征。这一点作者也是表示疑问。这篇文章就是从第二点入手,使用卷积神经网络蒸馏DEiT。原创 2023-06-13 06:34:31 · 10019 阅读 · 0 评论 -
DEiT实战:使用DEiT实现图像分类任务(二)
训练的主要步骤:1、使用AverageMeter保存自定义变量,包括loss,ACC1,ACC5。2、判断迭代的数据是否是奇数,由于mixup_fn只能接受偶数,所以如果不是偶数则要减去一位,让其变成偶数。但是有可能最后一次迭代只有一条数据,减去后就变成了0,所以还要判断不能小于2,如果小于2则直接中断本次循环。3、将数据输入mixup_fn生成mixup数据,然后输入model计算loss。4、 optimizer.zero_grad() 梯度清零,把loss关于weight的导数变成0。原创 2023-06-13 06:34:24 · 9480 阅读 · 0 评论 -
DEiT实战:使用DEiT实现图像分类任务(一)
DEiT是FaceBook在2020年提出的一篇Transformer模型。该模型解决了Transformer难以训练的问题,三天内使用4块GPU,完成了ImageNet的训练,并且没有使用外部数据,达到了SOTA水平。DEiT提出的蒸馏策略只增加了对token的蒸馏,没有引入其他的重要架构。如下图:蒸馏令牌与类令牌的使用类似:它通过自注意力与其他令牌交互,并在最后一层后由网络输出。蒸馏令牌允许模型从老师的输出中学习,就像在常规蒸馏中一样,同时与类令牌保持互补。原创 2023-06-13 06:33:51 · 10031 阅读 · 2 评论 -
DEiT实战:使用DEiT实现图像分类任务(一)
DEiT是FaceBook在2020年提出的一篇Transformer模型。该模型解决了Transformer难以训练的问题,三天内使用4块GPU,完成了ImageNet的训练,并且没有使用外部数据,达到了SOTA水平。DEiT提出的蒸馏策略只增加了对token的蒸馏,没有引入其他的重要架构。如下图:蒸馏令牌与类令牌的使用类似:它通过自注意力与其他令牌交互,并在最后一层后由网络输出。蒸馏令牌允许模型从老师的输出中学习,就像在常规蒸馏中一样,同时与类令牌保持互补。原创 2023-06-13 06:32:11 · 203 阅读 · 0 评论 -
知识蒸馏IRG算法实战:使用ResNet50蒸馏ResNet18
复杂度的检测模型虽然可以取得SOTA的精度,但它们往往难以直接落地应用。模型压缩方法帮助模型在效率和精度之间进行折中。知识蒸馏是模型压缩的一种有效手段,它的核心思想是迫使轻量级的学生模型去学习教师模型提取到的知识,从而提高学生模型的性能。基于特征的(feature-based,例如VID、NST、FitNets、fine-grained feature imitation)原创 2023-06-13 06:29:36 · 9619 阅读 · 0 评论 -
RKD知识蒸馏实战:使用CoatNet蒸馏ResNet
知识蒸馏(Knowledge Distillation),简称KD,将已经训练好的模型包含的知识(”Knowledge”),蒸馏(“Distill”)提取到另一个模型里面去。原创 2023-06-13 06:30:43 · 9561 阅读 · 0 评论 -
【第20篇】知识蒸馏:Distilling the Knowledge in a Neural Network
提高几乎所有机器学习算法性能的一个非常简单的方法是用相同的数据训练许多不同的模型,然后对它们的预测[3]求平均值。不幸的是,使用整个模型集合进行预测是很麻烦的,而且可能计算成本太高,无法部署到大量用户中,特别是当单个模型是大型神经网络时。Caruana和他的合作者[1]已经证明,可以将集合中的知识压缩到一个更容易部署的单一模型中,我们使用不同的压缩技术进一步开发了这种方法。原创 2023-06-13 06:29:27 · 9436 阅读 · 0 评论 -
知识蒸馏算法汇总
知识蒸馏有两大类:一类是logits蒸馏,另一类是特征蒸馏。logits蒸馏指的是在softmax时使用较高的温度系数,提升负标签的信息,然后使用Student和Teacher在高温softmax下logits的KL散度作为loss。中间特征蒸馏就是强迫Student去学习Teacher某些中间层的特征,直接匹配中间的特征或学习特征之间的转换关系。例如,在特征No.1和No.2中间,知识可以表示为如何模做两者中间的转化,可以用一个矩阵让学习者产生这个矩阵,学习者和转化之间的学习关系。原创 2023-06-13 06:28:01 · 10683 阅读 · 0 评论 -
知识蒸馏实战:使用CoatNet蒸馏ResNet
知识蒸馏(Knowledge Distillation),简称KD,将已经训练好的模型包含的知识(”Knowledge”),蒸馏(“Distill”)提取到另一个模型里面去。原创 2023-06-13 06:24:51 · 10002 阅读 · 0 评论