购物车网站设计,前端开发是干嘛,怎么做电视台网站,阜宁县城乡建设局新的官方网站目录 1 ViLD2 GLIP2.1 前言2.2 损失计算2.3 模型框架 1 ViLD
OPEN-VOCABULARY OBJECT DETECTION VIA VISION AND LANGUAGE KNOWLEDGE DISTILLATION
从标题就能看出来#xff0c;作者是把CLIP模型当成一个Teacher#xff0c;去蒸馏他自己的网络#xff0c;从而能Zero Shot去… 目录 1 ViLD2 GLIP2.1 前言2.2 损失计算2.3 模型框架 1 ViLD
OPEN-VOCABULARY OBJECT DETECTION VIA VISION AND LANGUAGE KNOWLEDGE DISTILLATION
从标题就能看出来作者是把CLIP模型当成一个Teacher去蒸馏他自己的网络从而能Zero Shot去做目标检测。
现在的目标检测数据集标注的类别都很有限这些有限的类别叫做base categories如下图中的蓝框标注的东西都是玩具在这种数据集上去训练一个目标检测器就只能检测出玩具得不到更细致的检测结果。我们能不能在现有数据集的基础之上不去额外标注这些黄鸭子或者绿鳄鱼但模型能直接做到检测这些物体的能力换句话说就是模型应该有用能检测这种novel categories新类别的能力。 主体的方法如下图所示
a是Base方法实际上是一个Mask RCNN是一个两阶段的分类器第一阶段会出一些region proposal也就是图中的输入 N proposals第二阶段就是把N个proposals经过Detection Head得到N个region embeddings然后再经过一些分类头最后输出这些Bounding Box到底是什么类这样就完成了目标检测。目标函数一般包括两个定位和分类。b是ViLD的text部分N个proposals经过检测头经过投射和正则等操作之后得到N个region embeddings。接下来我们要去算文本的embedding就是把物体的类别拿过来给一些prompt生成一个句子经过文本编码器即可。ViLD-text和Base方法一样也是在这些数据集上做有监督的训练而且是在基础类上训练。在这个阶段ViLD-text只是把图像的特征和文本的特征联系到一起Zero Shot能力还有待加强。需要注意的是不在基础类里的其他类别都归到Background背景类。背景类的学习非常关键专门有一个背景的embedding需要在模型训练的时候去把它学好。c是ViLD的image部分对于得到的M个bounding box可以把它们抠出来并resize成特定大小例如224*224这样就可以输入到CLIP预训练好的图像编码器得到图像的特征当做Teacher。Student网络就是常用的目标检测的框架M个proposals经过一些层得到的图像特征我们希望它们和CLIP的特征尽可能地接近所以直接用一个简单的L1-Loss去做蒸馏就可以了。这里的监督信号不再是人工标注而是CLIP的图像编码所以不在受到基础类的限制了。ViLD-image通过利用CLIP模型大大地加强了Open Vocabulary的能力。这里取M个而不是N个proposals主要是CLIP抽取特征太慢了因此需要减少proposal的数量来加速训练。d是ViLD-text和ViLD-image合体右边蒸馏部分只有在训练的时候用到测试的时候没有用到。 模型总览图如下图所示 2 GLIP
2.1 前言
目标检测和分割一样标注数据集都很贵对于边边角角的类和层出不穷的新类我们没有办法训练一个模型把这些都检测的很好。我们只能依赖于Open-vocabulary的目标检测模型来把这些corner case都处理的很好。
而如果想训练一个很强的Open-vocabulary的目标检测模型就只能像CLIP一样可以利用上亿规模的的数据集而且还要把图片-文本对应关系和定位都学的很好。那么 重点就是使用图片-文本对数据集的高效使用 因为很好收集。
Vision Language任务图片-文本多模态任务里有一类定位任务Vision grounding主要就是根据文本定位出图片中对应的物体短语定位phrase grounding这与目标检测任务非常类似都是去图中找目标物体的位置。
GLIP 的文章的出发点就是将检测问题转换为短语定位phrase grounding问题这样GLIP 模型就统一了目标检测和定位两个任务可以使用更多的数据集。再配合伪标签的技术来扩增数据使得训练的数据量达到了前所未有的规模3M人工标注数据和24M图文对数据。最后训练出来的模型GLIP-L直接以 zero-shot 的方式在COCO 和LVIS 上进行推理mAP分别达到了 49.8 和26.9可见其性能非常的强。
GLIP Detection Phrase Grounding给定一张图片和一个文本根据这个文本把物体找出来。
效果展示 2.2 损失计算
目标检测的损失函数由分类损失和定位损失组成。对于目标检测和Vision grounding而言定位部分都差不多二者的区别主要在于如何计算分类loss。因为 detection的标签是one-hot的类别单词而Vision grounding的标签是一个句子。所以需要把二者的分类loss统一到一个框架下面也就是L Lcls Lloc.
detection 分类损失计算公式 vision grounding分类损失计算 2.3 模型框架
模型总览图如下图所示由于所有数据集都是有标注的所以模型是以有监督的方式进行训练。计算得到文本特征与图像特征的相似度之后直接与 GT box计算对齐损失alignment loss即可和ViLD-text分支一样。这样就完成了文本和图像的特征融合就可以进行zero-shot检测了。而定位损失也是直接与GT box计算L1 损失。
模型中间的融合层Deep Fusion和LSeg的做法一样都是为了使图像特征和文本特征进一步交互使最终的图像-文本联合特征空间joined embedding space训练得更好相似的embedding拉近不相似的拉远图像特征和文本特征被训练的更强更有关联性这样后面计算相似度矩阵的效果肯定就更好。
Deep Fusion层实际上是Cross Attention也可以用其他的网络结构替代。