深度神经网络知识蒸馏综述

Figure1.Typicaldeepneuralnetworkknowledgedistillationframework

知识蒸馏方法中的“知识”可以宽泛和抽象地理解成模型参数、网络提取的特征和模型输出等。现有的深度神经网络蒸馏方法根据学习位置的不同可分为基于最后输出层的蒸馏方法、基于中间结果层的蒸馏方法以及基于激活边界的蒸馏方法;根据学习方式的不同可分为基于自我学习的蒸馏方法和基于对抗学习的蒸馏方法。本文将对知识蒸馏各个类别的代表性研究成果进行详细介绍。

2.基于最后输出层的蒸馏方法

目前以BERT为代表的一系列大规模的预训练语言模型成为了自然语言处理领域的流行方法,它们在许多自然语言处理任务上能够取得非常优异的成果,但是这些模型结构十分庞大,且需要大量的数据和设备资源来完成训练过程。2019年Tang等人[18]提出了一种对Bert模型进行知识蒸馏的方法,将Bert模型蒸馏成Bi-LSTM模型。该方法与经典的蒸馏网络类似,其损失函数由两部分组成:Bi-LSTM与真实标签之间的交叉熵以及教师和学生网络的概率分布(Logits)之间的均方误差。

3.基于中间结果层的蒸馏方法

在深度学习中,一般将网络隐藏层的输出看作模型所学习到的特征。基于中间结果层的模型蒸馏方法利用网络中间隐藏层学习到的特征作为知识,指导学生模型学习。

文献[20]提出了基于注意力迁移的蒸馏方法(AttentionTransfer,AT),其本质是指导中间结果的输出,使得学生网络能够模仿教师网络中间层的注意力特征图(AttentionMaps),从而显著提高学生模型的性能。

Huang等人[21]提出了一种神经元选择性知识蒸馏方法,该方法训练学生网络使其中间层的激活分布与教师中间层的激活分布对齐,采用最大均值差异作为损失函数,衡量教师和学生模型特征之间的差异。

4.基于激活边界的蒸馏方法

从分类的决策边界角度分析,一个关键的问题是分类边界样本的分类问题。简单的小模型真正的弱点在于对边界样本的分类困难,而大模型处理边界的能力优于小模型,因此可以利用学生模型学习教师模型的边界分布,从而实现对教师模型的蒸馏。

Heo等人[23]提出一种AB激活边界学习法进行知识蒸馏,他们认为在模型蒸馏的过程中,不能只利用神经元的激活值来进行蒸馏约束,还应该使用神经元的激活区域进行约束。该方法通过最大化边界误差来引导学生模型获得更强的边界约束能力。此外,Heo等人[24]还提出一种利用对抗样本进行边界激活学习的方法,该方法利用对抗攻击策略来发现位于决策边界的样本。为了能够更准确地传达关于决策边界的信息,该文献基于对抗边界样本训练学生分类器,以提升学生网络对决策边界的鉴别能力。

5.基于自我学习的蒸馏方法

根据学习方式的不同,深度神经网络蒸馏方法又可分为基于自我学习的蒸馏方法和基于对抗学习的蒸馏方法。基于自我学习的蒸馏方法不同于传统的教师–学生形式的拟合教师蒸馏框架,自蒸馏不是训练学生网络去拟合教师网络的输出,而是在网络内部对知识进行蒸馏。

Zhang等人[25]提出了一种自我学习的方法用于知识蒸馏,它通过缩小卷积神经网络的规模来显著提高卷积神经网络的性能(准确性)。该方法首先将网络划分为几个部分,然后将网络较深部分的知识压缩到较浅部分,即蒸馏策略中教师模型与学生模型来自于同一个模型,该方法可以降低蒸馏学习的复杂度。

与自学习的蒸馏方法类似,相互学习策略中也不存在教师模型,而是多个模型之间的学习。[26]提出一种深度互学习方法,该方法的主要目的是为了提升模型的效果,而不过多的考虑模型压缩。该方法对多个学生网络同时进行训练,并利用多个网络的输出结果来相互借鉴、共同学习。各个模型的损失函数包括两部分:1)经典的真值与输出值之间的交叉熵;2)不同模型输出分布之间的KL散度(Kullback-LeiblerDivergence)。

