0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

TPAMI 2023 | 用于视觉识别的相互对比学习在线知识蒸馏

智能感知与物联网技术研究所 来源:未知 2023-09-19 10:00 次阅读

本次文章介绍我们于 TPAMI-2023 发表的一项用于视觉识别的相互对比学习在线知识蒸馏(Online Knowledge Distillation via Mutual Contrastive Learning for Visual Recognition)工作,该工作是我们发表在 AAAI-2022 论文 Mutual contrastive learning for visual representation learning [1] 的扩展版本,论文讲解链接为:

https://zhuanlan.zhihu.com/p/574701719 摘要:无需教师的在线知识蒸馏联合地训练多个学生模型并且相互地蒸馏知识。虽然现有的在线知识蒸馏方法获得了很好的性能,但是这些方法通常关注类别概率作为核心知识类型,忽略了有价值的特征表达信息 本文展示了一个相互对比学习(Mutual Contrastive Learning,MCL)框架用于在线知识蒸馏。MCL 的核心思想是在一个网络群体中利用在线的方式进行对比分布的交互和迁移。MCL 可以聚合跨网络的嵌入向量信息,同时最大化两个网络互信息的下界。这种做法可以使得每一个网络可以从其他网络中学习到额外的对比知识,从而有利于学习到更好的特征表达,提升视觉识别任务的性能。 相比于会议版本,期刊版本将 MCL 扩展到中间特征层并且使用元优化来训练自适应的层匹配机制。除了最后一层,MCL 也在中间层进行特征对比学习,因此新方法命名为 Layer-wise MCL(L-MCL)。在图像分类和其他视觉识别任务上展示了 L-MCL 相比于先进在线知识蒸馏方法获得了一致的提升。此优势表明了 L-MCL 引导网络产生了更好的特征表达。wKgZomUKAUeABfUfAAJfiDQnJmM755.png

论文地址:

https://arxiv.org/pdf/2207.11518.pdf

代码地址:

https://github.com/winycg/L-MCL

wKgZomUKAUeAboOzAAAl6LOgh3c565.png

引言

传统的离线知识蒸馏需要预训练的教师模型对学生模型进行监督。在线知识蒸馏在无需教师的情况下同时联合训练两个以上的学生模型。深度相互学习(Deep Mutual Learning,DML)[2]表明了模型群体可以从相互学习类别概率分布(图像分类任务最后的输出预测)中获益。每一个模型在同伴教授的模式下相比传统的单独训练效果更好。 现有的在线知识蒸馏方法通常仅仅关注结果驱动的蒸馏,但是忽略了在线蒸馏特征方面的应用。虽然先前的 AFD [3]尝试通过在线的方式在多个网络间对齐中间特征图,Zhang 等人[2]指出这种做法会减少群体多样性,降低相互学习能力。为了学习更有意义的特征嵌入,我们认为一个更好的方式是从视觉表征学习角度的对比学习。

wKgaomUOseuAHCKqAAM2USl54_8152.png

▲ 图1. 相互对比学习基本思想示意图 图中, 分别表示两个不同的网络, 是推理来自网络 和输入样本 产生的特征向量。虚线和箭头代表要逼近或者远离的方向。从图中可以看出,MCL 包含了朴素对比学习(Vanilla Contrastive Learning,VCL)和交互式对比学习(Interactive Contrastive Learning,ICL)。 相比于传统的 VCL,提出的 ICL 从两个不同网络间建模对比相似度分布。本文证明 ICL 的误差函数等价于最大化两个网络互信息的下界,这可以被理解为一个网络可以学习到另外网络额外的知识。 MCL 主要是发表于 AAAI-2022 的方法,期刊版本将 MCL 从卷积网络的最后一层扩展到多个模型的中间特征层,命名为 Layer-wise MCL。此外,传统的中间特征层蒸馏使用手工的匹配,本文则提出一个自适应的层匹配机制,然后通过元优化来训练该机制。

wKgZomUKAUiAUx54AAAuhh9-KLM583.png

方法

