2020年9月27日星期日

图像增强领域大突破!1.66ms处理4K图像,港理工提出图像自适应的3DLUT

作者 | Happy
该文是香港理工大学张磊老师及其学生在图像增强领域的又一颠覆性成果。它将深度学习技术与传统3DLUT图像增强技术结合,得到了一种更灵活、更高效的图像增强技术。所提方法能够以1.66ms的速度对4K分辨率图像进行增强(硬件平台:Titan RTX GPU)。
paper: https://ift.tt/3cHWRju
code: https://github.com/HuiZeng/Image-Adaptive-3DLUT(即将开源)
1
摘要
最近几年基于学习的方法已成为图像增强(增强图像的色调、对比度等)的主流方案,然而这些图像增强方法或者产生不好的效果或者需要大量的计算量以及内存占用,严重影响了这些方法在高分辨率图像方面的实际应用(比如12M像素)。
该文提出了一种图像自适应的3D查找表(3D LUT)方法用于图像增强,在具有超快速度的同时具有鲁棒的增强效果。3DLUT是传统图像编辑领域常用方案,但这些查找表往往需要人工调节并固化。该文首次提出采用成对/不成对学习的方式从标注数据集中学习3DLUT。更重要的是,所学习到的3DLUT具有图像自适应特性,可以灵活的进行图像增强。所提方法采用端到端的方式同时学习3DLUT以及一个小网络,小网络用于根据输入图像学习查找表的融合权值,将融合后的3DLUT作用于输入图像即可得到期望的输出。所提方法仅仅包含不到600K参数,能够以不超过2ms的速度处理4K分辨率图像(硬件平台:Titan RTX GPU)。在具有超快的推理速度同时,所提方法同样以极大的优势(PSNR,SSIM以及颜色差异度量指标)超越其他图像增强方法。
该文的贡献主要包含以下三点:
  • 首个采用深度学习方法学习3DLUT并用于自动图像增强的方案,更重要的是,所提方法学习到的3DLUT具有图像自适应性,可以更灵活的进行图像增强;
  • 所提方法仅有不超过600K参数量,且能够以不超过2ms的速度处理4K分辨率图像(GPU);
  • 在两个公开数据集上以极大优势超越其他SOTA图像增强方案。
2
方法
上图给出了本文所提出方案的框架图,它包含多个基准3DLUT与一个小的CNN网络。基准3DLUT可以确保输入到输出的颜色变换可以被更好的包含,而CNN则用于学习3DLUT的融合权值并将多个3DLUT融合为一个新的3DLUT,最后所得3DLUT用于图像变换。

3DLUT and trilinear interpolation

3DLUT是一种经典且有效并被广泛应用的图像增强技术,下图给出了3DLUT的示意图。3DLUT定义了一个包含个元素的晶格(注:M表示每个颜色通道的采样数,实际应用中一般为33)。每个定义了输入RGB颜色及对应的输出RGB颜色,而变换的精度则由M控制(默认33)。
给定M以及索引 RGB颜色可以通过均匀离散RGB颜色空间得到。不同的3DLUT具有不同的输出RGB颜色,而这在所提方法中是可学习的参数。当M=33时,每个3DLUT包含108K参数量。
基于3DLUT的颜色变换可以通过两个操作达成:lookuptrilinear interpolation。给定输入RGB颜色,lookup操作可以通过如下公式进行:
其中,而表示颜色值。在完成输入RGB颜色定位后,它的8个最近邻元素将被用于trilinear interpolation并得到输出RGB。trilinear interpolation可以描述如下:假设,,那么三次插值公式如下:
其中。上述三次插值过程是可微的,可以轻易的推导出的梯度。由于每个输入的三次插值结果完全独立,故而可以采用GPU进行并行加速。

Learning image-adaptive 3D LUTs