Meng等人[27]提出一种新的知识嫁接的方法,旨在提高深度神经网络的表示能力。该方法并行地训练多个网络,并对网络的参数进行重要性排序,利用并行网络中的有效权重来替换当前网络中不重要的权重。为了更好地执行嫁接过程,他们提出了一种基于熵的准则来测量滤波器的信息量,并提出了一种自适应加权策略来平衡网络间的嫁接信息。

6.基于对抗学习的蒸馏方法

基于对抗学习的蒸馏方法利用生成对抗网络(GAN)来进行模型蒸馏。Xu等人[28]提出一种使用生成对抗网络进行知识蒸馏的方法,利用条件对抗网络来学习损失函数,以实现知识从教师网络到学生网络的转移。该方法将学生网络作为生成器,生成概率分布结果(Logits),使用预训练好的教师网络获取输入数据的输出概率分布,然后使用判别器来判别学生网络的输出和教师网络的输出,最终的学习目标为判别器无法区分学生网络和教师网络的输出。

7.总结与展望

现阶段深度神经网络知识蒸馏方法大多针对模型结构进行蒸馏,考虑在许多实际应用场景中,不仅有计算资源和存储空间的限制,还存在着在线和离线特征不一致的问题。知识蒸馏方向未来的发展不仅要对复杂深度学习模型的结构进行蒸馏,还应该考虑对模型的输入特征进行蒸馏,利用教师模型将在线计算阶段难以获取到的特征直接蒸馏到学生模型中,使得学生模型在线预测时不需要加入离线特征,从而减少学生模型的特征输入并提升模型性能。