2.1. 相互对比学习MCL(AAAI-2022)

wKgaomUOsneANvyiAANja2j-FVo357.png

▲ 图2. 相互对比学习整体示意图

2.1.1 传统对比学习(Vanilla Contrastive Learning,VCL) 为了便于描述,本方法将 anchor 样本向量表示为 , 正样本向量表示为 个负样本向量表达 表示向量产生自网络 。这里,特征向量通过 标准化进行预处理。使用基于 InfoNCE 的交叉熵作为对比误差:wKgZomUKAUiAfLcVAABApOxJsHE674.png  对于总共 个网络来说,所有的对比误差表示为:

wKgZomUKAUiAKCIQAAArDByt5ss241.png

2.1.2 交互式对比学习(Interactive Contrastive Learning,ICL) VCL 不能建模跨网络的关系来进行联合学习,因为对比分布来自于网络自身的嵌入空间。ICL 的 anchor 样本与对比样本产生自不同的网络,但在误差形式上依旧与传统的对比学习误差相同:

wKgZomUKAUmAeXmWAABDzUNsmsE873.png

对于总共 个网络来说,所有的对比误差表示为:wKgZomUKAUmAHottAAA6ziYm6K4293.png理论分析: 相比于误差 ,最小化 等价于最大化网络 互信息 的下界:

wKgZomUKAUmAJPTeAAAyml4f5m0589.png

直觉上,当来自 的 anchor 特征向量已知时,互信息 衡量了来自 对比特征向量的不确定性,这可以理解为每一个网络可以从其他网络中学习到对比知识,从而更有利于表征学习。

2.1.3 基于在线相互迁移的软对比学习 收到深度相互学习(Deep Mutual Learning,DML)[1] 的启发,本方法利用 KL 散度来对齐网络间的对比分布,根据本文提出的两种对比学习方法 VCL 和 ICL 来进行对比分布的双向迁移:

2.1.3.1 Soft VCL: 对于产生 的分布 来说,其监督信号是其他网络产生的分利用 KL 散度使得 与其他分布接近:

wKgZomUKAUmATx-zAAA3kjsNkMY187.png

2.1.3.2 Soft ICL 给定两个网络 ,可以得到两个ICL对应的对比分布 ,使用 KL 散度的形式使得两个分布尽可能接近。对于 个网络来说,每两个网络进行对比分布的迁移:

wKgZomUKAUmARWnNAAA9miXxmxg021.png

2.1.4 MCL的整体误差 为了尽可能利用联合学习的优势,本方法将所有的对比误差项作为一个整体的误差训练 个网络:

wKgZomUKAUmAUCrKAABBz-kLkaA478.png

2.2 逐层的相互对比学习(Layer-wise MCL)

wKgZomUOspuAVn9JAAFqZvww3EU238.png

▲ 图3. 一对一匹配和加权的多对多匹配示意图 2.2.1 基础框架 给定网络群每一个网络具有 个阶段,原始的 MCL 在最后的特征嵌进行学习。Layer-wise MCL(L-MCL)进一步扩展相互对比学习到中间特征层和最后特征层,并且采用跨层的方式。wKgZomUKAUqAFi2ZAAA-leMt4VM032.png下一个章节,本文展示如何利用元网络 来优化匹配权重

2.2.2 训练元网络 2.2.2.1 交叉熵任务误差 使用交叉熵误差训练 个网络:wKgZomUKAUqAcww5AABCUHA4NyM973.png  将基础的任务误差和 L-MCL 误差相加作为总误差来进行特征层面的在线蒸馏误差:

wKgZomUKAUqAcLFWAABDIeiIkp4346.png

2.2.2.2 元优化 受到元学习的启发,本文采用交替优化的方式来训练学生网络和元网络: (1)更新 次最小化 (2)更新 来一次最小化 (3)衡量 并且更新 来最小化它。

