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

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

3天内不再提示

基于生成模型的预训练方法

jf_pmFSk4VX 来源:GiantPandaCV 2023-08-11 09:38 次阅读

I实验

总结

参考

前言

a5179656-3784-11ee-9e74-dac502259ad0.png请添加图片描述

我们这次要介绍的文章被接收在 ICCV 2023 上,题为:DreamTeacher: Pretraining Image Backbones with Deep Generative Models,我认为是个挺强挺有趣的自监督方面的工作。DreamTeacher 用于从预训练的生成网络向目标图像 Backbone 进行知识蒸馏,作为一种通用的预训练机制,不需要标签。这篇文章中研究了特征蒸馏,并在可能有任务特定标签的情况下进行标签蒸馏,我们会在后文详细介绍这两种类型的知识蒸馏。

事实上,之前已经在 GiantPandaCV 上介绍过一种 diffusion 去噪自监督预训练方法:DDeP,DDeP 的设计简单,但去噪预训练的方法很古老了。然而,DreamTeacher 开创了如何有效使用优质的生成式模型蒸馏获得相应的知识。

补充:在 DDeP 这篇文章中,经过读者纠正,我们重新表述了加噪公式:a53ce0fa-3784-11ee-9e74-dac502259ad0.jpg

相关工作

Discriminative Representation Learning

最近比较流行的处理方法是对比表示学习方法,SimCLR 是第一个在线性探测和迁移学习方面表现出色的方法,而且没有使用类标签,相较于监督预训练方法。随后的工作,如 MoCo,通过引入 memory bank 和梯度停止改进了孪生网络设计。然而,这些方法依赖于大量的数据增强和启发式方法来选择负例,可能不太适用于像 ImageNet 这样规模的数据集。关于 memory bank 的概念,memory bank 是 MoCo 中的一个重要组件,用于存储模型的特征向量。在 MoCo 的训练过程中,首先对一批未标记的图像进行前向传播,得到每个图像的特征向量。然后,这些特征向量将被存储到内存库中。内存库的大小通常会比较大,足够存储许多图像的特征。训练过程的关键部分是建立正负样本对。对于每个样本,其特征向量将被视为查询向量(Query),而来自内存库的其他特征向量将被视为候选向量(Candidate)。通常情况下,查询向量和候选向量来自同一张图片的不同视角或数据增强的版本。然后,通过比较查询向量与候选向量之间的相似性来构建正负样本对。此外,还有一些其他方法和概念,我们就不在这篇解读文章中介绍了。

Generative Representation Learning

DatasetGAN 是最早展示预训练 GAN 可以显著改善感知任务表现的研究之一,特别是在数据标记较少的情况下。SemanticGAN 提出了对图像和标签的联合建模。推理过程首先将测试图像编码为 StyleGAN 的潜在空间,然后使用任务头部解码标签。DDPM-seg 沿着这一研究方向,但使用了去噪扩散概率模型(DDPMs)代替 StyleGAN。这篇文章继续了这一研究方向,但重点放在从预训练的生成模型中,特别是扩散模型,向下游图像主干中提取知识,作为一种通用的预训练方式。

关于相关工作部分中涉及到的方法,如果有疑惑的推荐阅读原文(链接在文末)。

DreamTeacher 框架介绍

DreamTeacher 框架能在两种场景下的工作:无监督表示学习和半监督学习。在无监督表示学习中,预训练阶段没有可用的标签信息,而在半监督学习中,只有部分数据拥有标签。框架使用训练好的生成模型 G 来传递其学到的表示知识到目标图像主干 f。无论在哪种场景下,框架的训练方法和所选的生成模型 G 与图像主干 f 的选择都是一样的。首先,它创建一个包含图像和相应特征的特征数据集 。然后,通过将生成模型的特征传递到图像主干 f 的中间特征中来训练图像主干 f。作者特别关注使用卷积主干 f 的情况,而对 Transformer 的探索留给未来的研究。

Unsupervised Representation Learning

