【多模态】BEiT v2

news2024/10/6 8:36:10

链接:https://arxiv.org/pdf/2208.06366
论文:BEIT V2: Masked Image Modeling with Vector-Quantized Visual Tokenizers

Introduction

  1. Motivation:Masked image modeling (MIM) 任务在自监督表征学习上取得了不错的成绩,但是现有方法大多是基于low-level image pixels,需要探索模型的high-level semantics。
  2. 创新点:引入了矢量量化知识蒸馏(Vector-Quantized Knowledge Distillation ,VQ-KD)算法来离散语义空间,同时引入一个patch聚合策略(a patch aggregation strategy)鼓励模型关联所有patch到[CLS]
  3. 实验效果:
    在这里插入图片描述

Details

整体架构与BEiT相似,依旧是包含一个visual tokenizer对图像进行离散表示(visual tokens),训练目标则是重建相应位置的masked visual tokens。

  1. Image Representation:依旧使用ViT,将输入切为patches,flattened and linearly projected to input embeddings,最终输入transformer。
  2. Training Visual Tokenizer
    在这里插入图片描述
    a. 提出vector-quantized knowledge distillation (VQ-KD)方法训练visual tokenizer, 架构如上图所示,包括tokenizer和decoder两部分。
    b. tokenizer将输入图像映射为一系列visual tokens,进行离散化,与patch数量对应。其包含一个Vision Transformer encoder, and a quantizer。想通过encoder将图像编码为向量,然后quantizer查找最近邻的表示。寻找最近邻embedding公式如下(quantizer的目的是将向量映射到固定词表,便于在后续mask任务中预测):
    在这里插入图片描述
    先对向量进行l2正则,使用余弦相似度计算。
    c. 向量量化后,过l2正则输入decoder,decoder模型为多层Transformer,其目标是重建Teacher模型的语义特征(Teacher模型可以为DINO或者CLIP)。再最大化decoder的输出和teacher模型的输出的余弦相似度。
    d. 由于量化过程不可微,直接使用梯度拷贝(从decoder的输入到encoder的输出),直观上,量化器为encoder输出查找最近的编码,所以该codebook embeddings的提督对encoder的优化方向有效。
    在这里插入图片描述
    第一项为decoder输出与teacher输出的余弦相似度损失,sg表示stop-gradient,前向传递过程中为恒等式,同时在反向传播期间具有零梯度。第二项和第三项分别代表前向和反向。
  3. Improving codebook utilization.
    向量量化训练期间很容易遇到codebook的坍缩,只有一小部分的codes可以使用,
    a. 量化过程将码本嵌入空间的维数减少到32-d, 在被送入解码器之前被映射回高维空间
    b. 指数移动平均可以使VQ-KD的训练稳定。
  4. Pretraining BEIT V2
    a. 给定输入图像x,大约40%的patches会被block-wisely masked,masked position会被标记,masked patch会被一个shared learnable embedding取代。
    b. prepend a learnable [CLS] token,在预测时对应位置加一个全连接层。
    在这里插入图片描述
    c. Pretraining global representation:为了使CLS更好地进行全局图像特征表示,消除patch-level的预训练对image-level的表示差异,选取最后L层的CLS表示,以及encoder第l层的patch表示,拼接作为一个浅层(2-layer)Transformer的输入,进行掩码预测。MIM Head的参数共享,两个loss相加(原始MIM loss和过完浅层transformer的loss)。直观上,这样做的好处在于由于使用训练不充分的中间表示,导致CLS更好地涵盖全局信息,使MIM loss更低。该新增的两层transformer仅辅助训练,inference会被丢弃。

实验

  1. 两阶段训练参数
    a. Visual tokenizer training
    ViT-B/16,decoder为三层Transformer,和encoder头数与维度都相同,Teacher使用CLIP-B/16 train VQ-KD on ImageNet-1k with 224×224 resolution。code size K is set as 8192,code dimension D as 32。
    b. Masked image modeling
    ImageNet-1K,set l = 9 for ViT-B/16, l = 21 for ViT-L/16,40% mask
    pre-train的vit encoder和modeling阶段不是同一个
  2. 对比实验
    在这里插入图片描述
    在这里插入图片描述
  3. 消融实验
    a. VQ-KD的消融
    在这里插入图片描述
    b. Patch aggregation消融
    在这里插入图片描述
    c. VQ-KD targets
    在这里插入图片描述
  4. 可视化实验
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1865584.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