THE END
1.算法进阶深度学习知识蒸馏的研究综述(建议收藏!)知识蒸馏网络结构中间层知识所表达的是深度神经网络的中间层部件所提取出的高维特征,具有更具表征能力的特征知识。中间层知识可以提高传输知识的表征能力和信息量,有效提升蒸馏训练效果。但是不同架构的教师学生模型的中间层知识表征空间通常难以直接匹配基于中间层知识的蒸馏方法在实践中通常需要考虑教师和学生模型的网络结构,可以将其分为https://blog.csdn.net/csdn_xmj/article/details/141681981
2.Science:神经网络模型的特征学习机制澎湃号·湃客澎湃新闻神经网络一直在推动人工智能的突破,包括现在在金融、人力资源和医疗保健等各个领域中广泛使用的大语言模型。神经网络通过反向传播和梯度下降等方法,在输入数据上自动地“发现”有意义的模式或特征。揭秘特征学习的机制一直是悬而未决的问题,但这是提高神经网络性能和可解释性的关键。 https://www.thepaper.cn/newsDetail_forward_26894581
3.神经网络极简入门人工智能EquatorCoco因为一只果蝇就有 10 万个神经元,而人类的大脑则有大约 1000 亿个神经元,这就是为什么训练一个可用的神经网络模型需要庞大的算力,这也是为什么神经网络的理论1943 年就提出了,但是基于深度学习的AlphaGO却诞生于2015 年。 2. 实现一个神经网络 了解上面的基本概念只能形成一个感性的认知。下面通过自己动手实现一个https://xie.infoq.cn/article/4f0fa17683253084f4fb69ce4
4.机器学习——神经网络与深度学习:从基础到应用深度学习在图像识别中表现出色。卷积神经网络(CNN)能够从图像数据中提取层次化特征,从而实现物体检测、人脸识别、医学图像分析等任务。例如,在医疗领域,CNN被用于分析X光片、CT扫描图像,以辅助医生做出诊断。 自然语言处理(NLP) NLP任务包括文本分类、情感分析、机器翻译、语音识别等。基于Transformer架构的预训练模型(如https://cloud.tencent.com/developer/article/2456527
5.一种基于知识和耦合神经网络实例混合推理的智能CAPP策略研究【摘要】:提出一种新的耦合神经网络的实例与知识混合推理策略。采用面向对象的方法表达实例和知识 ,并将神经网络用于实例推理中 ,在此基础上实现了 CAPP的变异设计。建立了基于零件及其工艺数据知识的分层分解表达模式与层次式优化推理机制 ,从而实现了 CAPP的创成式设计。给出智能化 CAPP系统的总体结构 ,对基于神经https://www.cnki.com.cn/Article/CJFDTotal-ZGJX200012005.htm
6.一种基于知识蒸馏的量化卷积神经网络FPGA部署AET一种基于知识蒸馏的量化卷积神经网络FPGA部署 引言 我国心血管病(Cardiovascular Disease,CVD)发病率和死亡率仍在升高,在我国城乡居民疾病死亡构成比中,CVD占首位[1]。提前预防和诊断CVD是目前很重要的医疗问题。24 h动态心电图可以在较长时间内对人体心脏安静和活动状态下的心电图变化情况进行记录、编集和分析,进而http://m.chinaaet.com/tech/designapplication/3000164860
7.吕盛坪基于空间力系对三维点云模型的力学分析软件, 2022SR0578666,2022/3/24 吕盛坪;李鑫;信德全;张胡成.基于改进Knn算法的邮政编码快速识别软件V1.0,2022SR1435370,2022/8/17 吕盛坪;李鑫;信德全;张胡成.基于深度卷积神经网络的形状识别软件V1.0,2022SR1435323, 2022/8/17 吕盛坪;李鑫;欧阳斌;赵贺杰.计算机视觉技术https://gcxy.scau.edu.cn/2015/0525/c2101a71262/page.htm
8.基于知识图谱的推荐算法研究综述Wang等[3]提出了一种将知识图谱表示引入到新闻推荐中的深度知识感知网络DKN。该模型利用Kim CNN[61]从新闻标题中提取实体,并进行实体链接,通过TransD将从原始知识图谱中提取的实体的关系链接子图构建特征向量,还使用实体的近邻实体提取实体的上下文信息。最后使用多通道和单词实体对齐的知识感知卷积神经网络KCNN,将单词语https://www.fx361.com/page/2023/0113/16791653.shtml
9.面向植物病害识别的卷积神经网络精简结构Distilled卷积神经网络(CNN)的发展带来了大量的网络参数和庞大的模型体积,极大地限制了其在小规模计算资源设备上的应用。为将CNN应用在各种小型设备上,研究了一种基于知识蒸馏的结构化模型压缩方法。该方法首先利用VGG16训练了一个识别率较高的教师模型,再将该模型中的知识通过蒸馏的方法迁移到MobileNet,从而大幅减少了模型的参https://www.smartag.net.cn/article/2021/2096-8094/2096-8094-2021-3-1-109.shtml
10.一种基于多模态知识图谱的作业安全风险识别方法.pdf于,对所述电力现场作业数据进行知识抽取包括文本数据的关键信息抽取,包括以下步骤: 获取数据类型为文本数据的电力现场作业数据; 对电力现场作业数据中的实体和关系类型进行定义; 抽取部分数据类型为文本数据的电力现场作业数据并根据定义进行标注,得到训练 集; 构建基于注意力机制的分段卷积神经网络模型; 通过所述训练集对https://m.book118.com/html/2024/0117/6050033233010034.shtm
11.自动驾驶中的决策规划算法概述该类模型主要包括:基于规则的推理系统[8]、基于案例的推理系统[9]和基于神经网络的映射模型[10]。 该类模型对先验驾驶知识、训练数据的依赖性较大,需要对驾驶知识进行精心整理、管理和更新,虽然基于神经网络的映射模型可以省去数据标注和知识整合的过程,但是仍然存在以下缺点: https://maimai.cn/article/detail?fid=1632742005&efid=-v_3-yQZIF8tka6AIpwz5A
12.科学网—智能化金融科技创新监管工具:理念平台框架和展望而且,上述各种技术是彼此互补、交叉融合的:区块链为知识图谱和神经网络提供源源不断的可信数据,神经网络基于海量高质量数据样本进行模型训练,知识图谱则不停地从数据中抽取出监管规则和领域知识[26],保障算法在运行安全上的可靠性以及应用实践上的可解释性。该过程交替往复、循环推进,使得创新监管工具本身也在持续进行https://blog.sciencenet.cn/blog-2374-1261704.html