论文阅读——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出去。

懂了编码器更新方式:

伪代码:

相关推荐
IT_陈寒12 小时前
Redis实战:5个高频应用场景下的性能优化技巧,让你的QPS提升50%
前端·人工智能·后端
龙智DevSecOps解决方案12 小时前
Perforce《2025游戏技术现状报告》Part 1:游戏引擎技术的广泛影响以及生成式AI的成熟之路
人工智能·unity·游戏引擎·游戏开发·perforce
大佬,救命!!!12 小时前
更换适配python版本直接进行机器学习深度学习等相关环境配置(非仿真环境)
人工智能·python·深度学习·机器学习·学习笔记·详细配置
星空的资源小屋12 小时前
VNote:程序员必备Markdown笔记神器
javascript·人工智能·笔记·django
梵得儿SHI12 小时前
(第七篇)Spring AI 基础入门总结:四层技术栈全景图 + 三大坑根治方案 + RAG 进阶预告
java·人工智能·spring·springai的四大核心能力·向量维度·prompt模板化·向量存储检索
亚马逊云开发者12 小时前
Amazon Bedrock助力飞书深诺电商广告分类
人工智能
2301_8234380212 小时前
解析论文《复杂海上救援环境中无人机群的双阶段协作路径规划与任务分配》
人工智能·算法·无人机
无心水13 小时前
【Python实战进阶】4、Python字典与集合深度解析
开发语言·人工智能·python·python字典·python集合·python实战进阶·python工业化实战进阶
励志成为糕手13 小时前
循环神经网络(RNN):时序数据的深度学习模型
人工智能·rnn·深度学习·gru·lstm
前端开发工程师请求出战13 小时前
Advanced RAG实战:评估闭环与持续优化体系
人工智能·全栈