传统的基于3DLUT的图像增强方法具有两个主要局限:(1)3DLUT大多人工设计,需要设计人员具有丰富经验,同时消耗大量时间;(2)一个3DLUT仅能处理一种固定的变换,难以适应全场景的变换。尽管现有相机、图像编辑工具中提供了多个LUTs集合供用户手动选择以大臣个不同的增强效果,但是这种交互方式不够灵活。
为解决上述第一个局限,作者提出采用数据驱动方法生成3DLUT;为解决上述第二个局限,模型应当具有内容自适应特性,因此作者提出学习图像自适应的3DLUT。
一个很自然的想法是通过场景分类的方式选择不同的3DLUT,这也是诸多相机、图像编辑工具常用方案。然而这种硬决策方案具有这样几个缺陷:(1) 它难以将多个可能场景正确的划分到预定义类别中,因为不同类别具有不同的3DLUT;(2)需要大量的3DLUT以尽可能的覆盖全场景;(3) 分类器的训练独立于3DLUT,导致组合方案并非最优。如果场景分类错误,那么所选择的3DLUT大概率生成非常差的结果。
在该文中,作者采用一种更高效的方式学习图像自适应的3DLUT:同时学习N个3DLUT与一个小CNN模型(用于预测3DLUT的融合权值)。对于输入图像,其最终的增强输出可以描述如下:
而表示通过CNN模型预测的内容自适应权值。所提方法仅仅需要几个3DLUT(N=3)进行图像变换,同时采用软加权策略以获得图像内容自适应的变换效果。更进一步,考虑到像素变换的独立性,上述操作可以进一步简化如下:
也就是时候,可以先进行3DLUT融合,再进行图像变换。这种处理方式进一步提升的所提方法的推理速度。下表给出了所提方法中CNN模型的参数配置,它包含5个卷积(后接LeakyReLU、IN)、一个dropout以及一个全连接层。整个CNN模型包含269参数量(N=3)。

Learning Criteria

接下来就要介绍了优化的目标函数了,目标函数定义如下:
其中表示CNN模型与3DLUT,表示某些损失函数与正则项。
如前所述,所提方法可以采用成对数据进行训练,也可以采用非成对数据进行训练。我们先来看一下成对训练的损失函数,这个就比较简单的常规的损失函数即可,比如L1、MSE等。在这里作者选用了简单的MSE损失函数,定义如下
接下来,我们再看一下非成对数据的损失函数。这里借鉴的是GAN的思想进行非成对数据的训练,前述的3DLUT以及CNN可以视作生成器,只需要再引入一个判别器即可。此时生成器通过如下损失进行训练:
其中。判别器的损失函数定义如下:
其中,,前两项为标准的判别损失,最后一项为梯度惩罚项用于稳定训练。那么总的损失函数则定义为:

Regularization

我们可以采用前述损失以及SGD/Adam优化器进行训练3DLUT以及CNN。然而得到的3DLUT具有非平滑现象,见下图a。这种局部陡峭现象会导致变换后图像的伪影问题,为使得所学习的3DLUT具有更好的稳定性和鲁棒性,作者引入了两种正则项。
  • Smooth Regularization。为了稳定的将输入RGB变换到期望的颜色空间,而不引入伪影,3DLUT的输出RGB应当具有局部平滑性。全变差Total Variation, TV是图像复原领域经典的平滑正则化技术,作者将其引入到3DLUT,此时TV正则定义如下:
除了3DLUT应具有平滑性外,CNN预测的内容自适应权值同样非常重要,作者也为其引入了正则以提升所得3DLUT的平滑性。总的平滑正则项描述如下:
  • Monotonicity regularization。除了平滑性外,单调性也适合3DLUT应当具有的一个属性。为此作者设计了如下的单调正则项:
其中表示标准ReLU操作。

Final training losses and implementation

