[特殊字符]【CVPR2024新突破】Logit标准化:知识蒸馏中的自适应温度革命[特殊字符]

文章信息

  • 题目:Logit Standardization in Knowledge Distillation
  • 论文地址:paper
  • 代码地址:code
  • 年份:2024年发表于CVPR

文章主题

文章的核心目标是改进知识蒸馏(KD)中的一个关键问题:传统KD方法假设教师和学生模型共享一个全局温度参数(temperature),这导致学生模型需要精确匹配教师模型的logit范围和方差。这种假设不仅限制了学生模型的性能,还忽视了教师模型内部logit关系对学生学习的重要性。为了解决这一问题,作者提出了一种新的方法——Logit Standardization,通过Z-score标准化和自适应温度调整,使学生模型能够专注于学习教师模型的logit关系,而不是logit的绝对值。

研究背景

知识蒸馏是一种将大型预训练模型(教师模型)的知识迁移到小型模型(学生模型)的技术。Hinton等人在2015年首次提出通过最小化教师和学生模型预测概率之间的Kullback-Leibler(KL)散度来实现知识蒸馏。传统KD方法中,教师和学生模型共享一个固定温度参数,用于软化预测概率。然而,这种方法忽略了教师和学生模型之间的容量差异,导致学生模型难以匹配教师模型的logit范围和方差。

研究贡献

  • 基于熵最大化原理,证明了KD中教师和学生模型可以使用不同的温度参数。
  • 提出了Logit Standardization方法,通过Z-score标准化和自适应温度调整,使学生模型能够专注于学习教师模型的logit关系。
  • 在CIFAR-100和ImageNet数据集上,验证了该方法对多种KD方法和模型组合的有效性。

研究方法

  1. Logit Standardization的提出

文章基于信息论中的熵最大化原理,重新推导了softmax函数,并证明了温度参数(temperature)实际上是一个拉格朗日乘子(Lagrangian multiplier),可以为每个样本和每个模型独立设置。基于这一理论,作者提出了Logit Standardization方法,通过以下步骤实现:

  • Z-score标准化:对教师和学生模型的logit输出进行Z-score标准化,使其均值为0,标准差为1。
  • 自适应温度调整:将温度设置为logit的标准差的加权值,使每个样本和每个模型可以有独立的温度。
  • 预处理步骤:在应用softmax和KL散度之前,对logit进行上述标准化处理。
    image
  1. 方法的优势
  • 零均值和有限方差:标准化后的logit具有零均值和有限方差,避免了传统KD中学生模型需要匹配教师模型logit范围和方差的限制。
  • 单调性和有界性:Z-score标准化保持了logit的原始排序关系,并将logit值限制在一个有界的范围内,避免了过大的指数值。
  • 灵活性:允许学生模型根据自身容量生成任意范围的logit,同时保留教师模型的logit关系。

实验

1. 数据集和模型

  • 数据集:CIFAR-100和ImageNet。
  • 模型:多种教师和学生模型组合,包括ResNet、WRN、VGG、MobileNet等。

2. 实验结果

image

  • CIFAR-100:在不同教师/学生模型组合下,Logit Standardization显著提升了传统KD方法(如KD、CTKD、DKD、MLKD)的性能。例如,KD方法在应用Logit Standardization后,Top-1准确率平均提升了1.11%~3.29%。
  • ImageNet:在大规模数据集上,Logit Standardization同样显示出一致的性能提升。例如,KD方法在应用Logit Standardization后,Top-1准确率提升了0.39%,Top-5准确率提升了0.24%。
  • 消融研究:通过调整基温度(base temperature)和KD损失权重(λKD),验证了Logit Standardization在不同配置下的有效性。结果表明,较大的KD损失权重能够更好地利用教师模型的“暗知识”,提升学生模型的性能。

3. 可视化和分析