对于无监督表示学习,给定一个特征数据集 D,在图像主干 f 的不同层次上附加特征回归器,以回归出对应的生成特征 从图像 中。我们首先如何讨论创建特征数据集,然后设计特征回归器,最后介绍蒸馏目标。创建特征数据集 D 的方法有两种。一种是通过从生成模型 G 中采样图像,并记录生成过程中提取的中间特征来创建合成数据集。这种方法可以合成无限大小的数据集,但可能会出现 mode dropping(生成模型可能没有学习到分布的某些部分)的问题。另一种方法是将实际图像通过编码过程编码到生成模型 G 的潜在空间中,然后记录生成过程中提取的中间特征,创建编码数据集。合成数据集适用于采样速度快、无法编码真实图像的生成模型(如 GAN),而编码数据集适用于具有编码器网络的生成模型(如 VAE)和扩散模型。这两种方法的特征数据集可以在离线预先计算,也可以在训练过程中在线创建,以实现快速的内存访问和高效的样本生成和删除,从而适用于任何大小的数据集和特征预训练,同时增加下游Backbone 网络的鲁棒性。DreamTeacher 框架的整体流程如下图所示,图里表示创建特征数据集 D 使用的是第二种方法。a55825d6-3784-11ee-9e74-dac502259ad0.png为了将生成式表示   蒸馏到通用主干 f 中,设计了一个特征回归器模块,将图像主干的多层特征映射并对齐到生成式特征上。受到 Feature Pyramid Network(FPN)的设计启发,特征回归器采用自顶向下的架构,并使用侧向跳线连接来融合主干特征,并输出多尺度特征。在图像主干的最后一层之前应用了类似于 PSPNet 中的金字塔池化模块(PPM),上图(底部)直观地描述了这个架构。接下来,我们关注如何做特征蒸馏的。将编码器 f 的不同级别的中间特征表示为 ,对应的特征回归器输出为 。使用一个 1×1 的卷积来匹配 和 的通道数,如果它们不同的话。特征回归损失非常简单,受到 FitNet 的启发,它提出了通过模拟中间特征激活将教师网络上的知识蒸馏到学生网络上:

在这里,W 是一个不可学习的白化算子,使用 LayerNorm 实现,用于对不同层次上的特征幅值进行归一化。层数 l = {2, 3, 4, 5},对应于相对于输入分辨率的 步长处的特征。

此外,这篇文章还探索了基于激活的注意力转移(AT)目标。AT 使用一个运算符 ,对空间特征的每个维度生成一个一维的“注意力图”,其中 |Ai| 表示特征激活 A 在通道维度 C 上的绝对值和。这种方法相比直接回归高维特征可以提高收敛速度。具体来说,AT 损失函数如下:

其中分别是回归器和生成模型在第 l 层中的特征的矢量形式中的第 j 对。

最后,综合特征回归损失为:

Label-Guided Representation Learning

a5b3ae7e-3784-11ee-9e74-dac502259ad0.png在这里插入图片描述

在半监督设置中,在预训练阶段在冻结的生成网络 G 之上训练了一个任务相关的分支,称为特征解释器,采用 DatasetGAN 的方法进行监督训练。与 DatasetGAN 合成用于训练下游任务网络的带标签数据集不同,DreamTeacher 改用软标签蒸馏,即在编码和合成的数据集中都包含了预测的软标签,也就是特征数据集 D 中包含了软标签。这在上图(d)中进行了可视化。

这篇文章探索了使用分割标签对解释器分支进行训练(半监督情景下),并使用交叉熵和 Dice 目标的组合来训练:

其中是特征解释器的权重,y 是任务标签。H(·, ·) 表示像素级的交叉熵损失,D(·, ·) 表示 Dice Loss。

对于标签蒸馏,使用以下损失函数:

其中 和 分别是特征解释器和目标图像主干 f 的 logits。H 是交叉熵损失,而 τ 是温度参数

