2020年。
Xinlei Chen, Kaiming He。
Computer Vision and Pattern Recognition (cs.CV); Machine Learning (cs.LG)。

1 动机

  • Siamese network是一种无监督视觉表征学习模型的常见结构。这些模型最大限度地提高了同一图像的两个放大部分之间的相似性。
  • Siamese network的所有输出都“崩溃”成一个常量。目前有几种防止Siamese network崩溃的策略:(1)Contrastive learning,例如SimCLR,排斥负对,吸引正对,负对排除了来自解空间的恒定输出;(2)Clustering,例如SwAV,避免恒定输出;(3)BYOL仅依赖正对,但在使用动量编码器的情况下不会Siamese network崩溃。
  • 作者提出的simple Siamese不使用上述的任一方法(负样本对,大批量,动量编码器),也能有很好的表现。

2 SimSiam架构

2.1 具体流程

  1. 将一幅图像(image x)放大为两个放大视图(x1,x2)。
  2. x1,x2同时经过编码器(encoder f)处理得到f(x1)和f(x2),该encoder f由卷积神经网络和全连接层组成,网络结构相同且共享权重。
  3. 一侧应用预测MLP h(predictor h),将f(x1)转换为h(f(x1))。
  4. 另一侧应用停止梯度运算。
  5. 使两者之间的相似性最大化。

2.2 实现方法

  • x表示输入图像。f表示encoder f。h表示predictor h。
  • x1,x2表示随机增强输入图像。
  • z1,z2表示经过encoder f后的视图。z1=f(x1),z2=f(x2).。
  • p1,p2表示经过predictor h后的视图。p1=h(f(x1)),p2=h(f(x2))。
  • 上式表示p1和z2余弦相似度的负值。
  • 所以其对称损失为上式。
  • 上式为应用一侧MLP,一侧梯度停止。
  • 上式为最终的损失函数。

2.3 相关设置

  • 优化器:SGD进行预训练。学习率具有余弦衰减时间表(cosine decay schedule ),基础lr为0.05,学习率进行线性缩放为lr×BatchSize/256。BatchSize=512,使用8GPU训练。
  • encoder f:ResNet-50作为backbone进行100epochs,Projection MLP具有3层,隐藏层为2048-d,BN层应用于每个FC层,激活函数使用ReLU,输出层无激活函数。
  • predictor h:MLP有两层,输出FC不具有BN和ReLU,隐藏层有BN和ReLU,输入维度为2048,隐藏层维度为512。
  • 在不使用标签的情况下对1000级ImageNet训练集[11]进行了无监督的预训练。通过对训练集中的冻结表示进行监督的线性分类器,然后在验证集中对其进行测试(这是一种常见协议),可以评估预训练表示的质量。

3 实验

3.1 停止梯度


-蓝线表示使用停止梯度,红线表示未使用停止梯度。

  • 左图,在没有停止梯度的情况下,优化器快速找到退化的解并达到-1的最小可能损失。
  • 第二个图,如果输出崩溃为恒定向量,则每个通道的所有样本的std应为零。停止梯度的std位于1/√d附近,这表明输出不会崩溃,而是分散在单位超球面上。
  • 右图绘制了KNN分类器的验证精度。该KNN分类器可以用作进度监控器。借助停止梯度,KNN监视器显示出稳定提高的准确性。

3.2 Predictor

  • 如a,如果不使用Predictor,模型将不起作用,这是由于对称损失的梯度与D(z1,z2)的梯度有相同的方向,且大小按1/2缩放,这就等同于删除了停止梯度,这导致模型崩溃。
  • 如b,如果将h固定为随机初始化,则我们的模型也不起作用。
  • 如c,使用常数lr(无衰减)可以很好地工作,并且产生更好的结果。可能的解释是h应该适应最新的表示形式,因此在充分训练表示形式之前不必强制使其收敛(通过减小lr)。在我们模型的许多变体中,我们观察到具有恒定lr的h会提供更好的结果。

3.3 Batch Size

3.4 Batch Normalization

  • 如a,精度低可能是由于优化困难。
  • 如d,predictor的输出层加入BN会导致训练不稳定并且损失振荡。

3.5 Similarity Function


  • 交叉熵变量可以收敛到合理的结果而不会崩溃。这表明预防崩溃行为不仅与余弦相似性有关。

3.6 Symmetrization

  • 对称化有助于提高准确性,但与防止崩溃无关。对称化可以对每个图像进行更多预测。

4 构思

  • 假设SimSiam是期望最大化(EM)类似算法的实现。
  • x表示输入图像,T表示增强技术,F表示网络,θ表示网络F参数,η表示x的另一组特征。
  • 我们的目的就是最小化该损失函数,也就是调整网络F参数θ和x的特征η。
  • 这里将其中一个参数固定,调整另一个参数。
  • t表示交替索引。
  • θ可由SGD解决,使用停止梯度不会反向传播到η上,η是个常量。
  • 在增量分布上,η被分配了x的平均表示。
  • SimSiam可以视作上述求解方案的一次性交替近似。

