论文标题:
DropPos: Pre-Training Vision Transformers by Reconstructing Dropped Positions
论文链接:https://arxiv.org/pdf/2309.03576
代码链接:https://github.com/Haochen-Wang409/DropPos
今天介绍我们在自监督视觉预训练领域的一篇原创工作,目前 DropPos 已被 NeurIPS 2023 接收,相关代码已开源,有任何问题欢迎在 GitHub 提出。
TL;DR
我们提出了一种全新的自监督代理任务 DropPos,首先在 ViT 前向过程中屏蔽掉大量的 position embeddings(PE),然后利用简单的 cross-entropy loss 训练模型,让模型重建那些无 PE token 的位置信息。这个及其简单的代理任务就能在多种下游任务上取得有竞争力的性能。
Motivation
在 MoCo v3 的论文中有一个很有趣的现象:ViT 带与不带 position embedding,在 ImageNet 上的分类精度相差无几。
▲ 表1. MoCo v3 中的实验现象(原文第6页) 这一实验结果背后,隐含着「ViT 的建模主要关注于不同 patch 的 visual appearence,对于 position 的 awareness 较差」这一信息。即,如果把图片切 patch 然后再随机打乱之后,ViT 能够在乱序的情况下准确识别该图片的类别。这一点和人类直觉有很大出入。同时,有可能是因为 ViT 过拟合到了 ImageNet 这个特定数据集导致的。 基于此,我们首先做了一些 tiny experiments,探究 position awareness 与模型的识别准确率到底是否有正相关的关系。具体来说,我们冻结了 MoCo v3 和 MAE 的 pre-train/fine-tune 权重,在其后接一个全连接层,并用 position classification 这个任务做 linear probing。即,在 forward 过程中随机丢弃 75% 的 PE,并把 ViT 的 feature 映射到 196 维(一张图有 14×14 个 patch),期望让最终的线性层正确分类该 patch 的位置。
▲ 表2. Position awareness 对于下游任务的影响 表中结果表明,fine-tune 后的模型权重,更适合预测位置这一任务。说明「强大的对位置的建模能力,对于图像分类任务是有益的」。基于此,我们想探究一种能够提升 ViT 对于位置建模能力的全新自监督代理任务。 一种可行的方案是「简单地把 ViT 的 PE 随机丢弃一部分,然后让模型预测这些不带 PE 的 token 的精确位置」,即 reconstruct Dropped Positions(DropPos)。
▲ 图1. DropPos 与 CL 和 MIM 的对比 DropPos 有如下的优势:
- 对比 CL,DropPos 不需要精心设计的数据增强(例如 multi-crop)。
- 对比 MIM,DropPos 不需要精心设计的掩码策略和重建目标。
Method
▲ 图2. DropPos 的流程图 即使 DropPos 的想法很直观也很简单,但这类方法一直没有成为预训练的主流,主要是由于在设计上有以下三个难点:
- 如果简单地把所有 PE 丢弃,让模型直接重建每个 patch 的位置,会导致上下游的 discrepency。因为下游任务需要 PE,而上游预训练的模型又完全没见过 PE。
- ViT 对于 long-range 的建模能力很强,这个简单的位置重建任务可能没办法让模型学到非常 high-level 的语义特征。
-
看上去相似的不同 patch(例如纯色的背景)的位置无需被精准重建,因此决定哪些 patch 的位置需要被重建非常关键。
- 针对问题一,我们采用了一个简单的随机丢弃策略。每次训练过程中丢弃 75% 的 PE,保留 25% 的 PE。
- 针对问题二,我们采取了高比例的 patch mask,既能提高代理任务的难度,又能加快训练的速度。
- 针对问题三,我们提出了 position smoothing 和 attentive reconstruction 的策略。
3.1 DropPos 前向过程
▲ 算法1. DropPos 的前向过程 DropPos 的前向过程包括两段 mask,分别是第一步 patch mask(类似 MAE),和第二步的 position mask(用可学习的 position mask 代替 dropped positions)。具体可以参见上方的伪代码。
3.2 Objective
我们使用了一个最简单的 cross-entropy loss 作为预训练的目标函数:其中,o 是模型的输出,即第 i 个 patch 的预测位置是 j 的 logit,y 是真实的位置信息。 gamma 是第一步的 patch mask ratio,N 为总 patch 数量。 是 0-1 的 position mask,1 表示该 patch 带有 PE,不应当被重建,而 0 表示该 patch 不带 PE,需要被重建。 我们接下来引入 position smoothing 和 attentive reconstruction 技术来松弛这个问题,以解决相似但不同 patch 的位置重建问题。 3.2.1 Position Smoothing 我们采用一个高斯核来平滑原本的 position targets此处,w(i, j) 表示当真实位置为 i,而预测位置为 j 时,平滑后的 position target。 此外,我们还让 sigma 自大变小,让模型一开始不要过分关注精确的位置重建,而训练后期则越来越关注于精准的位置重建。 3.2.2 Attentive Reconstruction 我们采用 [CLS] token 和其他 patch 的相似度作为亲和力矩阵,作为目标函数的额外权重。其中 f 为不同 token 的特征,tau 为超参数,控制了 affinity 的平滑程度。
Experiments
4.1 与其他方法的对比
4.2 消融实验
本文主要有四个超参:patch mask ratio(gamma),position mask ratio(gamma_pos),sigma,和 tau。由表,我们可以得出一些比较有趣的结论:- 一般来说,更高的 position 重建精度会带来更高的下游任务性能。
- 上述结论存在例外:当 sigma = 0 时,即不做位置平滑时,位置预测精度高,而下游任务表现反而低;当 tau = inf 时,即不做 attentive reconstruction 时,位置预测精度高,而下游表现反而低。
-
因此,过分关注于预测每一个 patch 的精确的位置,会导致局部最优,对于下游任务不利。
上图是 DropPos 位置重建的可视化结果,黑色 patch 代表的是前向过程中被 mask 掉的 patch;白色 patch 的位置被错误重建,而剩余 patch 的位置被精准重建。 DropPos 在极端情况(例如 gamma=0.75)时,依然可以做到大部分 patch 的精准重建。 ·
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网
网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
物联网
+关注
关注
2909文章
44556浏览量
372734
原文标题:NeurIPS 2023 | 全新的自监督视觉预训练代理任务:DropPos
文章出处:【微信号:tyutcsplab,微信公众号:智能感知与物联网技术研究所】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
KerasHub统一、全面的预训练模型库
深度学习领域正在迅速发展,在处理各种类型的任务中,预训练模型变得越来越重要。Keras 以其用户友好型 API 和对易用性的重视而闻名,始终处于这一动向的前沿。Keras 拥有专用的内容库,如用
时空引导下的时间序列自监督学习框架
【导读】最近,香港科技大学、上海AI Lab等多个组织联合发布了一篇时间序列无监督预训练的文章,相比原来的TS2Vec等时间序列表示学习工作,核心在于提出了将空间信息融入到预
直播预约 |数据智能系列讲座第4期:预训练的基础模型下的持续学习
神经网络,特别是预训练的基础模型研究得到了广泛的应用,但其仍然主要依赖于在大量样本上的批量式训练。本报告将探讨实现模型的增量式训练,针对深度神经网络在增量式学习新
预训练和迁移学习的区别和联系
预训练和迁移学习是深度学习和机器学习领域中的两个重要概念,它们在提高模型性能、减少训练时间和降低对数据量的需求方面发挥着关键作用。本文将从定义、原理、应用、区别和联系等方面详细探讨预
大语言模型的预训练
能力,逐渐成为NLP领域的研究热点。大语言模型的预训练是这一技术发展的关键步骤,它通过在海量无标签数据上进行训练,使模型学习到语言的通用知识,为后续的任务微调奠定基础。本文将深入探讨大
LLM预训练的基本概念、基本原理和主要优势
理解和生成自然语言的能力,为各种NLP任务提供了强大的支持。本文将详细介绍LLM预训练的基本概念、基本原理以及主要优势,并附上相关的代码示例。
神经网络如何用无监督算法训练
神经网络作为深度学习的重要组成部分,其训练方式多样,其中无监督学习是一种重要的训练策略。无监督学习旨在从未标记的数据中发现数据内在的结构、模式或规律,从而提取有用的特征表示。这种
预训练模型的基本原理和应用
预训练模型(Pre-trained Model)是深度学习和机器学习领域中的一个重要概念,尤其是在自然语言处理(NLP)和计算机视觉(CV)等领域中得到了广泛应用。预
【大语言模型:原理与工程实践】大语言模型的预训练
大语言模型的核心特点在于其庞大的参数量,这赋予了模型强大的学习容量,使其无需依赖微调即可适应各种下游任务,而更倾向于培养通用的处理能力。然而,随着学习容量的增加,对预训练数据的需求也相应
发表于 05-07 17:10
【大语言模型:原理与工程实践】大语言模型的基础技术
就无法修改,因此难以灵活应用于下游文本的挖掘中。
词嵌入表示:将每个词映射为一个低维稠密的实值向量。不同的是,基于预训练的词嵌入表示先在语料库中利用某种语言模型进行预训练,然后将其应
发表于 05-05 12:17
【大语言模型:原理与工程实践】核心技术综述
其预训练和微调,直到模型的部署和性能评估。以下是对这些技术的综述:
模型架构:
LLMs通常采用深层的神经网络架构,最常见的是Transformer网络,它包含多个自注意力层,能够捕捉输入数据中
发表于 05-05 10:56
名单公布!【书籍评测活动NO.30】大规模语言模型:从理论到实践
榜销售TOP1的桂冠,可想大家对本书的认可和支持!
这本书为什么如此受欢迎?它究竟讲了什么?下面就给大家详细~~
本书主要内容
本书围绕大语言模型构建的四个主要阶段——预训练、有监督微调、奖励建模
发表于 03-11 15:16
顶刊TIP 2023!浙大提出:基于全频域通道选择的的无监督异常检测
Density-based方法:基于密度的方法通常采用预训练的模型来提取输入图像的有意义嵌入向量,测试图像时通过计算嵌入表示与参考表示分布之间的相似度以得到异常分数。这种方法在MVTec AD等数据集上取得了较高的指标分数,但需要预
NeurIPS23|视觉 「读脑术」:从大脑活动中重建你眼中的世界
在这篇 NeurIPS23 论文中,来自鲁汶大学、新加坡国立大学和中科院自动化所的研究者提出了一种视觉 「读脑术」,能够从人类的大脑活动中以高分辨率出解析出人眼观看到的图像。 人类的感知不仅由客观
评论