image

  • Logit范围和方差:Logit Standardization使学生模型能够生成与教师模型不同范围的logit,同时在标准化后更好地匹配教师模型的logit关系。
  • 特征可视化:通过t-SNE可视化,Logit Standardization提高了学生模型的特征分离性和可辨别性。
  • 教师模型的蒸馏:对于大型教师模型,Logit Standardization能够更好地将知识迁移到小型学生模型,解决了传统KD中学生模型难以匹配大型教师模型logit的问题。

结论

文章通过理论分析和实验验证,证明了传统KD中共享温度的不合理性,并提出了Logit Standardization方法来解决这一问题。该方法作为一种预处理步骤,能够显著提升现有logit-based KD方法的性能,同时为知识蒸馏领域提供了一种新的视角:关注logit关系而非logit绝对值。

个人见解

这篇文章为知识蒸馏领域提供了一个重要的改进方向。通过重新审视传统KD中的温度参数,作者不仅从理论上揭示了其灵活性,还通过实验展示了其在实际应用中的显著优势,为模型压缩领域开辟了新方向。Logit标准化作为通用模块,有望成为新一代知识蒸馏的标准组件!

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

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

相关文章

CAM350_安装

版本:V14.5 一、安装 打开.exe文件 选择不重启,然后再打开这个.exe 再来一次类似的操作 二、配置 复制patch文件夹中的这三个 ,粘贴到掉安装目录中 设置ACT_INC_LICENSE_FILE用户环境变量来设置license管理 打开电脑的环境变量 破解完毕&am…

「Selenium+Python自动化从0到1②|2025浏览器操控7大核心API实战(附高效避坑模板))」

Python 自动化操作浏览器基础方法 在进行 Web 自动化测试时,操作浏览器是必不可少的环节。Python 结合 Selenium 提供了强大的浏览器操作功能,让我们能够轻松地控制浏览器执行各种任务。本文将详细介绍如何使用 Python 和 Selenium 操作浏览器的基本方法…

mysqldump 参数详解

mysqldump 是一个用于备份 MySQL 数据库的工具。它可以生成一组 SQL 语句,这些语句可以用来重现原始数据库对象定义和表数据。以下是一些常用的 mysqldump 参数及其详细解释: 常用参数 基本参数 --host=host_name, -h host_name: 指定 MySQL 数据库主机地址,默认为 localh…

【AD】3-9 物料BOM表的设置与导出

1.报告—… 2.筛选导出内容 3.进行选择导出格式 官方模板 亦可以自行修改其模板,AD官方的BOM表模板在安装目录下的Templates文件夹下(C:\Users\Public\Documents\Altium\AD24\Templates)

数据结构——布隆过滤器

目录 布隆过滤器概念 布隆过滤器实现 哈希函数 布隆过滤器类 加入到布隆过滤器 判断在不在 测试一下 为啥不写删除? 测试一下误判率 布隆过滤器概念 布隆过滤器也是一种位图结构,它可以快速的判断字符串在不在位图中。它的优点是节省空间。 …

C++题解(31) 2025顺德一中少科院信息学创新班(四期)考核:U537296 青蛙的距离 题解

(本人参与了这次考核) 题目背景 有n个池塘,每个池塘中有m只青蛙。这里的青蛙很奇怪,同一个池塘的青蛙喜欢排成一列,并且他们的位置都是有序的。 对于第i列的青蛙,他们分别在第a[i]个位置。 青蛙的距离定义…

软件工程复试专业课-测试

测试 1 软件质量2 黑盒测试2.1 概念2.2 等价划分类 2.3 边值分析2.4 错误推测2.5 因果图 3 白盒测试3.1概念3.2 覆盖标准3.2.1 语句覆盖3.2.2 判断覆盖3.2.3 条件覆盖3.2.4 判定/条件覆盖3.2.5 条件组合覆盖3.2.6 路径覆盖 4 软件测试的四个阶段5 测试工具 1 软件质量 定义&…

物以类聚的Kmeans:数据分群的暴力美学