5 比较

  • SimSiam是一种类似交错优化的方案,其SGD更新间隔为1。基于该假设,所提方案在多步SGD更新下同样有效。

  • 1-step等价于SimSiam。

  • ImageNet linear classification。

  • 基于标ResNet50,在预训练期间使用了两个224×224视图。

  • 转移学习。

  • 将预测器和梯度停止应用到其他架构中。

  • 对于SiamCLR,停止梯度和额外预测器的引入大概是另一个潜在的优化问题的结果。它不同于对比学习问题,因此这些额外的组件可能无济于事。

  • 添加预测变量也无济于事。消除停止梯度(以便对模型进行端到端训练)会导致分歧。作为基于聚类的方法,SwAV本质上是交替表述。

Exploring Simple Siamese Representation Learning阅读笔记相关推荐

  1. Exploring Simple Siamese Representation Learning论文笔记

    写在前面 大三狗随手记录,不喜勿喷. 主要思想 Siamese network常常被用来计算图像的两个增强之间的相似性,但可能会造成模型坍塌(即输出恒定).作者在本文提出了一个非常简单的Simple ...

  2. SimSiam:Exploring Simple Siamese Representation Learning

    Siamese网络最大化了一个图像的两个增强之间的相似性,服从于避免崩溃解的某些条件.在本文中,SimSiam即使不使用以下任何一项也可以学习有意义的表示:(i)负样本对,(ii)大批量,(iii)动 ...

  3. 对比学习simSiam(一)--Exploring Simple Siamese Representation Learning总体理解

    1.从名字上把握 sim是我们熟知的相似的那个单词,这个Siam是孪生的意思,这里使用这个来命名应该是为了指出孪生的重要性.这里的核心其实是在提出一个思想,对比学习这种由孪生网络结构构成的无监督学习的 ...

  4. 深度学习(自监督:SimSiam)——Exploring Simple Siamese Representation Learning

    文章目录 前言 SimSiam简述 实验 前言 该文章是何凯明组发表于CVPR2021上的文章,目前已获得最佳论文提名,主要解决自监督对比学习中的奔溃解问题.奔溃解即不论什么输入,特征提取器输出的特征 ...

  5. Kaiming He论文阅读笔记三——Simple Siamese Representation Learning

    Kaiming He大神在2021年发表的Exploring Simple Siamese Representation Learning,截至目前已经有963的引用,今天我们就一起来阅读一下这篇自监 ...

  6. T-PAMI-2021论文Semi-Supervised Multi-View Deep Discriminant Representation Learning阅读笔记

    提示:文 0.论文信息 题目:Semi-Supervised Multi-View Deep Discriminant Representation Learning 期刊: IEEE Transac ...

  7. Ranked List Loss for Deep Metric Learning | 阅读笔记

    Ranked List Loss for Deep Metric Learning | 阅读笔记 这是CVPR2019上一篇度量学习的论文. 摘要 深度度量学习(DML)的目的是学习可以捕获数据点之间 ...

  8. Bayesian Compression for Deep Learning 阅读笔记

    Bayesian Compression for Deep Learning 阅读笔记 一.论文摘要 二.模型介绍 2.1 概述 2.2 变分贝叶斯和最小描述长度 2.2.1 变分推断 2.2.2 最 ...

  9. Alpa: Automating Inter- and Intra-Operator Parallelism for Distributed Deep Learning阅读笔记

    Alpa: Automating Inter- and Intra-Operator Parallelism for Distributed Deep Learning Alpa阅读笔记 一.论文的研 ...

  10. 【图表示学习】Graph Representation Learning 读书笔记(一)

    Graph Representation Learning (William Hamil)本书还没有正式推出. Chapter 1:Introduction 首章主要简要讲解图的定义和机器学习在图数据 ...

最新文章

  1. 【c语言】计算三角形面面积
  2. 2020年春季学期教学日历
  3. actionscript代码练习作品
  4. linux ps mysql_linux系统中ps指令使用详解
  5. 企业实战_17_MyCat水平扩展_跨分片查询_ER分片
  6. 电脑上我的文档图标不见了怎么办
  7. cisco 9月24日 CCNA实验
  8. 长春工业大学计算机组成原理考试开卷考吗,计算机组成原理期末复习资料
  9. catia如何将曲面加厚变为实体_?在CATIA中快速画一个大众车标
  10. C处理Python返回的字串代码
  11. 表面肌电信号处理流程——基于肌电信号分类的特征抽取的设计
  12. 用批处理共享打印机电脑设置
  13. spurious wakeup 虚假唤醒
  14. 有趣的设计模式——两脚插头也能使用三孔插板
  15. 谷哥学术2022年资源分享下载列表 06/20
  16. 苹果开发者账号开启双重认证教程
  17. 7个月后再测「小度在家」,已然超出音箱属性的未来新物种
  18. 微信小程序获取用户信息“授权失败”场景的处理
  19. c# 删除C:\Windows\System32\oobe下的文件
  20. php服装商城网站毕业设计源码241505

热门文章

  1. 老外用VB6写的Windows驱动备份软件
  2. 《采购与供应链管理》读书笔记
  3. 免费建站网站分享,最好的自助建站
  4. 2.2.2-6-2 补码位乘法(Booth算法)
  5. AI:2020年6月24日北京智源大会演讲分享之强化学习专题论坛——11: 40-12: 10俞扬教授《更好的环境模型,更好的强化学习》
  6. vbscript 微软教程网址
  7. android pdf转word开发,如何在Android手机上将PDF转换为Word文档
  8. [其他] ATI HD6630M 显卡在Win10下终于有救了(DEll 14R N4120)
  9. 话筒性能测试软件,LogiTech的话筒屏蔽性能测试方案
  10. 超详细Redis使用手册