ONLYOFFICE 8.1版本桌面编辑器测评:超越想象的办公体验!

在当今数字化办公时代,一个功能强大、操作便捷的办公套件对于提高工作效率至关重要。ONLYOFFICE 8.1作为一款备受瞩目的办公软件,凭借其全面的功能、优异的性能和出色的用户体验,为用户带来了超越想象的办公体验。下面,我们将对ON…

程序员学长 | 快速学会一个算法,RNN

本文来源公众号“程序员学长”,仅用于学术分享,侵权删,干货满满。 原文链接:快速学会一个算法,RNN 今天给大家分享一个超强的算法模型,RNN 循环神经网络(Recurrent Neural Network, RNN&…

怎么打印加密的pfd文件,有那些方法?

现在人们的保密意识越来越强了,越来越多的人在完成pdf文档后就会对文档进行保护,但有的PDF文档被添加了密码,限制了打印的权限,导致我们想打印PDF文档的时候就提示我们要输入密码。面对这种情况,我们要怎样才能把PDF文档打印出来呢…

atcoder abc 359

A count takahashi 问题: 思路&#xff1a;字符串比较 代码&#xff1a; #include <bits/stdc.h>using namespace std;int main() {int n;cin >> n;int ans 0;for(int i 1; i < n; i ) {string s;cin >> s;if(s[0] T) ans ;}cout << ans;re…

BenchmarkSQL 对 MySQL 测试时请注意隔离级别!

BenchmarkSQL 是一款经典的开源数据库测试工具&#xff0c;内含了TPC-C测试脚本&#xff0c;可支持 Oracle、MySQL、PostgreSQL、SQL Server以及一些国产数据库的基准测试。 作者&#xff1a;李彬&#xff0c;爱可生 DBA 团队成员&#xff0c;负责项目日常问题处理及公司平台问…

机器学习--概念理解

知识点 一、机器学习概述 人工智能 机器学习 深度学习 学习的范围&#xff1a;模式识别、数据挖掘、统计学习、计算机视觉、语音识别、自然语言处理 可以解决的问题&#xff1a;给定数据的预测问题 二、机器学习的类型 监督学习 分类 回归 无监督学习 聚类 降维 强化…

【Java Web】会话管理

目录 一、为什么需要会话管理&#xff1f; 二、会话管理机制 三、Cookie概述 四、HttpSession概述 4.1 HttpSession时效性 一、为什么需要会话管理&#xff1f; HTTP协议在设计之初就是无状态的&#xff0c;所谓无状态就是在浏览器和服务器之间的通信过程中&#xff0c;服务器并…

免费录屏软件哪个好?录屏软件,分享3款免费工具

在日常生活或者工作中&#xff0c;录屏软件已经成为我们的得力助手。无论是教学、演示、娱乐&#xff0c;录屏软件都能为我们带来极大的便利。然而&#xff0c;市面上有些录屏软件的价格却十分的昂贵&#xff0c;让人望而却步。那么市面上到底有没有免费的录屏软件&#xff1f;…

MySQL的jdbc、odbc驱动版本必须和MySQL版本一样吗?

MySQL的版本和JDBC&#xff0c;ODBC驱动版本大体一致就可以 比如说MySQL的版本是8.0.35&#xff0c;您可以用8.0.19版本的JDBC,ODBC。或者8.0.31的版本。 除此之外我也查看了其他资料&#xff0c;这个哥们总结的也不错&#xff0c;我把链接放到这里 MySQL JDBC驱动版本与数据…

电脑可以录屏吗?5个方法,珍藏分享

在数字化时代&#xff0c;电脑的录屏功能已经成为许多人工作和学习的必备工具。录屏可以帮助我们捕捉屏幕上的动态内容&#xff0c;记录下重要的瞬间。所以&#xff0c;录屏是一个非常实用的功能。那么&#xff0c;电脑可以录屏吗&#xff1f;答案是肯定的。本文将为您介绍5种电…

一文详细了解Bootloader

Bootloader是什么 bootloader是一个引导加载程序&#xff0c;它的主要作用是初始化硬件设备、设置硬件参数&#xff0c;并加载操作系统内核。在嵌入式系统中&#xff0c;bootloader是硬件启动后第一个被执行的程序&#xff0c;它位于操作系统和硬件之间&#xff0c;起到桥梁的…

加速科技Flash存储测试解决方案 全面保障数据存储可靠性

Flash存储芯片 现代电子设备的核心数据存储守护者 Flash存储芯片是一种关键的非易失性存储器&#xff0c;作为现代电子设备中不可或缺的核心组件&#xff0c;承载着数据的存取重任。这种小巧而强大的芯片&#xff0c;以其低功耗、可靠性、高速的读写能力和巨大的存储容量&…

聊聊AI在企业数字化转型中的作用

随着科技的飞速发展&#xff0c;人工智能&#xff08;AI&#xff09;已经深入到我们生活的方方面面&#xff0c;尤其在数字化转型的浪潮中&#xff0c;AI技术更是扮演着举足轻重的角色。数字化转型&#xff0c;简而言之&#xff0c;就是企业利用数字技术来改造其业务运营方式&a…

[AI MoneyPrinterTurbo] 一键成片,超级印钞机

今天&#xff0c;我们将踏上一段关于MoneyPrinterTurbo的探索之旅&#xff0c;这是一个文生视频工具&#xff0c;旨在让视频创作变得轻松而有趣。 故事的开始 想象一下&#xff0c;你只需要提供一个视频主题或关键词&#xff0c;剩下的——视频文案、素材、字幕、背景音乐&am…

转:关于征集第三批工业软件新场景新技术难题解决思路的公告

工业软件是先进工业知识与经验的凝炼&#xff0c;工业软件自身的先进性既来自对先进工业先进需求的汲取提炼&#xff0c;也来自对根技术新突破、新成果的高效采用。为增强根技术新成果提供方与工业软件厂家或最终用户方的连接&#xff0c;促进国产工业软件差异化竞争力的打造&a…

浅学JVM

一、基本概念 目录 一、基本概念 二、JVM 运行时内存 1、新生代 1.1 Eden 区 1.2. ServivorFrom 1.3. ServivorTo 1.4 MinorGC 的过程 &#xff08;复制- >清空- >互换&#xff09; 1.4.1&#xff1a;eden 、servicorFrom 复制到ServicorTo&#xff0c;年龄1 …

docker入门配置

1、创建配置镜像 由于国内docker连接外网速度慢&#xff0c;采用代理 vi /etc/docker/daemon.json添加以下内容 {"registry-mirrors": ["https://9cpn8tt6.mirror.aliyuncs.com","https://dockerproxy.com","https://hub-mirror.c.163.co…

用一个暑假|用AlGC-stable diffusion 辅助服装设计及展示,让你在同龄人中脱颖而出!

大家好&#xff0c;我是设计师阿威 Stable Diffusion是一款开源AI绘画工具&#xff0c; 用户输入语言指令&#xff0c;即可自动生成各种风格的绘画图片 Stable Diffusion功能强大&#xff0c;生态完整、使用方便。支持大部分视觉模型上传&#xff0c;且可自己定制模型&#x…

[深度学习] Transformer

Transformer是一种深度学习模型&#xff0c;最早由Vaswani等人在2017年的论文《Attention is All You Need》中提出。它最初用于自然语言处理&#xff08;NLP&#xff09;任务&#xff0c;但其架构的灵活性使其在许多其他领域也表现出色&#xff0c;如计算机视觉、时间序列分析…

程序设计语言前言

1.机器语言及特点 2.编译语言及特点 3.高级语言及特点 4.编译和解释 5.IPO编程方式 一、机器语言 机器语言&#xff0c;也被称为二进制代码语言&#xff0c;是计算机硬件能够直接识别的程序语言或指令代码。它是由一系列由0和1组成的二进制指令码构成&#xff0c;每一条指令码…