当前位置: 首页 > news >正文

论文阅读——MoCo

Momentum Contrast for Unsupervised Visual Representation Learning

动量在数学上理解为加权移动平均:

yt-1是上一时刻输出,xt是当前时刻输入,m是动量,不想让当前时刻输出只依赖于当前时刻的输入,m很大时,变化很缓慢。

无监督视觉表征学习,把对比学习看成一个字典查询任务,动态字典由两部分组成,一个是队列,一个移动平均编码器。

字典大,使用的编码器一样或相似

方法:

懂了选的很大,这样动量编码器更新的非常缓慢,所以保证队列里面的k0,k1,k2…是从相似的编码器得到的。

假设有一个编码好的查询q,编码好的样本集{k0,k1,k2…},可以看做字典的key。假设字典只有一个key和q配对。

infoNCE,NCE是noise contrastive estimation

温度τ,用来控制分布形状,越大,exp函数里面的值越小,exp后也就越小,相当于把值变小了,使函数曲线更平滑。温度小,那exp后值更大,使分布更集中。如果温度设的很大,对比损失对所有负样本一视同仁,模型学习没有轻重,如果温度值设的过小,又会让模型只关注困难样本。但是那些负样本可能是潜在正样本,如果过度关注负样本,模型难收敛,不好泛化。

和交叉熵的k代表类别数量不同,这里的K是负样本数量。

训练过程中,每个batch都有一批新的keys进入队列,同时又有一些老的keys出去。

懂了编码器更新方式:

伪代码:

http://www.lryc.cn/news/321233.html

相关文章:

  • ARM 寄存器学习:(一)arm多种模式下得寄存器
  • 【nfs报错】rpc mount export: RPC: Unable to receive; errno = No route to host
  • 备战蓝桥杯---牛客寒假训练营2VP
  • QCustomPlot-绘制X轴为日期的折线图
  • 腾讯春招后端一面(算法篇)
  • Filebeat rpm方式安装及配置
  • 深入挖掘C语言之——枚举
  • 【源码阅读】EVMⅢ
  • .Net Core 中间件验签
  • Elasticsearch:从 Java High Level Rest Client 切换到新的 Java API Client
  • 七:分布式
  • 1-postgresql数据库高可用脚本详解
  • 【亲测】Onlyfans年龄认证怎么办?Onlyfans需要年龄验证?
  • ASP.NET Core新特性
  • 26-Java访问者模式 ( Visitor Pattern )
  • 电子科技大学链时代工作室招新题C语言部分---题号G
  • 体育运动直播中的智能运动跟踪和动作识别系统 - 视频分析如何协助流媒体做出实时决策
  • Avalon总线学习
  • Sentinel(熔断规则)
  • Hive借助java反射解决User-agent编码乱码问题
  • Linux下安装Android Studio及创建桌面快捷方式
  • 【析】一类动态车辆路径问题模型和两阶段算法
  • 从基础入门到学穿C++
  • 代码随想录算法训练营第二十四天|leetcode78、90、93题
  • Java学习笔记NO.20
  • 关系型数据库mysql(1)基础认知和安装
  • WanAndroid(鸿蒙版)开发的第三篇
  • 全国农产品价格分析预测可视化系统设计与实现
  • 堆排序(数据结构)
  • 使用DMA方式控制串口