ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

广义类别发现(Generalized Category Discovery, GCD)_1

广义类别发现(Generalized Category Discovery, GCD)_1 简单来说广义类别分类就是利用部分已知类别的标签给一批混合了“已知类和未知类”的无标签数据进行分类同时发现其中的新类别。即GCD 需要同时实现已知类识别和新类发现。论文名——Generalized Category Discovery论文链接https://doi.org/10.1109/CVPR52688.2022.00734图1GCD下面我将根据论文思路详细走一遍GCD整体流程。GCD1、加载ViT-B/16权重权重如何获得在 ImageNet 一种大型数据集上通过 DINO 一种自监督方法详细介绍附在后面了自监督学习得到的 ViT-B/16一种网络结构权重。如何用该阶段无需自己做加载预训练好的模型权重即可。即先创建一个结构相同、参数尚未训练的 ViT-B/16 网络随机初始化 ViT-B/16再把 DINO 在 ImageNet 上预训练得到的 ViT-B/16 权重加载进去。权重下载入口https://github.com/facebookresearch/dino说明DINO与ViT的详细介绍见DINO和ViT小节。2、配置GCD微调网络使用加载好的ViT-B/16网络提取每个增强视图的特征在后接一个多层感知器multi-layer perceptron, MLP投影头。即其中故输入图像的投影特征为3、无监督对比损失和监督对比损失计算数据处理从和中取样组成一个mini-batch。然后对于每个样本独立进行两次随机增强两个视图通过同一个ViT和投影头得注意两个视图使用的是同一套网络参数。损失计算计算全部样本的自监督对比损失让同一样本的两个视图靠近。计算带标签样本的监督对比损失让同一类别的不同样本靠近。4、微调特征提取将两部分损失加权计算总损失其中自监督部分在整批样本上计算监督部分在有标签子集上计算。接着执行1根据当前特征计算出来总损失后反向传播计算可训练参数的梯度。2优化器更新ViT中可训练部分以及投影头。3取下一批样本重复前面步骤。5、半监督k-means 聚类微调完成后根据验证集上旧类别聚类准确率选出表现最优的ViT-B/16骨干网络参数。在后续特征提取和聚类阶段测试阶段加载并固定该参数不再进行梯度更新同时移除用于对比学习的MLP投影头丢弃投影头。将带标签数据和无标签数据中的样本输入骨干网络加载表现最优的骨干网络参数重新提取用于聚类的特征并进行L2归一化。然后根据有标签样本提供的类别约束在无标签样本上进行半监督k-means 聚类。图2展示的是GCD这篇论文中给出的适用于 GCD 的半监督 k-means 算法。图2半监督k-means聚类流程图2的详细流程可以分为以下几步已知总类别数K1确定分成多少个簇2用带标签样本初始化已知类别中心3在已有中心的基础上用k-means初始化剩余中心4分配样本有标签样本强制归属无标签样本自由选择5根据当前分组更新所有中心总类别数未知1新类别数估计详见论文 GCD 3.2. Estimating the class number in unlabelled data大致思路尝试不同的总簇数k在对全部数据进行普通k-means 聚类再用有标签样本的聚类准确率评价这个k是否合适最后选择得分最好的候选值。2重复已知总类别数k的步骤1-5说明普通k-means 聚类算法这里就不多加赘述了这部分网上资源应该挺多的。DINO输入原始图像具体流程对原始图像做的两次不同的随机增强分别输入学生网络和教师网络两个网络分别输出概率分布和。通过交叉熵损失让学生输出接近教师输出流程图如图2所示。图2Self-Distillation with No Labels (DINO)其中只对学生网络反向传播从而进行梯度下降更新。教师模型不通过梯度更新而是由学生参数的指数移动平均Exponential Moving Average, EMA更新。说明DINO采用ViT作为学生网络和教师网络。其中图1中灰色模块由骨干网络ViT-B/16和DINO投影头组成。论文详见Emerging Properties in Self-Supervised Vision Transformers | IEEE Conference Publication | IEEE XploreViT我们将一张图像切分为固定大小的图像块对每个图像块做线性嵌入加入位置嵌入再把得到的向量序列送入标准Transformer编码器。为完成分类任务我们采用常规方法在序列中额外添加一个可学习的“分类标记”。模型框架如图3所示。图3Vision Transformer (ViT)论文详见[2010.11929] An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale距离计算1、欧式距离Euclidean Distance最直观的空间直线距离衡量向量空间上绝对的远近对各维度的量纲很敏感。数学定义2、余弦距离Cosine Distance余弦相似度用于衡量两个向量之间的夹角刻画向量的方向相似程度忽略向量本身的长度模 / 幅值大小。数学定义其中余弦距离余弦距离是由余弦相似度转换得到用于做距离度量。数学定义其中余弦距离取值范围 [0, 2]。3、马氏距离Mahalanobis Distance考虑数据集的协方差矩阵消除特征量纲同时消除特征之间的相关性。衡量样本点到数据集中心的标准化距离也可以计算两个向量之间马氏距离。数学定义1样本到数据集中心的马氏距离2向量与向量之间的马氏距离其中为数据集的全局协方差矩阵维度为。
返回列表