系列文章目录


文章目录

  • 系列文章目录
  • 【阅读笔记】【知识蒸馏】Self-Knowledge Distillation with Progressive Refinement of Targets
  • Abstract
  • Introduction
  • 相关工作
  • 自知识蒸馏(Self-Knowledge Distillation)
    • 3.1 知识蒸馏作为软目标
    • 3.2 从上一次预测中蒸馏知识
      • 理论支持
      • 实现
  • 4 实验结果
    • 4.1 CIFAR-100 分类
      • 实验设置
      • 实验Metrics
      • 实验结果
    • 4.2 ImageNet 分类任务
      • 实验设置
      • 结果
    • 4.3 目标检测
    • 4.4 机器翻译
  • 5 结论

【阅读笔记】【知识蒸馏】Self-Knowledge Distillation with Progressive Refinement of Targets

阅读笔记,非全文翻译


问题

  1. KL散度

Abstract

  • 提出了一个简单有效的正则方法:Progressive self-knowledge distillation (PS-KD),在训练过程中蒸馏自己的知识。
  • 一个模型既是教师,也是学生,即自己教自己。
  • 训练目标是由ground-truth和模型自己之前预测的结果组合而成的
  • 除了提升accuracy准确率,PS-KD还对calibration等指标有帮助
  • 开源代码

Introduction

  • 标签平滑LS的问题:有无更有效的方法来平滑标签,以获得更informative的标签
  • 作者提出PS-KD,从模型自身中蒸馏出知识来软化标签,再训练自己
  • 即使教师不如学生,学生也可以被加强
  • PS-KD可以被用在任意监督学习上,只要他的方法是使用groundtruth作为硬标签

相关工作

  • KD是用更大更好的网络产生软目标来训练学生网络
  • 有人尝试用学生自己训练自己,称为self-knowledge distillation
  • 有人尝试以减小相似图片特征的距离来训练网络
  • 有人提出class-wise self KD,关注同类别的样本,最小化两个样本在训练过程中的KL散度,该方法过拟合严重
  • 有人提出再生神经网络BANs
  • 有人提出TF-KD方法,用预训练的学生作为一个老师
  • 有人把DNN划分成几个块,然后分别加上辅助的分类器
  • 有人在特定epoch做一个snapshot作为老师
  • 本文的PS-KD:①不需要pretrained,如BANs和TFKD;②可以简单应用到监督学习上;③即使学生被一个poor的教师知道,KD也能起作用,使学生表现(更?)好

自知识蒸馏(Self-Knowledge Distillation)

3.1 知识蒸馏作为软目标

3.2 从上一次预测中蒸馏知识

  • 加强泛化能力
  • 使用t-1代的模型作为老师,因为它能提供最有价值的信息
  • α控制了我们有多相信从老师那里获取的知识
  • PS-KD(本文方法)中,老师的可信赖度是在变化的,因此alpha要变化,逐渐增加
  • 最终的Loss:

理论支持

实现

  • 用上一轮的模型,而不是保存上一轮的预测结果(太大了)

4 实验结果

4.1 CIFAR-100 分类

实验设置

实验Metrics

  • top1、top5作为准确率
  • NLL,ECE,AURC(越低越好)作为confidence的度量

实验结果




4.2 ImageNet 分类任务

尽管t-1代的知识可能过时了(因为t代会使用很多数据再学习一遍),但还是观察到了PS-KD对结果的提升。

实验设置

  • ResNet深度152,其他略

结果


  • PS-KD不管是分类对了还是错了,在看起来相似的类别上,都有更高的预测概率
  • baseline过度自信,分类错了

4.3 目标检测

  • Dataset
  • Baseline:Faster R-CNN,VGG-16换成ResNet-152
  • Methods:ResNet-152,with LS,PSKD,CSKD,TFKD,PSKD+CutMix
  • ResNet-152 with PSKD显著提升性能。
  • PSKD with CutMix效果更好。
  • 以上结果,只是替换了检测算法中的backbone network (VGG16–>Resnet152),PSKD使backbone network更强壮

4.4 机器翻译

  • 翻译实验(【疑问】分类在token级别,而不是input级别)
  • Baseline:Transformer
  • PSKD得到了最好的BLEU分数

5 结论

  • 提供了理论证明

