HCSC: Hierarchical Contrastive Selective Coding 解读

HCSC: Hierarchical Contrastive Selective Coding

在图像数据集中,往往存在分层级的语义结构,例如狗这一层级的图像中又可以划分为贵宾、金毛等细粒度的类别。例如这张图,展示了一个数据集中的多种语音层级。

在学习图像表征时,如果能把图像语义的层级关系学习进去,能够极大地提升图像表征在下游任务上的表现。先前提出的对比学习方法在建模时都忽略了这部分,本文提出了一种新的对比学习框架,Hierarchical Contrastive Selective Coding (HCSC)。该框架结合了instance-wiseprototypical的对比学习方法,并建立了更加精细的负样本对选择机制。经过试验验证,该模型在下游任务中达到了sota

该方法的核心是要建立并维护一个基于特征空间的多层级的语义结构,在这个结构的基础上,才能够更加精确地筛选负样本对和负类别表征,从而提升instance-wiseprototypical的对比学习的效果。假设层级数量为LM_l代表l层级内的类别数量,可以将c_il记作在第l层级中,第i类的类别特征,其中l属于{1,..,L}, i属于{1,..,M_l}c_il是一个1*d的向量。建立多层级语义结构的方法如下,假设通过backbone,已经得到了每张图像的embedding,通过多层级的k-means算法,能够基于特征空间建立一个多层级语义结构,下图是多层级k-means算法的具体流程:

由于图像表征随着模型的更新而不断更新,因此需要设计一个针对该多层级语义结构的更新机制,为了效果和效率的平衡,本文在每一个epoch前对层级结构进行一次更新。
本文定义了一个距离计算函数,来计算样本和类别表征之间的距离,具体公式是:

其中z代表一个图像的embeddingc代表一个类别的embedding

instance-wise对比学习loss
本文针对instance-wise对比学习的优化,就在于负样本的选择上面。根据上面这个距离计算公式,在第l层,对于一张查询图像来说,能够找到与其最接近的类别,将这个类别表征记为c_l(z)。一个很直观的想法是,该图像的负样本应该和c_l(z)的距离较远。如果要用一个概率来衡量某个图像是否是该查询图像的负样本的话,这个概率的计算公式可以被这样定义:

其中z_j是负样本的embeddingz是查询图像的embedding。这样就可以得到一个负样本候选集,这个候选集中的每个负样本都对应了一个概率,从而可以通过bernoulli采样来选择负样本。这样选择出的负样本能够保证和查询图像在该层级中具有较低的语义相似度。在每一层都可以通过该方式选出负样本,最终可以计算loss,公式如下:

Prototypical对比学习loss
针对一张查询图像,常规方法是找到与其最接近的类别表征,看做正样本,剩余的类别表征都是负样本。本文在负样本的选择上做了改进。根据上面的距离计算公式,在第l层,对于一张查询图像来说,能够找到与其最接近的类别,将这个类别表征记为c_l(z)。很自然的想法是,负样本类别应该和c_l(z)的父节点类别有较少的重叠语义,基于前面已经构建的多层级语义结构,作者设计了这样的概率计算公式:

这个概率衡量了该类被选择作为查询图像负样本类的概率。如果层数到底最顶层,那么就认为该层所有的除c_l(z)之外的类都是负类。和前文相同的,在每一层都可以通过这样的方法选择负样本类,从而可以得到loss计算公式是:

最终模型的优化目标就是这两个loss之和。
实验
作者采用resnet50作为backbone,在ImageNet上进行了训练,并和现有一些对比学习方法进行了对比实验,效果如下:

针对文中需要手动设置的参数:(1)层级数量(2)每一层的类别数,作者也进行了实验。

评价

  1. 本文设计的多层级结构,能够使负样本的选择更加得有效,从而提升对比学习的效果。
  2. 在训练过程中,不断更新多层级结构,需要一定的时间消耗,这个地方有改进空间。
  3. 层级数量和每一层的类别数这两个参数,针对不同的数据集会有不同的设计,在参数调优上需要经验和时间。
  4. 在预训练期间生成的多层级结构,包含丰富的语义信息,目前在下游任务中没有利用上。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值