用了这个方法,两周没变过的模型精度居然提升了(附资源)

2023-10-30 15:10

本文主要是介绍用了这个方法,两周没变过的模型精度居然提升了(附资源),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

作者 | Derrick Mwiti

译者 | 刘畅

编辑 | Jane

出品 | AI科技大本营(ID:rgznai100)

【导语】知识蒸馏是一种模型压缩技术,它利用训练好的大网络(教师网络)去教小网络(学生网络)。较小的网络经过训练后,可有类似于大网络的性能。这样就可以在诸如手机或其他移动端设备等小型设备上部署此类模型。在今天的文章中,将为大家介绍关于几个重要的知识蒸馏的工作进展。

一、神经网络的知识蒸馏

(Distilling the Knowledge in a Neural Network | NIPS 2014)

论文地址:https://arxiv.org/pdf/1503.02531.pdf

在本文中,作者训练了与大模型有相同泛化方式的小模型。在训练小模型的同时,使用大模型的类概率作为目标损失来传递大模型的泛化能力。如果大模型是各种简单模型的集合,则将其预测分布的几何或算术平均值作为目标损失。 

在测试知识蒸馏过程中,作者使用60,000个训练样本中训练了一个带有两个隐藏层的大型神经网络,每个隐藏层有1200个神经元。使用dropout和权重正则对网络进行了正则化。输入图像在任何方向上会抖动两个像素。该网络有67个测试结果错误的样例。较小的网络有两个隐藏层,每个隐藏层有800个线性神经元,没有正则化,则有146个错误结果。当通过将软目标与大网络匹配来对小网络进行正则化时,结果是仅获得了74个错误结果。

当该技术用于语音识别时,结果如下:

 

二、对比表征蒸馏

(Contrastive Representation Distillation)

论文与代码地址:

https://arxiv.org/pdf/1910.10699.pdf

https://github.com/HobbitLong/RepDistiller

这篇论文利用一系列对比目标来捕获相关性和高阶输出间的依赖关系。为了从一个神经网络到另一个神经网络的知识蒸馏,论文对其进行了适应性修改。

如下图所示,这篇论文考虑了以下三个蒸馏阶段:

  • 模型压缩

  • 将知识从一种方式(例如RGB)迁移到另一种方式(例如深度)

  • 将一组网络蒸馏成单一的网络

对比学习的主要思想是在某个度量空间中,尽量靠近正对之间的表示,同时远离负对之间的表示。

对比表示蒸馏(CRD)框架在以下情况中进行了测试:

  • 将大网络压缩成小网络

  • 跨模态的知识迁移

  • 将一组教师网络整体蒸馏到单个学生网络

该技术在CIFAR-100,ImageNet,STL-10,TinyImageNet和NYUDepth V2测试集上进行了测试。所获得的结果如下所示。

三、变分学生网络:在知识蒸馏框架中学习紧凑和稀疏的网络

(Variational Student: Learning Compact and Sparser Networks in Knowledge Distillation Framework)

 

论文地址:https://arxiv.org/pdf/1910.12061.pdf

本文提出的方法被称为变分学生网络。它结合了知识蒸馏框架的可压缩性和变分推理(VI)技术的稀疏诱导能力。作者构建了一个稀疏的学生网络。该网络的稀疏性是通过基于VI优化损失函数而找到的变量参数引起的。它通过利用从教师网络中学到的知识来完成的。

本文考虑了KD框架中的贝叶斯神经网络(BNN),学生网络采用了变量惩罚最小二乘目标函数。基于KD框架,这确保了学生网络与教师网络相比是相近的。它集成了稀疏技术,例如稀疏变量dropout(SVD)和变量贝叶斯dropout(VBD)。这使得到的稀疏学生网络的效果较好。

用这种方法获得的一些结果如下所示。

四、通过助教提升知识提取能力:减小学生网络与老师网络之间的鸿沟

(Improved Knowledge Distillation via Teacher Assistant: Bridging the Gap Between Student and Teacher,2019)

本文表明,当师生网络差距较大时,学生网络的性能会下降。本文介绍了一个助教方法——多步骤知识提炼——去弥补了学生网络和老师网络之间的鸿沟。该方法已经在CIFAR-10和CIFAR-100数据集上进行了测试。

论文地址:https://arxiv.org/pdf/1902.03393.pdf

本文介绍了教师助理知识蒸馏方法(TAKD),以及称为教师助理(TAs)的中间模型。TA模型是从教师网络那里提炼出来的,而学生仅从TA里蒸馏出来。

下面的图2显示了随着教师规模的增加,蒸馏性能的变化。图3显示减小学生规模可提高学生网络的表现

使用简单的CNN和ResNet架构对这种方法进行了评估。以下是通过不同TA大小获得的一些精度结果:

五、论知识蒸馏的功效

(On the Efficacy of Knowledge Distillation)

 

论文地址:https://arxiv.org/abs/1910.01348