【论文阅读】Self-Knowledge Distillation with Progressive Refinement of Targets相关推荐

  1. 论文阅读:Knowledge Distillation: A Survey 知识蒸馏综述(2021)

    论文阅读:Knowledge Distillation: A Survey 知识蒸馏综述2021 目录 摘要 Introduction Background 知识 基于响应的知识 基于特征的知识 基于 ...

  2. 论文阅读-TNNLS2021-Elastic Knowledge Distillation by Learning from Recollection

    Abstract 训练过程中历史记忆中的有效信息,来帮助模型学习:recollection构建和使用:不同capacity和不同训练阶段来建立不同的recollection:similarity-ba ...

  3. [论文解读]Explaining Knowledge Distillation by Quantifying the Knowledge

    Explaining Knowledge Distillation by Quantifying the Knowledge 简介 论文标题 Explaining Knowledge Distilla ...

  4. 论文翻译: Relational Knowledge Distillation

    Relational Knowledge Distillation 这是 CVPR 2019年的一篇文章的译文. 文章链接: Relational Knowledge Distillation 附上G ...

  5. 论文阅读《Knowledge Graph Refinement: A Survey of Approaches and Evaluation Methods》

    论文链接 一.谷歌的知识图谱 谷歌的知识图谱是在2012年向公众推出的,也是在这个时候,"知识图谱"这个术语被创造出来. 谷歌本身对于知识图谱的构建是相当保密的:只有少数外部来源讨 ...

  6. 论文阅读《Knowledge Collaborative Fine-tuning for Low-resource Knowledge GraphCompletion》

    论文链接 基于知识协同微调的低资源知识图谱补全方法 2022年3月发表于软件学报 是浙大prompt系列的一个延续 本文之前的工作: AdaPrompt: Adaptive Prompt-based ...

  7. 【论文阅读】Knowledge Enhanced GAN for IoT Traffic Generation

    CCF A 用于物联网流量生成的知识图谱增强 GAN Shuodi Hui, Huandong Wang, Zhenhua Wang, Xinghao Yang, Zhongjin Liu, Depe ...

  8. 论文阅读 Enhancing knowledge graph embedding with relational constraints

    Enhancing knowledge graph embedding with relational constraints 利用关系约束增强知识图嵌入 发表于:Neurocomputing 429 ...

  9. 《Progressive Growing of GANs for Improved Quality, Stability, and Variation》-论文阅读笔记

    <Progressive Growing of GANs for Improved Quality, Stability, and Variation>-论文阅读笔记 文章目录 <P ...

  10. 【没有哪个港口是永远的停留~ 论文简读】Relational Knowledge Distillation

    论文:Relational Knowledge Distillation [1]关系知识蒸馏,中的关系知识是啥? 如图1,很明显就是字面意思,传统的知识蒸馏是让学生输出与教师模型一致,而本论文提出,输 ...

最新文章

  1. PHP 实现Office word 关键词添加背景色
  2. python入门买什么书-关于 Python 的经典入门书籍有哪些?
  3. 『中级篇』docker之虚拟机创建vagrant技巧(番外篇)(81)
  4. promethues集成nomad
  5. Hejr 6-8 - aamsaafanqs Blog - Blogster
  6. CSS3 -webkit-transition(属性渐变)
  7. 使用Java流和In-JVM-Memory的超低延迟查询
  8. layui 表单动态添加、删除input框
  9. 输入这是我的第一个python程序_「vs2017」vs2017 开始自己的第一个Python程序 - seo实验室...
  10. (一二四)给类对象赋值、以及类对象的返回值
  11. 如何使用scss/sass
  12. ai python 面试_面试分享系列 | 17道Python面试题,让你在求职中无往不利
  13. Python3 发票导出XML转Excel
  14. Linux查看服务器自动关机,Linux系统自动关机的命令详解
  15. 02怎么学数据结构?
  16. ppt制作弹跳的小球动画效果_你不能错过的PPT制作酷炫弹跳的小球教程
  17. 板卡(单片机)与电脑PING不通的原因及解决方法
  18. 医学影像管理系统源码(PACS) PACS源码 PACS系统源码
  19. c++编程规范和范例
  20. golang 实现 pdf 转高清晰度 jpeg

热门文章

  1. 离职结婚面试买房蚂蚁上市—过山车般魔幻的2020
  2. 营业执照如何完整的转为Word格式?
  3. 字号与阿拉伯数字对应列表
  4. 【构造】POJ-3295 Tautology
  5. npm i安装命令中的-g -D -S的区别
  6. 高性能服务器开发基础系列 (七)——开源一款即时通讯软件的源码
  7. 达尔文服务器_达尔文与网络设计艺术
  8. Hadoop 推测执行
  9. 未经处理的异常:System.BadImageFormatException:“未能加载文件或程序集“GxIAPINET
  10. 第22章 声音与音乐