物以类聚的Kmeans:数据分群的暴力美学 本文用三维可视化解析Kmeans聚类如何将混沌数据划出清晰边界,从算法原理、数学推导、评估指标到Python实战,揭示“无监督学习”的暴力美学与致命陷阱。 聚类算法 文章摘要 🔍 《Kmeans聚类…

正式页面开发-登录注册页面

整体路由设计: 登录和注册的切换是切换组件或者是切换内容(v-if和 v-else),因为点击两个之间路径是没有变化的。也就是登录和注册共用同一个路由。登录是独立的一级路由。登录之后进到首页,有三个大模块:文章分类&…

fopen的打开方式

fopen的打开方式 FILE *fopen(const char *filename, const char *mode); filename表示文件名字, mode表示打开的文件方式

Docker 常用指令手册(学习使用)

CentOS Docker 实用指令手册 1. 安装与配置 # CentOS 安装Docker sudo yum install -y yum-utils sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo yum install docker-ce docker-ce-cli containerd.io sudo systemctl st…

PostgreSQL中的外键与主键

在 PostgreSQL 中,外键(Foreign Key) 是一种用于建立表间关联的数据库约束机制,其核心作用与主键(Primary Key)有显著区别。以下是详细解析: 一、外键的定义与作用 定义 外键是表中的一个或多个…

NFC拉起微信小程序申请URL scheme 汇总

NFC拉起微信小程序,需要在微信小程序开发里边申请 URL scheme ,审核通过后才可以使用NFC标签碰一碰拉起微信小程序 有不少人被难住了,从微信小程序开发社区汇总了以下信息,供大家参考 第一,NFC标签打开小程序 https://…

如何使用clip模型进行OOD

使用CLIP模型进行OOD检测(Out-of-Distribution Detection) 的核心思路是:利用CLIP的多模态对齐能力(图像和文本的联合嵌入空间),通过计算输入样本与已知类别语义的匹配度,判断其是否属于已知分布。 CLIP的…

Word 插入图片会到文字底下解决方案

一、现象描述 正常情况下,我们插入图片都是这样的。 但有时突然会这样,插入的图片陷于文字底部。 二、网上解决方案 网上有教程说,修改图片布局选项,从嵌入型改成上下型环绕。改完之后确实有用,但是需要手动拖动图片…

1. HTTP 数据请求

相关资源: 图片素材📎图片素材.zip 接口文档 1. HTTP 数据请求 什么是HTTP数据请求: (鸿蒙)应用软件可以通过(鸿蒙)系统内置的 http 模块 和 Axios,通过 HTTP 协议和服务器进行通讯 学习核心Http请求技术: Http模块 - 属于鸿…

【我的 PWN 学习手札】House of Husk

House of Husk House of Husk是利用格式化输出函数如printf、vprintf在打印输出时,会解析格式化字符如%x、%lld从而调用不同的格式化打印方法(函数)。同时C语言还提供了注册自定义格式化字符的方法。注册自定义格式化字符串输出方法&#xf…

CTF-web: 查看python代码抽象语法树

抽象语法树(Abstract Syntax Tree,简称 AST)是源代码的树状表示,展示了代码的语法结构。在 Python 中,ast 模块可以帮助你解析和操作 Python 代码的 AST。 1. 使用 ast 模块解析 Python 代码 我们可以使用 ast.parse …

【多模态】Magma多模态AI Agent

1. 前言 微软杨建伟团队,最近在AI Agent方面动作连连,前两天开源了OmniParser V2,2月26日又开源了Magma,OmniParser专注在对GUI的识别解析,而Magma则是基于多模态技术,能够同时应对GUI和物理世界的交互&…

Linux系统Pycharm界面卡死无法显示其他界面

1、使用如下代码查看Pycharm的进程 ps aux | grep pycharm2、使用kill关闭所有pycharm进程 kill -9 <替换为你进程的PID>不确定可以执行如下代码&#xff0c;直接全部关闭&#xff1a; pkill -9 -f pycharm3、如果界面还是存在并且仍然卡死 如果 pycharm 界面仍然显…