2.2.2.3 元网络 结构元网络包含了两个线性转换 来对输入的特征向量 进行转换。转换之后,特征向量通过 正则化 来进行标准化。受到自注意力机制的启发,本文利用点乘得到匹配特征的相似性,从而衡量匹配层的相关性,然后引入 sigmoid 激活函数 来将输出值缩放到 作为层匹配权重 。整体的过程被规则化为:

wKgZomUKAUqAdFh7AABLnhROiyo613.png

wKgZomUKAUuAAB5HAAAtJ0fTuoM713.png

实验

在 ImageNet 上的实验结果如下所示,表 1 和表 2 分别展示了两个同构和异构网络利用相互对比学习的实验结果。

wKgZomUKAUuAIbuWAAUoQv-V7W8394.png

▲ 表1. 两个同构网络利用相互对比学习的实验结果wKgZomUKAUuAWyzaAAct8aoAeQw188.png▲表2. 两个异构网络利用相互对比学习的实验结果 实验结果表明本文提出的 L-MCL 相比于 baseline 以及先前流行的在线知识蒸馏方法都获得了显著的性能提升,表明在多个网络之间使用特征层面的对比学习蒸馏相比概率分布效果更好。在下游的目标检测和实例分割实验上表明了该方法相比先前的蒸馏方法引导网络学习到了更好的视觉表征,从而提升了视觉识别效果。

wKgZomUKAUyABytXAAD3uYhd4hI895.png

▲ 表3. 通过在线蒸馏的预训练网络迁移到下游的目标检测和与实例分割的实验

wKgZomUKAUyAHFsxAAAC0jQz1zo003.jpg

参考文献

wKgZomUKAUyAHFsxAAAC0jQz1zo003.jpg  [1] Yang C, An Z, Cai L, et al. Mutual contrastive learning for visual representation learning[C]//Proceedings of the AAAI Conference on Artificial Intelligence. 2022, 36(3): 3045-3053.[2] Zhang Y, Xiang T, Hospedales T M, et al. Deep mutual learning[C]//Proceedings of the IEEE conference on computer vision and pattern recognition. 2018: 4320-4328.[3] Chung I, Park S U, Kim J, et al. Feature-map-level online adversarial knowledge distillation[C]//International Conference on Machine Learning. PMLR, 2020: 2006-2015. ·


原文标题:TPAMI 2023 | 用于视觉识别的相互对比学习在线知识蒸馏

文章出处:【微信公众号:智能感知与物联网技术研究所】欢迎添加关注!文章转载请注明出处。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 物联网
    +关注

    关注

    2869

    文章

    41622

    浏览量

    358380

原文标题:TPAMI 2023 | 用于视觉识别的相互对比学习在线知识蒸馏