本文主要涉及知识蒸馏技术有效地泛化学生网络训练的能力。根据作者的发现,教师网络的较高准确性不一定意味着学生网络的较高准确性。本文使用的网络体系结构有ResNet,WideResNet和DenseNet。

下图显示了在CIFAR10上从不同教师网络那里蒸馏的学生网络的误差图。

 

该实验也在ImageNet数据集上进行了验证,其中ResNet18为学生网络,ResNet18,ResNet34,ResNet50和ResNet152为教师网络。实验证明,更大的模型并不一定是更好的教师网络。

 

下图显示,更大的模型不能提供更好的教师网络的原因是学生网络无法模仿大型教师网络。

 

本文提出的解决方案是尽早停止教师网络训练,以获得更适合学生网络的解决方案。

 

六、一种有效估计视频中姿态的动态核蒸馏方法

(Dynamic Kernel Distillation for Efficient Pose Estimation in Videos)

 

论文地址:https://arxiv.org/pdf/1908.09216.pdf

在人体姿势估计中,会在视频的每帧上使用大型网络进行人体关节的定位。此过程通常会有大量的计算成本。本文的作者提出了一种动态核蒸馏(DKD)方法来应对这一问题。

DKD通过one-shot前馈方法来增强前一帧中的时间信息,并将轻量级的蒸馏器引入在线姿态提取。DKD将人体关节的定位简化为姿势核与当前帧之间的匹配过程。DKD将姿势知识从一个框架中转移出来,并为下一帧中的人体关节定位提供指导。这使得可以在基于视频的姿势估计中使用小型网络。 

通过利用时间对抗训练策略来实现训练过程。该策略引入了时间判别器,以在长时间范围内生成时间相关的姿态核和姿态估计结果。此方法已在Penn Action和Sub-JHMDB基准测试中进行了测试。

这种方法的体系结构如下所示。它由一个姿态初始化器,一个帧编码器,一个姿态核蒸馏器和一个时间对抗判别器组成。DKD使用姿势初始值来估计其置信度图。帧编码器负责从位姿核蒸馏器中提取高级特征以匹配位姿内核。姿势核蒸馏器将时间信息作为输入,并以one-shot前馈的方式提取姿势内核。并使用时间对抗判别器来增强姿态核蒸馏器的学习过程,并使用置信图变化作为辅助时间监督。

使用Penn Action数据集获得的一些结果如下所示:

这是Penn Action和Sub-JHMDB数据集获得的结果的比较。

七、DistilBERT,BERT的简化版本:更小,更快,更简洁,更轻巧

(DistilBERT, a distilled version of BERT: smaller, faster, cheaper and lighter | NeurIPS 2019)

论文地址:https://arxiv.org/pdf/1910.01108.pdf

本文提出了一种预训练较小的通用语言表示模型的方法,该模型称为DistilBERT(BERT的简化版本)。DistilBERT的体系结构与BERT相似。

与BERT相比,此方法的性能如下所示。

 DistilBERT使用动态掩膜方法在非常大的批次中利用梯度累积进行蒸馏,并且没有下一个句子的预测目标。它在BERT模型的原始语料库上进行了训练,并根据通用语言理解评估(General Language Understanding Evaluation, GLUE)基准上进行了评估。DistilBERT保留BERT 97%的性能,并且在速度上提高了60%。

总结

以上是最新的一些模型蒸馏方法。这些论文都已经公开了其代码实现,期待读者反馈你们跑了代码后的测试结果,看与作者是否一致。

原文链接:https://heartbeat.fritz.ai/research-guide-model-distillation-techniques-for-deep-learning-4a100801c0eb

好料推荐

关于知识蒸馏的工作远不止这七篇论文,为了方便大家学习与应用,给大家推荐一个Github项目:《Awesome Knowledge-Distillation》(分类整理的知识蒸馏paper | 2014-2020)。

一看项目名称就知道是备受大家喜爱的”Awesome“资源系列再加一员猛将。在这份知识蒸馏资源清单中,作者为大家整理了从2014年至2020年间被收录的论文,并且对它们分门别类,共约十大方向的近二十细分类别的 175 余篇论文。  

            

喜欢也可以给作者点个 Star 支持一下!

马上传送地址:

https://github.com/FLHonker/Awesome-Knowledge-Distillation

(*本文为AI科技大本营编译文章,转载请微信系1092722531)


精彩推荐

开幕倒计时9天|2019 中国大数据技术大会(BDTC)即将震撼来袭!豪华主席阵容及百位技术专家齐聚,十余场精选专题技术和行业论坛,超强干货+技术剖析+行业实践立体解读。6.6 折票限时特惠(立减1400元),学生票仅 599 元!