将标签蒸馏目标与特征蒸馏目标相结合,得到混合损失函数:

使用混合蒸馏损失对预训练数据集中的所有图像进行预训练,无论是带标签还是无标签的。带标签的标签仅用于训练特征解释器,而 DreamTeacher 只使用特征解释器生成的软标签对图像主干 f 进行蒸馏预训练。

实验

在实验中,使用的生成模型包含:unconditional BigGAN、ICGAN、StyleGAN2;对于基于扩散的模型,使用了 ADM 和 stable diffusion 模型。使用的数据集包含:bdd100k、ImageNet-1k(IN1k-1M)、LSUN 和 ffhq。下表将 DreamTeacher 与 ImageNet 和 COCO 上的自监督学习的 SOTA 方法进行比较:

a5de9724-3784-11ee-9e74-dac502259ad0.png在这里插入图片描述

对于 Label-efficient 的语义分割 benchmark。下表将 DreamTeacher与各种表示学习基线进行比较。

a600acc4-3784-11ee-9e74-dac502259ad0.png下图是使用 DreamTeacher 特征蒸馏预训练的 ConvNX-B 模型在 LSUN-cat 无标签图像上的定性结果。

在这里插入图片描述

总结

这篇文章的研究聚焦于提出一种名为 DreamTeacher 的框架,旨在从生成模型向目标图像 Backbone 传递知识(知识蒸馏)。在这个框架下,进行了多个实验,涵盖了不同的 settings ,包括生成模型、目标图像 Backbone 和评估 benchmark。其目标是探究生成式模型在大规模无标签数据集上学习语义上有意义特征的能力,并将这些特征成功地传递到目标图像 Backbone 上。

通过实验,这篇文章发现使用生成目标的生成网络能够学习到具有意义的特征,这些特征可以有效地应用于目标图像主干。与现有自监督学习方法相比,这篇文章基于生成模型的预训练方法表现更为优异,这些 benchmark 测试包括 COCO、ADE20K 和 BDD100K 等。

这篇文章的工作为生成式预训练提供了新的视角和方法,并在视觉任务中充分利用了生成模型。在近两年的论文中,生成式预训练技术是一个比较有趣的方向。

责任编辑:彭菁

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

    关注

    2

    文章

    1083

    浏览量

    40418
  • 模型
    +关注

    关注

    1

    文章

    3172

    浏览量

    48714
  • 网络设计
    +关注

    关注

    0

    文章

    14

    浏览量

    7765
  • 数据集
    +关注

    关注

    4

    文章

    1205

    浏览量

    24644

原文标题:ICCV 2023:探索基于生成模型的 Backbone 预训练

