• Decoupled Contrastive Learning 论文解读和感想


    本文首先提出了当前对比学习的三大痛点:
    1、当前的sota方法结构都过于复杂
    2、对比学习要想取得效果,必须要用大batch
    3、超参敏感(个人认为这里说的超参是指数据增强方式)
    然后本文以SimCLR为例,通过对对比损失的梯度进行分析,发现了导致上面2、3的原因,并且在不改变网络结果的前提下提出了一种超简洁的优化方式。

    先来看SimCLR的损失,对于第i个训练样本,其loss为:
    在这里插入图片描述
    其中
    在这里插入图片描述
    那么其第一个增强view的梯度为
    在这里插入图片描述
    其中
    在这里插入图片描述
    由于对称性,可以很容易的推出其第二个view的梯度。
    我们对 q B , i ( 1 ) q_{B,i}^{(1)} qB,i(1)进行分析,可以看出其值属于 ( 0 , 1 ) (0,1) (0,1),并且:
    1、当负样本相距太远时(称之为easy negative),此时分母 U i , k U_{i,k} Ui,k会变得很小,由此被减项会趋向于1,即 q B , i ( 1 ) q_{B,i}^{(1)} qB,i(1)趋向于0
    2、当正样本相距太近时(称之为easy positive),此时将上式变形为
    在这里插入图片描述
    可以看出整体依然趋向于0
    3、当batch太小时,可以看成是无监督分类(对正负样本的二分类)任务变得过于简单,作为结果,会导致上面两张情况同时发生。
    为了验证分析,作者也给出了相应的图例:
    在这里插入图片描述
    可以看出,当batch变太小时不仅 q B q_{B} qB的分布会趋向于0,并且其协方差也会变大,反映在模型上就是训练会变得极不稳定。
    因此,想要避免这三种情况对训练的影响,可以转化成避免 q B , i ( 1 ) q_{B,i}^{(1)} qB,i(1)对梯度的影响。那么一个直接的方式就是将其直接改写成1(相当于batch→无穷的效果)。通过公式反推,作者惊奇的发现去掉 q B q_{B} qB就相当于在loss中去掉分母的第一项,因此作者提出将对比损失改写成下面形式:
    在这里插入图片描述
    此外为了平衡去掉这一项带来的正样本难易程度自适应问题,作者添加了一项新的权重项:
    在这里插入图片描述
    其中 σ \sigma σ类似于温度系数,当 σ \sigma σ→无穷时,权重项恒等于1。最终loss为:
    在这里插入图片描述

    实验部分的话,作者虽然做了很多实验,但是归结起来就是一点,本文的对比loss要优于传统的对比loss,并且batch越小提升幅度越大:
    在这里插入图片描述

  • 相关阅读:
    [React] React高阶组件(HOC)
    使用explain()查看mongodb查询语句的执行计划
    Java基础(运算符)
    【AI视野·今日CV 计算机视觉论文速览 第262期】Fri, 6 Oct 2023
    Web框架开发-Django简介
    程序员的数学课10 信息熵:事件的不确定性如何计算?
    Unity URP 渲染管线:URP渲染管线光照机制剖析
    Spring 6【数据绑定之类型转换(Type Conversion)】(十一)-全面详解(学习总结---从入门到深化)
    富格林:曝光正确摆脱欺诈方略
    【大数据】6:MapReduce & YARN 初体验
  • 原文地址:https://blog.csdn.net/qq_37614597/article/details/126217587