推荐阅读

  • 通俗易懂:8大步骤图解注意力机制

  • 神龙飞天,国士王坚

  • 迁移学习与图神经网络“合力”模型:用DoT-GNN克服组重识别难题

  • 15篇论文全面概览BERT压缩方法

  • 2097352GB地图数据,AI技术酷炫渲染,《微软飞行模拟器》游戏即将上线

  • 用Go重构C语言系统,这个抗住春晚红包的百度转发引擎承接了万亿流量

  • 日均350000亿接入量,腾讯TubeMQ性能超过Kafka

  • 华为电脑终于又能搭载正版 Windows 系统了!

  • 网易患病员工被保安赶出公司,程序员该如何应对中年危机?

  • 看完这篇还不了解Nginx,那我就哭了!

这篇关于用了这个方法,两周没变过的模型精度居然提升了(附资源)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/308766

相关文章

大模型研发全揭秘:客服工单数据标注的完整攻略

在人工智能(AI)领域,数据标注是模型训练过程中至关重要的一步。无论你是新手还是有经验的从业者,掌握数据标注的技术细节和常见问题的解决方案都能为你的AI项目增添不少价值。在电信运营商的客服系统中,工单数据是客户问题和解决方案的重要记录。通过对这些工单数据进行有效标注,不仅能够帮助提升客服自动化系统的智能化水平,还能优化客户服务流程,提高客户满意度。本文将详细介绍如何在电信运营商客服工单的背景下进行

Andrej Karpathy最新采访:认知核心模型10亿参数就够了,AI会打破教育不公的僵局

夕小瑶科技说 原创  作者 | 海野 AI圈子的红人,AI大神Andrej Karpathy,曾是OpenAI联合创始人之一,特斯拉AI总监。上一次的动态是官宣创办一家名为 Eureka Labs 的人工智能+教育公司 ,宣布将长期致力于AI原生教育。 近日,Andrej Karpathy接受了No Priors(投资博客)的采访,与硅谷知名投资人 Sara Guo 和 Elad G

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

Retrieval-based-Voice-Conversion-WebUI模型构建指南

一、模型介绍 Retrieval-based-Voice-Conversion-WebUI(简称 RVC)模型是一个基于 VITS(Variational Inference with adversarial learning for end-to-end Text-to-Speech)的简单易用的语音转换框架。 具有以下特点 简单易用:RVC 模型通过简单易用的网页界面,使得用户无需深入了

浅谈主机加固,六种有效的主机加固方法

在数字化时代,数据的价值不言而喻,但随之而来的安全威胁也日益严峻。从勒索病毒到内部泄露,企业的数据安全面临着前所未有的挑战。为了应对这些挑战,一种全新的主机加固解决方案应运而生。 MCK主机加固解决方案,采用先进的安全容器中间件技术,构建起一套内核级的纵深立体防护体系。这一体系突破了传统安全防护的局限,即使在管理员权限被恶意利用的情况下,也能确保服务器的安全稳定运行。 普适主机加固措施:

webm怎么转换成mp4?这几种方法超多人在用!

webm怎么转换成mp4?WebM作为一种新兴的视频编码格式,近年来逐渐进入大众视野,其背后承载着诸多优势,但同时也伴随着不容忽视的局限性,首要挑战在于其兼容性边界,尽管WebM已广泛适应于众多网站与软件平台,但在特定应用环境或老旧设备上,其兼容难题依旧凸显,为用户体验带来不便,再者,WebM格式的非普适性也体现在编辑流程上,由于它并非行业内的通用标准,编辑过程中可能会遭遇格式不兼容的障碍,导致操

透彻!驯服大型语言模型(LLMs)的五种方法,及具体方法选择思路

引言 随着时间的发展,大型语言模型不再停留在演示阶段而是逐步面向生产系统的应用,随着人们期望的不断增加,目标也发生了巨大的变化。在短短的几个月的时间里,人们对大模型的认识已经从对其zero-shot能力感到惊讶,转变为考虑改进模型质量、提高模型可用性。 「大语言模型(LLMs)其实就是利用高容量的模型架构(例如Transformer)对海量的、多种多样的数据分布进行建模得到,它包含了大量的先验

图神经网络模型介绍(1)

我们将图神经网络分为基于谱域的模型和基于空域的模型,并按照发展顺序详解每个类别中的重要模型。 1.1基于谱域的图神经网络         谱域上的图卷积在图学习迈向深度学习的发展历程中起到了关键的作用。本节主要介绍三个具有代表性的谱域图神经网络:谱图卷积网络、切比雪夫网络和图卷积网络。 (1)谱图卷积网络 卷积定理:函数卷积的傅里叶变换是函数傅里叶变换的乘积,即F{f*g}

秋招最新大模型算法面试,熬夜都要肝完它

💥大家在面试大模型LLM这个板块的时候,不知道面试完会不会复盘、总结,做笔记的习惯,这份大模型算法岗面试八股笔记也帮助不少人拿到过offer ✨对于面试大模型算法工程师会有一定的帮助,都附有完整答案,熬夜也要看完,祝大家一臂之力 这份《大模型算法工程师面试题》已经上传CSDN,还有完整版的大模型 AI 学习资料,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言