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

精神文明建设网站专栏那个网站做淘宝推广比较好

精神文明建设网站专栏,那个网站做淘宝推广比较好,wordpress留言,一元云购网站建设目录 1、简介 2、MoCo 2.1、引言 2.2、主要贡献 2.3、相关工作 2.4、方法 2.4.1、损失函数 2.4.2、队列 2.4.3、动量编码器 2.4.4、前向过程 2.5、实验 2.5.1、网络结构比较 2.5.2、动量参数m 2.5.3、imageNet数据集结果 2.5.4、迁移特性 2.6、MoCo代码 1、简介…目录 1、简介 2、MoCo 2.1、引言 2.2、主要贡献 2.3、相关工作 2.4、方法 2.4.1、损失函数 2.4.2、队列 2.4.3、动量编码器 2.4.4、前向过程 2.5、实验 2.5.1、网络结构比较 2.5.2、动量参数m 2.5.3、imageNet数据集结果 2.5.4、迁移特性 2.6、MoCo代码 1、简介 对比学习的本质实际上是让两个相似比如相同类别的图像在特征空间内尽可能相近不相似的图像尽可能远这里相似的图像就是正样本不相似的图像就是负样本。而如何区分正负样本对的方法就形成了各式各样的代理任务pretext task。那MoCo所用的代理任务就是个体判别了每张图像都是单独的一类在网络中只有原图经过数据增强后的图像属于原图的正样本其他的图像都是负样本。 有了区分正负样本的方法后就是常规的进入encoder提取特征输出的特征用NCEloss进行反向传播梯度下降。 2、MoCo 2.1、引言 无监督学习在nlp领域取得了巨大的成功比如BERT、GPT等等但是在cv领域还是有监督占据主流效果更好。这可能是因为nlp天然是一个离散信号不同的单词都可以表示为词汇表中的一类相当于是一个分类任务。所以在nlp中无监督学习容易去建模优化。但是图像往往是连续高维的信息不想单词那样有很强的语义信息所以不适合去tokenize建模。 MoCo把对比学习看作是一个动态字典的任务他把锚点图像看作是一个query将query与字典中的所有特征进行查询匹配与正样本更加接近与负样本远离。为了使字典中的k0,k1...与q能匹配上字典的编码器是要一直随着锚点的编码器更新的尽可能与锚点编码器相似所以字典是动态的。 为了使对比学习结果更好字典应该具有两个特性一个是字典足够大第二个是在训练时要保持尽可能的一致性。 1字典足够大才能学习到真正将正负样本区分开的特征。 2只有锚点的编码器和字典的编码器保持一致才能让网络真正匹配到正样本。如果用了不同的编码器那么q很有可能匹配到与q特征相似但是匹配到的是负样本的情况。 但是之前的自监督文章要么只关注字典的大小忽略了一致性比如Inst Disc。要么只关注一致性而忽略了字典的大小比如SimCLR。 SimCLR如上图a所示他是一个端到端的模型所有编码器都可以通过梯度回传更新模型直接从原始输入到最终输出没有明确定义的中间步骤或子任务。这样可以保证所有正负样本都是从同一个编码器输出的特征具有高度的一致性。但是缺点是负样本大小就是batchsize的大小。如果想要大的字典就需要大的batchsize大的硬件支持比如SimCLR的batchsize就为8192。并且大的batchsize会导致模型优化困难。 Inst Disc如上图b所示他只具有一个编码器其他所有样本的特征都存在memory bank中。Inst Disc的memory bank就包含了128万个特征为了节省内存每个特征是128维的。在前向过程中从memory bank中随机选取一部分作为负样本进行对比学习然后用更新后的编码器去重新提取刚才负样本的特征放入memory bank中。但是这样会导致字典中的样本特征和q特征不一致因为提取特征的编码器不同导致训练结果产生偏差。 2.2、主要贡献 MoCo的主要改进在于做了一个动态的字典其中包括一个队列和一个移动平均编码器也就是动量编码器。 其中用队列表示字典将字典的大小与batchsize大小的关系剥离开。比如你的batchsize只有32但是你的队列就完全可以是batchsize大小的10倍大小每次将新的特征传入字典中时队列中最早的特征就会被踢出。因为队列不会进行梯度回传所以队列可以放很多负样本使字典变得很大。 动量编码器的表达式如上式所示yt为该时刻输出yt-1表示上一时刻输出xt表示该时刻输入m是动量权重值在0~1之间。当m趋近于1时表示该时刻输出更加依赖于上一时刻输出趋近于0时表示该时刻输出更依赖于该时刻输入。MoCo中动量编码器是由锚点编码器初始化的m选取的比较大所以动量编码器变化的比较缓慢目的是想让队列里的特征尽量都是由相同的编码器提取的使特征保持一致性。 通过队列和动量编码器的设置MoCo就可以创建一个又大又一致的字典了。 MoCo比较灵活可以应用在很多代理任务上。在论文中主要采用了个体判别的任务q和k是同一个图片的不同视角不同数据增强则认为是正样本。 2.3、相关工作 一般无监督的创新方式分为两种一种是代理任务的创新一种是目标函数的创新。MoCo就是目标函数的创新。 目标函数是测量模型预测的结果和固定目标之间的差异的。目标函数有生成式和判别式的。生成式就比如自编码器重建图像由原图作为标签目标函数是L1loss或者L2loss。判别式就是类似分类任务用交叉熵损失函数。 但是生成式和判别式的损失函数中标签都是固定的值原始图像或者类别标签。但是对比学习的目标函数的标签不是固定的。对比学习中的标签一般是正样本和负样本经过编码器提取的特征由于编码器是不断变化的所以特征值也是不断在变化的。 对抗性的目标函数也没有固定的值比如GAN衡量的是两个概率分布之间的差异。 有监督任务都是有ground truth标签的通过模型输出预测的结果通过目标函数来衡量输出和标签的差异。但是当数据集没有标签的时候怎么办呢我们就通过代理任务生成一个自监督信号去充当ground truth标签信息通过特定的目标函数来衡量他们之间的差异。 2.4、方法 2.4.1、损失函数 我们想让q和正样本之间的loss尽量小和负样本之间的loss尽量大。MoCo提出了InfoNCE。 先来讲讲sigmoid函数sigmoid函数可以看作一个二分类的结果最后一层全连接神经元的个数为1输出结果的取值范围是[0,1]。为什么是二分类的呢因为只有当x-x时sigmoid函数相加为1。 softmax是多分类的结果每个输出值都可当成概率来理解所有输出相加为1。 而交叉熵损失函数往往是和softmax函数一起使用的其中p(x)表示one-hot标签q(x)表示预测的值范围为[0,1]。所以交叉熵损失的结果一般是-log(x)x表示输出某一类概率最大的值。 对比学习理论上来说是可以用交叉熵损失函数的因为本质上对比学习属于一个多分类问题字典中每一个图像都是一个类别。但是这样softmax是没法计算的因为类别太多还要对每个类别的输出归一化为概率还要取指数和负对数计算量爆炸。所以对比学习一般使用NCEloss。 NCEloss是将多分类问题转化为了二分类问题分为数据和噪声两类。正样本就是数据类负样本就是噪声类。并且如果对字典中每个输出都来计算二分类计算量还是太大了NCEloss就想在噪声类别负样本中进行采样采样的结果再来计算二分类。 但是MoCo这篇论文认为如果把所有负样本都看作噪声类也是不太合理的因为负样本中也有与正样本相似的图像所以提出了InfoNCEloss如上式所示。分母的K表示负样本个数i从0到K一共K1个样本其实这就是一个交叉熵损失函数加了一个温度系数tao。 2.4.2、队列 MoCo用队列的方式表示字典将字典大小和batchsize大小的关系分离开并且可以实时更新字典使字典中的负样本特征尽量保持一致。 2.4.3、动量编码器 因为队列无法进行梯度回传所以正负样本编码器无法更新。如果直接复制锚点编码器的话效果不太好可能是因为这样的话队列中的特征就不一致了因为是不同时刻编码器输出的特征。所以MoCo采用了动量编码器将m设为0.999这样动量编码器变化的就非常缓慢使队列中的特征保持一致性效果非常好。 2.4.4、前向过程 上图是MoCo论文中前向过程的伪代码。 先随机初始化query编码器然后将参数赋给key编码器。从dataloader中取出mini-batch个图像经过图像增强得到x_q和x_kx_q作为锚点x_k作为正样本。x_q和x_k经过编码器得到特征q256*128和k256*128k不进行梯度计算。将q和k通过矩阵乘法计算正样本相似度l_pos256*1。将队列中的负样本与q进行矩阵乘法得到负样本相似度l_neg256*65536。将正负样本向量concat起来得到logits256*65537。创建一个值为0大小为batchsize的标签。因为concat时所有正样本都位于batch的第0个位置所以可以直接用CEloss计算。至于详细的计算过程可以参考文章交叉熵函数Cross_EntropyLoss()的详细计算过程-CSDN博客然后梯度回传更新f_q编码器。动量更新编码器f_k。更新队列将最新的mini-batch的特征放入队列将旧的去除。 2.5、实验 MoCo实验细节如上图所示。 2.5.1、网络结构比较 上图所示是三种自监督方法的比较横坐标为负样本数量纵坐标为精度。 2.5.2、动量参数m 上图证明动量参数越大越好动量编码器更新的越慢越好。 2.5.3、imageNet数据集结果 2.5.4、迁移特性 无监督学习最主要的目标就是去学习一个可以迁移的特征。是ImageNet影响力广泛最主要的原因就是在ImageNet上预训练的模型可以在下游任务上微调从而使模型在数据集少的任务中也可以获得很好的效果。 实验证明在下游任务上MoCo全面领先。 2.6、MoCo代码
http://www.zqtcl.cn/news/427322/