文章出处:【微信号:tyutcsplab,微信公众号:智能感知与物联网技术研究所】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    语音识别的技术历程及工作原理

    语音识别的本质是一种基于语音特征参数的模式识别,即通过学习,系统能够把输入的语音按一定模式进行分类,进而依据判定准则找出最佳匹配结果。
    的头像 发表于 03-22 16:58 824次阅读
    语音<b class='flag-5'>识别的</b>技术历程及工作原理

    如何使用Python进行图像识别的自动学习自动训练?

    如何使用Python进行图像识别的自动学习自动训练? 使用Python进行图像识别的自动学习和自动训练需要掌握一些重要的概念和技术。在本文中,我们将介绍如何使用Python中的一些常用
    的头像 发表于 01-12 16:06 217次阅读

    AI视觉识别有哪些工业应用

    AI视觉识别涵盖多种应用,如人脸识别、目标检测和识别、图像分割、行为识别、视频分析等。本篇就简单介绍一下AI
    的头像 发表于 11-27 18:05 535次阅读
    AI<b class='flag-5'>视觉</b><b class='flag-5'>识别</b>有哪些工业应用

    任意模型都能蒸馏!华为诺亚提出异构模型的知识蒸馏方法

    相比于仅使用logits的蒸馏方法,同步使用模型中间层特征进行蒸馏的方法通常能取得更好的性能。然而在异构模型的情况下,由于不同架构模型对特征的不同学习偏好,它们的中间层特征往往具有较大的差异,直接将针对同架构模型涉及的
    的头像 发表于 11-01 16:18 536次阅读
    任意模型都能<b class='flag-5'>蒸馏</b>!华为诺亚提出异构模型的<b class='flag-5'>知识</b><b class='flag-5'>蒸馏</b>方法

    SMT元件极性识别的相关知识

    SMT元件贴装方向贴错指的是在PCB上放置元件时发生的错误,这些元件具有特定的定向性。这些电子元,例如二极管、电容器和集成电路,具有必须遵循的特定方向,那么今以下就是分享关于SMT元件极性识别的相关知识
    的头像 发表于 11-01 10:45 736次阅读
    SMT元件极性<b class='flag-5'>识别的</b>相关<b class='flag-5'>知识</b>

    深度学习在语音识别中的应用及挑战

    一、引言 随着深度学习技术的快速发展,其在语音识别领域的应用也日益广泛。深度学习技术可以有效地提高语音识别的精度和效率,并且被广泛应用于各种
    的头像 发表于 10-10 18:14 499次阅读

    上交提出RCLSTR:面向场景文本识别的关系对比学习

    基于MoCo[3]的框架,该文提出了用于文本识别的关系对比学习框架(RCLSTR)。如下图所示:1、在Online分支(上半部分)中引入了一个新的重排阶段,从原始分支中产生水平重排的图
    的头像 发表于 09-14 17:21 384次阅读
    上交提出RCLSTR:面向场景文本<b class='flag-5'>识别的</b>关系<b class='flag-5'>对比</b><b class='flag-5'>学习</b>

    求助,关于人脸识别demo的疑问

    PaddlePi的git仓库里边有个人脸识别的demo,使用了三个模型:detect.kmodel、feature.kmodel、key_point.kmodel,能否告知这三个模型使用的算法
    发表于 09-14 06:57

    生物识别和人脸识别的区别

      生物识别和人脸识别都是当今广泛应用于安全领域的技术。生物识别是一种基于个体生理和行为特征的识别技术,包括指纹
    发表于 08-28 17:29 884次阅读

    卷积神经网络用于图像识别的原理

    在机器视觉领域,图像识别是指软件识别人物、场景、物体、动作和图像写入的能力。为了实现图像识别,计算机可以结合人工智能软件和摄像机使用机器视觉
    发表于 08-20 09:56 897次阅读
    卷积神经网络<b class='flag-5'>用于</b>图像<b class='flag-5'>识别的</b>原理

    机器学习与数据挖掘的对比与区别

    机器学习与数据挖掘的对比与区别  机器学习和数据挖掘是当前互联网行业中最热门的领域之一。虽然它们之间存在一些对比和区别,但它们的共同点是研究如何有效地从海量数据中提取信息和洞察,并
    的头像 发表于 08-17 16:11 1156次阅读

    人脸识别的算法有哪些

    人脸识别的算法有哪些 人脸识别算法现在已经广泛应用于各个领域,如安防、商业、医疗等。人脸识别算法可以分为传统人脸识别算法和深度
    的头像 发表于 08-09 18:34 3555次阅读

    机器视觉与生物特征识别的关系

    机器视觉与生物特征识别的关系 机器视觉和生物特征识别是目前科技领域非常热门的方向。机器视觉是指利用电子设备来对物体进行
    的头像 发表于 08-09 17:43 495次阅读

    面部表情识别的技术实现

    面部表情识别是一项复杂的技术,需要综合运用计算机视觉、机器学习、深度学习等多种技术。本文将介绍面部表情识别的技术实现过程,包括图像采集、预处
    的头像 发表于 08-02 18:10 782次阅读

    基于一种新型的用于无声语音识别的贴片式智能传感器

    摘要:电子科技大学和格拉斯哥大学的研究人员合作开发了一种用于无声语音识别的贴片式智能传感器件,可以检测到说话时细微的喉咙振动,借助深度学习将其转化为可读的单词,这为语音控制和人机界面智能感知开辟
    的头像 发表于 06-17 10:27 815次阅读