蒸馏网络中的bias是指什么? —— 论文《Distilling the Knowledge in a Neural Network》—— 知识蒸馏
论文地址:
https://arxiv.org/pdf/1503.02531.pdf
在蒸馏网络中会遇到手动调整bias的说法,但是这个bias在论文中又没有明细说明是怎么个bias,具体论文出处:
If this bias is increased by 3.5
查询Gemini,得到回答:
Assuming you're referring to the previous sentence about logits, here's the translation with "If this bias is increased by 3.5":
如果将此偏差增加 3.5,则非常负的 logits 可能仍然包含来自复杂模型所学习知识的有用信息,但这些信息可能更难解读或利用。
Here's a breakdown of the addition:
如果将此偏差增加 3.5 (If this bias is increased by 3.5): This translates directly, indicating we're considering the scenario where the bias towards negative logits is amplified.
Explanation of the impact:
By increasing the bias towards negative logits, the model will become even more confident in assigning very low probabilities to certain categories.
While the logits might still hold some information about the model's learnings, it might be harder to interpret or leverage that information due to the stronger bias.
This could potentially make the model less accurate or adaptable.
给出蒸馏网络中核心公式,温度控制的logits:
个体神经网络(CNN模型):
CNN层 + 全连接层(输出的是logits) + softmax层(输出的是预测值概率P) + 交叉熵损失函数
在蒸馏网络中,Student网络是通过学习Teacher网络中的通过温度控制后的logits所形成的概率,也就是上面公式中的这个\(q_i\),上面的这个\(q_i\)是Teacher网络的,我们也需要构建Student网络得到一个对应的\(z_i^{'}\)并根据此得到对应的\({q}_i^{'}\),在得到Teacher网络的\(q_i\)和Student网络的\({q}_i^{'}\)后根据\(KL({q}_i, {q}_i^{'})\)来训练Student网络。
可以知道,在训练Teacher网络时是不使用温度系数Temperature的,在训练好Teacher网络后千亿训练Student网络时才分别在这两个网络的logits上加入Temperature系数,在训练好Student网络后使用Student网络进行测试的时候在移除掉这个Temperature系数;但是对于某些情况,如训练Student网络是缺少某一类class数据的训练时,就会导致训练好的Student网络对这一类数据的表现performance不好,这时候就可以通过手动为没有Temperature系数的logits加入一个bias来对此进行修正,具体形式为\(z_{i}=(z_{i}+bias_{i})\),注意,这里的i指的是class缺失的那个类。
注意,这里的手动给logits加bias并不是普遍操作,而是论文中单独讨论的一种情况,即在使用Teacher网络训练Student网络时缺少某一类数据的情况,这里这是纯学术research讨论之用;这里的讨论只是要说明使用Teacher网络训练Student网络时会具有Teacher网络本身训练时的所有类的信息,即使在使用Teacher网络训练Student网络时缺少这一类信息,其实Student网络也是可以学习到这个类的相关信息的,只不过这时需要手动调整Student网络测试时的logits的bias而已。
蒸馏网络中的bias是指什么? —— 论文《Distilling the Knowledge in a Neural Network》—— 知识蒸馏的更多相关文章
- 【DKNN】Distilling the Knowledge in a Neural Network 第一次提出神经网络的知识蒸馏概念
原文链接 小样本学习与智能前沿 . 在这个公众号后台回复"DKNN",即可获得课件电子资源. 文章已经表明,对于将知识从整体模型或高度正则化的大型模型转换为较小的蒸馏模型,蒸馏非常 ...
- 【论文考古】知识蒸馏 Distilling the Knowledge in a Neural Network
论文内容 G. Hinton, O. Vinyals, and J. Dean, "Distilling the Knowledge in a Neural Network." 2 ...
- Deeplearning知识蒸馏
Deeplearning知识蒸馏 merge paddleslim.dist.merge(teacher_program, student_program, data_name_map, place, ...
- Windows Azure 虚拟网络中虚拟机的网络隔离选项
最近我们发布了一份<Windows网络安全白皮书>(单击此处下载),文中深入说明了客户可以如何利用该平台的本地功能,为他们的信息资产提供最好的保护. 由首席顾问Walter Myer ...
- 深度学习卷积网络中反卷积/转置卷积的理解 transposed conv/deconv
搞明白了卷积网络中所谓deconv到底是个什么东西后,不写下来怕又忘记,根据参考资料,加上我自己的理解,记录在这篇博客里. 先来规范表达 为了方便理解,本文出现的举例情况都是2D矩阵卷积,卷积输入和核 ...
- 『TensorFlow』生成式网络中的图片预处理
简介 这里的生成式网络是广义的生成式,不仅仅指gan网络,还有风格迁移中的类自编码器网络,以及语义分割中的类自编码器网络,因为遇到次数比较多,所以简单的记录一下. 背景 1.像素和数字 图像处理目标一 ...
- 论文笔记:蒸馏网络(Distilling the Knowledge in Neural Network)
Distilling the Knowledge in Neural Network Geoffrey Hinton, Oriol Vinyals, Jeff Dean preprint arXiv: ...
- 网络中常见的ping命令协议
ICMP是"Internet Control Message Ptotocol"(Internet控制消息协议)的缩写.它是TCP/IP协议族的一个子协议,用于在IP主机.路由器之 ...
- Kubernetes用户指南(二)--部署组合型的应用、连接应用到网络中
一.部署组合型的应用 1.使用配置文件启动replicas集合 k8s通过Replication Controller来创建和管理各个不同的重复容器集合(实际上是重复的pods). Replicati ...
- p2p网络中的NAT穿透技术----常见NAT穿越解决方案
转:http://blog.csdn.net/cllzw/article/details/46438257 常见NA丁穿越解决方案 NAT技术在缓解IPv4地址紧缺问题.构建防火墙.保证网络安全等方面 ...
随机推荐
- golang sync.Once 保证某个动作仅执行一次的机制
type Once struct { done atomic.Uint32 m Mutex } 这段代码是 Go 语言标准库中 sync 包的一部分,定义了一个 Once 类型.Once 类型用于确保 ...
- Python 潮流周刊#55:分享 9 个高质量的技术类信息源!
大家好,我是猫哥,今天给大家分享几个高质量的技术类信息源. 本文分享的信息源都是周刊类型的,所谓周刊类,就是以固定每周的频率更新,每期分享很多精华内容的链接.它的特点是信息密度极高,可以节省你去查找信 ...
- Spring扩展——BeanPostProcessor(BPP)
BeanPostProcess简介 在Spring中 BeanPostProcessor 是一个非常重要的接口,它用于在每个bean对象初始化前后修改Bean的属性信息,比如我们最常用的@Autowi ...
- 燕千云 YQCloud 数智化业务服务管理平台 发布1.13版本
2022年6月10日,燕千云 YQCloud 数智化业务服务管理平台发布1.13版本.本次燕千云1.13版本新增了远程桌面.知识库多人在线协作.移动端疫苗核酸信息管理.单据委托代理.技能管理.产品自助 ...
- idea编译报错 Lombok运行测试类报错 jar依赖冲突解决
idea编译报错 Lombok运行测试类报错 jar依赖冲突解决 1.现象是idea编译,运行项目的时候是没有问题,可以正常跑起来.2.运行junit测试类的时候,报错提示 lombok找不到类,解决 ...
- llm-universe - 1
Smiling & Weeping ---- 难怪春迟迟不来,原来是我把雪一读再读 一.大型语言模型(LLM)理论简介 1 大型语言模型(LLM)的概念 大语言模型(LLM,Large Lan ...
- Jupyter QtConsole 配置,2023 年了你还在使用 QtConsole 吗?
目录 Jupyter QtConsole 配置,2023 年了你还在使用 QtConsole 吗? Jupyter QtConsole 的安装 设置字体 启动时自动加载需要的库包 更新:2023 年 ...
- 从github下好dirsearch后出现要下载文件依赖错误
pip3 install -r requirements.txt
- golang执行命令 && 实时获取输出结果
背景 golang可以获取命令执行的输出结果,但要执行完才能够获取. 如果执行的命令是ssh,我们要实时获取,并执行相应的操作呢? 示例 func main() { user := "roo ...
- UEFI与inf文件
UEFI与inf文件 背景 学习高通UEFI中的LCD显示框架,看到有些博客对inf文件进行了介绍,因此整理了这方面的一些入门知识. 参考: https://blog.csdn.net/yunfeng ...