通过集成前述两个正则项,最终的损失函数定义如下:
其中。
在实现方面,基本框架为Pytorch,trilinear interpolation通过CUDA并行实现。训练的优化器为Adam,Batch=1,学习率固定0.0001(pair)和0.0002(unpair),随机裁剪、随机镜像等数据增强。而这N个3DLUT的初始化方式为:第一个为恒等映射,其他则初始化为0。CNN的全连接层的bias初始化为1,确保起始阶段的权值预测为1。
3
实验
训练数据:MIT-Adobe FiveK, HDR+。评价准则:PSNR、SSIM。下面直接看结果咯。
下图给出了三个不同图像采用所提方法生成的3DLUT以及最终的增强结果。可以看到:所提方法生成的结果比固定3DLUT的方式更灵活,效果更佳。
下图给出了所提方法与其他SOTA方法在FiveK数据集上的指标对比以及视觉效果对。可以看到所提方法不仅具有更好的指标,同样具有更好的视觉效果。
下面给出了所提方法与其他SOTA方法在HDR+数据集上的指标与视觉效果对比。
与此同时,作者也给出了不同图像编辑工具与所提方法的处理效果对比,见下图。
最后,作者给出不同的图像增强方法的推理速度对比,见下图。还有什么比这个速度更惊人的吗?以1.66ms的速度处理4K图像,只能感慨一下,快到没反应。
全文到此结束,对该感兴趣的同学建议去看一下原文。最后期待作者尽快开源代码。

NeurIPS 2020录用结果已出,欢迎各位作者投稿
点击阅读原文,直达“CCF-NLP走进高校之郑州大学”直播页面!
继续阅读

对比自监督学习浪潮迅猛来袭,你准备好了吗?

编译 | Mr Bear
校对 | 青暮
近年来,自监督学习逐渐成为了备受人们关注的应对标注缺乏问题的热门解决方案,科研人员在基于对比学习的自监督方法方面进行了大量研究。本文是 PyTorch Lightning 创始人 William Falcon 的对比学习综述,对自监督学习、对比学习等基础概念进行了简要的回顾,介绍了 CPC、AMDIM、BYOL、SimCLR、Swav等最近较为著名的对比学习方法,并提出了一种名为 YADIM 的新型对比学习算法。
图 1:对比学习
本文介绍了论文「A Framework For Contrastive Self-SupervisedLearning And Designing A New Approach 」中的主要内容。
论文地址:https://ift.tt/3kOxfnK
在过去的一年中,一类「新颖」的自监督学习(AMDIM、CPC、SimCLR、BYOL、Swav等)算法在人工智能研究领域取得了多项目前最优的结果。
在我们近期发表的论文「A Framework For ContrastiveSelf-Supervised Learning And Designing A New Approach」中,我们为描述对比自监督学方法形式化定义了一个概念框架。并使用该框架分析了三种对比学习的示例:SimCLR、CPC、AMDIM,表明:尽管这些方法似乎在表面上看起来各不相同,但事实上它们都只是对彼此做出了细微的调整。
在本文中,我们将:
  • 回顾自监督学习
  • 回顾对比学习
  • 提出一种比较近期各种对比学习方法的框架
  • 使用我们的框架比较CPC、AMDIM、MOCO、SimCLR、BYOL
  • 使用我们的框架形式化定义了一种新的方法「YADIM」
  • 描述了一些我们的实验结果
  • 描述了取得这些实验结果的计算要求
1
实现
读者可以通过以下链接获取使用 PyTorch LIghtning框架编写的所有文中介绍的方法,从而在任意的硬件设备上训练这些算法,并且更加容易进行对比。
  • AMDIM:https://ift.tt/3j8ExSY
  • BYOL:https://ift.tt/3cAcWrb
  • CPC V2:https://ift.tt/3mUPppD
  • Moco V2:https://ift.tt/3j7zoL1
  • SimCLR:https://ift.tt/2QG49tz