相关文章:

  • 做教育类网站一般流程苏宁易购网站风格
  • 兼职网站推广如何做如何用ps做网站
  • 济南外贸网站建设软件公司网站
  • 衡阳做网站注册网站流程
  • 关于网站建设的申请报告wordpress花园网站
  • jsp网站 iis免费企业信息查询
  • 泊头市网站建设公司只有企业自己建立网站平台进行
  • 有阿里云服务器 怎么做网站找广告设计
  • 网站建设 ui设计公司素材网站源码
  • 网站响应式布局wordpress代码混乱
  • 免费建设个人网站四川建设人员信息查询
  • 做国际网站有哪些专门做拼花网站
  • eclipse sdk做网站小程序开发报价明细
  • 网站开发源码售卖合同百度广告投诉电话
  • wordpress读法鄂州seo
  • 网站建设方案的写作方法媒体发稿推广
  • 免费的网站空间注册空壳公司判几年
  • 网站怎么运营推广达美网站建设
  • 江苏建设人才网网站中国最新时事新闻
  • 网站建立时间毕节地seo
  • 央企网站建设意义长沙网约车
  • 广告联盟怎么建设网站做贸易 公司网站放哪里
  • 北京建设局网站首页开发游戏用什么软件
  • 做淘宝客网站能接广告吗网站悬浮二维码
  • 重庆自助建站模板网站建设juxinghulian
  • 优惠券网站怎么搭建宝安中心区规划
  • 网站建设中怎么添加源码会计常用的三个软件
  • vk汉化网站谁做的购物网站设计公司
  • 门户网站建设平台建设招标项目常挂网站有哪些
  • 公司海外网站建设龙海市城乡规划建设局网站