文章出处:【微信号:GiantPandaCV,微信公众号:GiantPandaCV】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【大语言模型:原理与工程实践】大语言模型训练

    大语言模型的核心特点在于其庞大的参数量,这赋予了模型强大的学习容量,使其无需依赖微调即可适应各种下游任务,而更倾向于培养通用的处理能力。然而,随着学习容量的增加,对训练数据的需求也相
    发表于 05-07 17:10

    优化神经网络训练方法有哪些?

    优化神经网络训练方法有哪些?
    发表于 09-06 09:52

    微软在ICML 2019上提出了一个全新的通用训练方法MASS

    专门针对序列到序列的自然语言生成任务,微软亚洲研究院提出了新的训练方法:屏蔽序列到序列训练(MASS: Masked Sequence
    的头像 发表于 05-11 09:19 3466次阅读
    微软在ICML 2019上提出了一个全新的通用<b class='flag-5'>预</b><b class='flag-5'>训练方法</b>MASS

    新的训练方法——MASS!MASS训练几大优势!

    专门针对序列到序列的自然语言生成任务,微软亚洲研究院提出了新的训练方法:屏蔽序列到序列训练(MASS: Masked Sequence
    的头像 发表于 05-11 09:34 7061次阅读
    新的<b class='flag-5'>预</b><b class='flag-5'>训练方法</b>——MASS!MASS<b class='flag-5'>预</b><b class='flag-5'>训练</b>几大优势!

    检索增强型语言表征模型训练

    如果有一种训练方法可以 显式地 获取知识,如引用额外的大型外部文本语料库,在不增加模型大小或复杂性的情况下获得准确结果,会怎么样?
    的头像 发表于 09-27 14:50 1977次阅读

    一种侧重于学习情感特征的训练方法

    transformers编码表示)的基础上,提岀了一种侧重学习情感特征的训练方法。在目标领域的练阶段,利用情感词典改进了BERT的训练
    发表于 04-13 11:40 4次下载
    一种侧重于学习情感特征的<b class='flag-5'>预</b><b class='flag-5'>训练方法</b>

    介绍几篇EMNLP&apos;22的语言模型训练方法优化工作

    来自:圆圆的算法笔记 今天给大家介绍3篇EMNLP 2022中语言模型训练方法优化的工作,这3篇工作分别是: 针对检索优化语言模型 :优化语言模型
    的头像 发表于 12-22 16:14 959次阅读

    什么是训练 AI 模型

    训练 AI 模型是为了完成特定任务而在大型数据集上训练的深度学习模型。这些模型既可以直接使用,
    的头像 发表于 04-04 01:45 1415次阅读

    什么是训练AI模型

    训练 AI 模型是为了完成特定任务而在大型数据集上训练的深度学习模型。这些模型既可以直接使用,
    的头像 发表于 05-25 17:10 991次阅读

    基于医学知识增强的基础模型训练方法

          近年来,基于大数据训练的多模态基础模型 (Foundation Model) 在自然语言理解和视觉感知方面展现出了前所未有的进展,在各领域中受到了广泛关注。在医疗领域中,由于其任务
    的头像 发表于 07-07 11:10 769次阅读
    基于医学知识增强的基础<b class='flag-5'>模型</b><b class='flag-5'>预</b><b class='flag-5'>训练方法</b>

    基础模型自监督训练的数据之谜:大量数据究竟是福还是祸?

    大型语言模型如 ChatGPT 的成功彰显了海量数据在捕捉语言模式和知识方面的巨大潜力,这也推动了基于大量数据的视觉模型研究。在计算视觉领域,标注数据通常难以获取,自监督学习成为训练
    的头像 发表于 07-24 16:55 508次阅读
    基础<b class='flag-5'>模型</b>自监督<b class='flag-5'>预</b><b class='flag-5'>训练</b>的数据之谜:大量数据究竟是福还是祸?

    混合专家模型 (MoE)核心组件和训练方法介绍

    ) 的 Transformer 模型在开源人工智能社区引起了广泛关注。在本篇博文中,我们将深入探讨 MoEs 的核心组件、训练方法,以及在推理过程中需要考量的各种因素。 让我们开始吧! 简短总结 混合专家模型 (MoEs
    的头像 发表于 01-13 09:37 1170次阅读
    混合专家<b class='flag-5'>模型</b> (MoE)核心组件和<b class='flag-5'>训练方法</b>介绍

    谷歌模型训练软件有哪些功能和作用

    谷歌模型训练软件主要是指ELECTRA,这是一种新的训练方法,源自谷歌AI。ELECTRA不仅拥有BERT的优势,而且在效率上更胜一筹。
    的头像 发表于 02-29 17:37 747次阅读

    大语言模型训练

    能力,逐渐成为NLP领域的研究热点。大语言模型训练是这一技术发展的关键步骤,它通过在海量无标签数据上进行训练,使模型学习到语言的通用知识
    的头像 发表于 07-11 10:11 387次阅读

    ai大模型训练方法有哪些?

    AI大模型训练方法是一个复杂且不断发展的领域。以下是ai大模型训练方法: 数据预处理和增强 数据清洗:去除噪声和不完整的数据。 数据标准化:将数据缩放到统一的范围。 数据增强:通过旋转
    的头像 发表于 07-16 10:11 1347次阅读