2
自监督学习
回想一下,在监督学习任务中,我们会为系统给定一个输入 x 和一个相应的标签 y。
图 2:监督式学习——图左侧为输入图像,右侧为标签。
在自监督学习任务中,我们仅仅为系统给定输入 x,而不给定标签 y,系统需要「学会根据输入的某部分来预测输入中的其它部分」。
图 3:在自监督学习中,输入数据被同时用作源和目标。
事实上,这种形式化定义是非常通用的,你可以创造性地对输入进行「分割」。这种策略被称为「前置任务」(又称「代理任务」),研究者们已经尝试了各种各样的方法。在这里,我们给出三种示例:
  • 预测两个图块之间的相对位置(https://arxiv.org/abs/1505.05192)
  • 解决一个拼图问题(https://arxiv.org/abs/1603.09246)
  • 对某张图像进行着色(https://richzhang.github.io/colorization/)
图 4:前置任务示例
尽管上述方法极具创造性,但是它们实际上效果并不理想。然而,最近一系列使用「对比学习」的方法已经开始显著地缩小在 ImageNet 数据集上与监督式学习之间的性能差距。
图 5:最新的方法(Swav)正在缩小与在 ImageNet 上训练的监督式方法的差距。
3
对比学习
大多数机器学习算法背后的基本思想是,相似的样本应该被划分到一起,而与其它相关示例的聚类簇相距较远。
Chopra 等人于 2014 年发表的最早的有关对比学习的工作「Learning a SimilarityMetric Discriminatively, with Application to Face Verification」正是基于这一思想构建的,主要思想的示意图如下:
图 6:对比学习示例
对比学习通过使用三个关键的元素(正样本、anchor、负样本的表征)来实现上述思想。为了创建一个正样本对,我们需要两个相似的样本,而当我们创建一个负样本对时,我们将使用第三个与两个正样本不相似的样本。
图 7:正负样本与 Anchor
然而,在自监督学习任务中,我们并不知道每个样本的标签。因此,我们也无从知晓两张图像是否相似。
尽管如此,如果我们假设每张图片都从属于它自身的一个独有的类别,那么我们就可以提出各种构造这类三元组的方法(正负样本对)。这意味着,在一个包含 N 个样本的数据集中,我们现在拥有了 N 个标签!
图 8:为每一个样本赋予一个独特的类别
当我们知道了每一张图像的标签(类别)后,就可以使用数据增强技术来生成这些三元组。
4
特性1:数据增强过程
首先,我们可以通过定义一个数据增强过程来描述一种对比式自监督学习方法。
一个数据增强过程 A(x) 对同一个输入应用一系列随机变换。
图 9:应用于某一输入的随机数据增强过程
在深度学习场景下,数据增强旨在构建对于原始输入中的噪声具有不变性的表征。例如,即使图 9 中的猪被旋转了、或者颜色消失了、甚至是像素被「抖动」了,网络还是能将其识别出来。
在对比学习场景下,数据增强还有第二个目标:生成 anchor、正样本、负样本,将它们输入给编码器,并将其用于提取表征。
CPC
CPC 引入了应用色彩抖动、随机灰度、随机翻转等变换的处理流程,但是它也引入了一种特殊的变换:将一张图像划分为一些重叠的子图块。
图 10:CPC 中的关键变换
通过使用这一过程,CPC 可以生成多组正负样本。实际上,该过程可以被应用于一批示例上,此时我们可以将批中其它的示例用作负样本。
图 11:根据一批图像生成正样本、anchor、负样本对。
AMDIM
与 CPC 相比,AMDIM 使用了一种稍微有些不同的方法。在进行了一些标准变换(抖动、翻转等)后,对于每一张图像,它都会通过将数据增强过程在该图像上应用两次得到两个版本的变换图像。
图 12:数据增强过程
实际上,Dosovitski 等人于 2014 年就在论文「Discriminative UnsupervisedFeature Learning with Convolutional Neural Networks」中提出了这一思想。这一思想旨在使用一个「种子」图像生成相同图像的许多变换版本。
SimCLR、Moco、Swav、BYOL
AMDIM 的工作流程取得了非常好的效果,以至于跟进该方法的所有工作都采用了相同的工作流程,它们对之前使用的变换方法采取了一些轻微的调整(例如,有的加入了抖动,有的加入了高斯模糊,等等)。然而,与 AMDIM 的主要思想相比,大多数这些变换方法都是不合逻辑的。
在本文中,我们针对这些变化的影响展开了消融实验。我们发现,对变换的选取对于方法最终的性能是十分关键的。事实上,我们相信,这些方法的成功大部分都是由特定的对变换的选择驱使的。
这些发现与 SimCLR 和 BYOL 论文中展示的相似的实验结果是相符的。
下面的视频详细介绍了 SimCLR 的工作流程:
5
特性2:编码器
第二种描述这些方法的方式是:对于编码器的选择。上述的大多数方法使用了具有各种各样深度和宽度的ResNet 类网络。
图 13:ResNet 网络架构
当这类方法开始出现时,CPC 和 AMDIM 实际上设计了自定义的编码器。我们通过消融实验发现了,AMDIM 的泛化性能欠佳,而 CPC 则受编码器改变的影响较小。
图 14:在 CIFAR-10 数据集上测试编码器的鲁棒性
自从 CPC 之后,所有的方法都选用了 ResNet-50网络架构。尽管可能还有更优的架构有待发现,但是以 ResNet-50 作为标准架构说明我们可以重点关注如何提升其它的特性,从而通过更好的训练方法(而不是更好的架构)获得性能的提升。
然而,对于消融实验中的每一种情况而言,有一个发现始终成立:更宽的编码器在对比学习任务中性能要好得多。
6
特性3:表征提取
第三种描述这类方法的方式是:它们采取的提取表征的策略。可以说,这也许正是所有这些方法产生「魔力」的秘诀,也是它们差别最大之处。
为了理解提取表征的策略如此重要的原因,让我们首先定义一下何为「表征」。「表征」是独特特性的集合,它使一个系统(以及人类)可以理解某物与其它物体的区别。
Quora的这篇名为「What is representation learning in deep learning?」的博文使用了一个实例来说明如何试图对形状进行分类。要想成功地对形状进行分类,在该形状中找到的「角」的个数可能是一种很好的表征。
图 15:各种拥有不同「角」数的形状
在这些对比学习方法中,它们通过各种各样的方式提取出表征。
CPC
CPC 引入了通过预测潜在空间中的「未来」情况来学习表征的思想。实际上,这意味着:(1)将一张图像看做延时间轴自左上向右下展开,其左上角为「过去」,而右下角为「未来」。
图 16:CPC 的「未来」预测任务
(2)预测结果并不是发生在像素级别上,而是编码器的输出(即潜在空间)。
图 17:从像素空间到潜在空间的变换
最终,CPC 通过将编码器的输出(H)作为投影头(作者称其为一个上下文编码器)生成的上下文向量的目标,定义了一个预测任务,从而进行表征提取。
图 18:CPC 的表征提取
在我们的论文「A Framework ForContrastive Self-Supervised Learning And Designing A New Approach」中,我们发现:只要数据增强过程足够强,那么这种预测任务并不是必需的。并且,尽管有许多关于数据增强过程的假设,我们认为一个强大的数据增强过程会创建共享某种相似的全局结构、但拥有不同局部结构的正样本对。
AMDIM
另一方面,AMDIM 采用的思想是:利用提取自卷积神经网络(CNN)中间层的各个特征图,对比不同视图的表征。我们可以从两个方面来分析这一过程:(1)图像的多视图(2)CNN 的中间层。
首先,我们不妨回想一下 AMDIM 为同一张图像生成两个版本的数据增强变体的过程。
图 19:AMDIM 数据增强过程 
每个版本的数据增强结果都会被传入给相同的编码器,从而为每张图像提取特征图。AMDIM 并不会丢弃由编码器生成的中间特征图,而是会将这些特征图用来进行跨空间尺度的比较。回想一下,当一张输入图像经过 CNN 的各个层时,感受野会在不同尺度上对输入进行信息编码。
图 20:不同尺度的特征图
AMDIM 通过对 CNN 的中间输出进行比较来实践了这一思想。图 21 说明了这一比较过程是如何在三张由编码器生成的特征图之间进行的。
图 21:AMDIM 的表征提取——AMDIM 使用相同的编码器提取 3 组特征图,并对它们进行比较。
其余的此类方法都针对 AMDIM 提出的思想进行了一些微调。
SimCLR
SimCLR 使用了与 AMDIM 相同的思想,但是做出了 2 处微调:
(1)仅仅使用最后的特征图
(2)利用一个投影头处理该特征图,并比较投影前后的两个向量(与 CPC 中的上下文投影相似)
Moco
正如前文所提到的,对比学习需要用到负样本。通常而言,这是通过将 batch 中的某张图像与其它图像进行比较而实现的。
Moco 进行了与 AMDIM 相同的处理过程(仅仅用到了最后的特征图),但它保留了处理过的所有batch 的历史记录,并以此增加负样本的数量。这样做的效果是:用于提供对比信号的负样本数增加,它超过了单个batch 所得到的负样本数。
图 22:基于动量编码器的对比学习
BYOL
BYOL 采用了与 AMDIM 相同的思想(但只用到了最后的特征图),但是进行了两处改变。
图 23:BYOL 架构示意图
(1)BYOL 用到了两个编码器。第二个编码器实际上完全是第一个编码器的副本,但是它不会在每一轮更新权重,而是使用一种滚动均值(rolling average)更新它们。
(2)BYOL 并没有用到负样本,而是依靠滚动权值更新作为一种为训练提供对比信号的方式。然而,近期的一项消融实验发现,这种做法可能并不是必需的,而且事实上加入批量归一化可以确保系统不生成平凡解。
Swav
Caron 等人在论文「UnsupervisedLearning of Visual Features by Contrasting Cluster Assignments」中将他们的表征提取任务构建为一种「在线聚类」,其中他们迫使「同一张图像不同的增强结果编码之间的一致性」得以满足。因此,Swav 采用了与 AMDIM 相同的方法(仅仅使用最后的特征图),但是它没有直接比较向量,而是通过一组 K 个预先计算出的编码计算相似度。
图 24:Swav 工作流程示意图
实际上,这意味着 Swav 会生成 K 个聚类,对于每个编码的向量而言,它会对这些聚类进行比较,从而学习出新的表征,这份工作可以看做将 AMDIM 和论文「Unsupervised Learning byPredicting Noise」的思想进行了融合。
7
关于特性3的思考
表征的提取策略正是这些方法的不同之处。然而,它们之间的变化非常微妙,并没有进行严格的消融实验。我们很难确定是什么真正导致了相应的结果发生。
根据我们的实验结果,我们发现,CPC 和 AMDIM 策略对于结果的影响可以忽略不计,反而增加了计算复杂度。使这些方法奏效的主要驱动力是数据增强过程。
8
特性4:相似度度量
第四个我们可以用来比较这类方法的特性是:它们使用的相似度度量方法。上述所有的方法都使用了一个点积或余弦相似度。尽管我们的论文并没有列举出这些消融实验情况,但我们的实验结果说明:对于相似度的选择在很大程度上是无关紧要的。
9
特性5:损失函数
我们用来对比这些方法的第五种特性是:对损失函数的选择。所有这类方法(除了 BYOL)都选择使用了一种噪声对比估计(NCE)损失。NCE 损失函数包含两个部分:一个分子、一个分母。分子鼓励相似的向量靠近,分母推动所有其它的向量远离。
图 25:NCE 损失 
如果没有分母,那么损失就会变成一个常数,因此学到的表征就会不再适用。
然而,BYOL 并不需要该分母,而是依赖于第二个编码器的权重更新机制来提供对比信号。然而,正如前文所述,近期的一些消融实验说明,实际上这可能并不是驱动对比信号的因素。
在下面的视频中,我使用 SimCLR 作为一个示例,对NCE 损失进行了完整的解释。
10
另一种DIM(YADIM)
我们希望通过生成一种新的方法来说明我们框架的有效性,该方法可以进行不需要前置动机或不涉及表征提取策略的自监督学习。我们将这种新的方法称为 YADIM。
YADIM 的特性如下:
特性 1:数据增强过程
在 YADIM 中,我们融合了 CPC 和 AMDIM 的数据增强过程。
特性 2:编码器
我们使用了 AMDIM 中的编码器,尽管使用任意其它编码器(如 ResNet-50)也有效。
特性 3:表征提取
YADIM 策略是简单的:对某张图像的多个版本进行编码,并使用最后的特征图进行对比。在该方法中,我们没有使用投影头或者其它复杂的对比策略。
特性 4:相似度度量
我们在 YADIM 中坚持使用点积。
特性 5:损失函数
我们也使用了 NCE 损失函数。
YADIM 的实验结果
尽管我们唯一有意义的选择是:融合 AMDIM 和 CPC 的数据增强过程,但是相较于其它的方法,YADIM 仍然成功地取得了优秀的性能。
图 26:对比实验结果
与所有相关的工作不同,我们通过真正亲自实现每一种方法生成了上述结果。实际上,据我们所知,我们实现的 CPC V2 版本是第一个 DeepMind 之外的公开实现版本。
更重要的是,我们使用 PyTorchLightning 标准化了所有的实现,因此我们可以客观地提取出所有上述结果背后的主要驱动因素。
计算效率
上述方法是使用大量计算资源训练出来的。高昂的计算开销意味着我们并没有进行严格的超参数搜索,而只是简单地使用了 STL-10 的超参数在 ImageNet 上进行训练。
使用 PyTorch Lightning 进行高效的分布式计算,我们可以将在 ImageNet 上使用 16 位精度每epoch的训练时间下降至 3 分钟。
基于 23dn.24xlarge 示例的训练每小时需要花费 31.212 美元,下面是我们用于每种方法的计算资源:
图 27:训练 AMDIM 的资源耗费情况
图 28:训练 CPC 的资源耗费情况
图 28:训练 SimCLR 的资源耗费情况
图 28:训练 YADIM 的资源耗费情况
11
要点回顾
  • 为了比较各种对比学习方法并且更容易地对其进行设计,我们引入了一种概念框架。
  • AMDIM、CPC、SimCLR、Moco、BYOL 以及  Swav 之间的差异非常微小。主要的不同之处在于它们提取表征的方式。
  • AMDIM 和 CPC 提出了被其它方法采用的关键思想。SimCLR、Moco、BYOL 以及 Swav 可以看做 AMDIM 的变体。
  • 只要编码器够宽,对于编码器的选择并没有影响。
  • 只要数据增强过程生成良好的正负样本输入,表征提取策略并没有太大的影响。
  • 通过使用我们的框架,我们可以形式化定义一种新的对比自监督学习方法「YADIM」,它与其它的竞争方法性能相当。
  • 训练这类方法的巨大计算开销意味着:在世界上,只有有限的研究组可以在该领域持续取得进展。尽管如此,我们以一种标准化的方式表述了所有这些算法,这至少可以减轻实现这些算法并对实现进行验证的困难。
  • 由于大多数实验结果都是由更宽的网络和特定的数据增强过程驱动的,我们猜想当前的研究方向的提升空间可能较为有限。
原文链接:
https://ift.tt/334bKt9

NeurIPS 2020录用结果已出,欢迎各位作者投稿
点击阅读原文,直达“CCF-NLP走进高校之郑州大学”直播页面!
继续阅读

入职仅一年,套现5000多万后背刺马斯克搬走 Grok 核心代码库!-InfoQ 每周精要894期

「每周精要」 NO. 894 2025/09/06 头条 HEADLINE 入职仅一年,套现 5000 多万搬走 Grok 核心代码库! 业内专家:拥有菜谱不等于能做出同样的菜 精选 SELECTED AI 公司创始人现跑路迪拜! 80% 收入烧广告、假账骗投资人,微...