【多模态】BEIT: BERT Pre-Training of Image Transformers

论文:BEIT: BERT Pre-Training of Image Transformers
链接:https://arxiv.org/pdf/2301.00184

Introduction

  1. BEIT(Bidirectional Encoder representation from Image Transformers)
  2. Motivation: 启发于BERT的自编码方式(随机mask进行token预测)
  3. 难点:没有视觉词表,无法简单应用softmax分类器预测candidates。
  4. 直观感受是将该问题视为回归问题,预测masked patch的每个像素点,但是这会导致浪费模型能力在建立短程依赖和高频细节上。(waste modeling capability on pre-training shortrange dependencies and high-frequency details)
  5. 最终解决方案
    1) Overview
    在这里插入图片描述
    2)两种view,image patches and visual tokens。首先将图像划分为patches并随机mask作为模型输入。然后通过VAE将图像tokenize为离散的视觉token。模型最终学习目标为,recover the visual tokens not pixels of masked patches。
    3)实验结果:BEIT 优于从头开始训练和以前的强自监督模型

Details

  1. Image Patch,输入图像维度 x ∈ R H ∗ W ∗ C x \in R^{H*W*C} xRHWC,reshape成为 N = H W / P 2 N=HW/P^2 N=HW/P2个patch, x p ∈ R N ∗ ( P 2 C ) x^p\in\mathbb{R}^{N*(P^2C)} xpRN(P2C),C为通道数。在该实验中,split 224 × 224 image into a 14 × 14 grid of image patches, where each patch is 16 × 16.
  2. Visual Token,直接将图像tokenize为 z = [ z 1 , . . . z N ] ∈ V h ∗ w z=[z_1,...z_N]\in \mathbb{V}^{h*w} z=[z1,...zN]Vhw,tokenizer为训练好的discrete variational autoencoder (dVAE),该自编码器包括encoder和decoder两部分,encoder负责将图像输入映射到视觉词表,decoder负责根据encoder的结果重建输入。在本文中仅需要使用训练好的encoder部分作为tokenizer以及对应词表。词表大小为8192
  3. Backbone Network: Image Transformer,在输入前加入special token [S]。
  4. Pre-Training BEIT: Masked Image Modeling(MIM) 。随机mask40%的patches,masked位置由[M] token替代。
    训练目标为感觉masked patch预测相应位置的visual token:
    在这里插入图片描述
    • blockwise masking,类似于bert中的n gram mask,先随机生成块大小,再选定纵横比 :
      在这里插入图片描述

实验

  1. 参数设置:ImageNet-1K,1.2M图像。12-layer Transformer with 768 hidden size, and 12 attention heads,intermediate size of feed-forward networks is 3072,16 × 16 input patch size,视觉词表8192. 图像处理包括随机调整大小的裁剪,水平翻转,颜色抖动。2k batch size,800epoch。500k training steps take about five days using 16 Nvidia Telsa V100 32GB GPU cards。
  2. 下游任务微调:
    • 在图像分类任务上,加入一个简单的线性分类器作为任务层,使用average pooling作为最终表示过softmax。
    • 在语义分割上,引入几个反卷积层
    • Intermediate fine-tuning,进一步进行beit的微调应用于下游任务
  3. 主要对比实验,384为输入图像大小
    在这里插入图片描述
  4. 收敛实验,BEiT收敛速度更快
    在这里插入图片描述
  5. 语义分割实验
    在这里插入图片描述
  6. 消融实验,预测visual tokem最重要
    在这里插入图片描述
  7. 可视化结果
    在这里插入图片描述

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

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

相关文章

【Linux】Centos升级到国产操作系统Openeuler

一、前言 迁移工具采用Openeuler官网提供的x2openEuler工具,是一款将源操作系统迁移到目标操作系统的迁移工具套件,具有批量化原地升级能力,当前支持将源 OS 升级至 openEuler 20.03。 官网链接:openEuler迁移专区 | 迁移专区首页…

详解Spring AOP(一)

目录 1. AOP概述 2.Spring AOP快速入门 2.1引入AOP依赖 2.2编写AOP程序 3.Spring AOP核心概念 3.1切点(PointCut) 3.2连接点(Join Point) 3.3通知(Advice) 3.4切面(Aspect) …

SwiftUI 6.0(iOS 18/macOS 15)关于颜色 Color 的新玩法

概览 WWDC 2024 重装升级的 SwiftUI 6.0 让 Apple 不同平台(iOS 18/macOS 15)显得愈发的冰壶玉衡、美轮美奂。 之前梦寐以求的颜色混合功能在 WWDC 24 里终于美梦成真啦! 在本篇博文中,您将学到如下内容: 概览1. 梦想…

PyCharm安装requests失败解决方法

PyCharm安装request失败解决方法,尝试各种方法均未能成功安装 失败一: 若用如下图方法 失败二:在桌面终端命令安装后,在Pycharm中导包依旧显示红色报错,未安装 采用如下方法,选择Pycharm终端Terminal&…

PHP-CGI的漏洞(CVE-2024-4577)

通过前两篇文章的铺垫,现在我们可以了解 CVE-2024-4577这个漏洞的原理 漏洞原理 CVE-2024-4577是CVE-2012-1823这个老漏洞的绕过,php cgi的老漏洞至今已经12年,具体可以参考我的另一个文档 简单来说,就是使用cgi模式运行的PHP&…

MOD和DIV的区别说明

1.说明 div 是取 A/BC,得到是C的值; mod 是取 A/BC...D,得到余数D的值。 2.实践 A8,B3,C2,D2 A9,B3,C3,D0

13.1.k8s集群的七层代理-ingress资源(进阶知识)

目录 一、ingress概述 1.前言 2.问题 3.ingress资源 二、ingress-nginx是什么 三、ingress-nginx 实现原理 四、部署ingress-nginx 1.获取部署文件 ingress-nginx.yaml 2.部署ingress-nginx 3.检查部署是否成功 五、编写使用Ingress样例代码 1.Ingress资源对象yaml文…

PhotoShop自动生成号码牌文件

1、说明 设计卡牌的时候,遇到自动生成编号,从01500到-02500,一个一个的手写,在存储保存成psd格式的文件,会很耗时。 下面将介绍如何使用ps自动生成psd格式的文件 2、使用excle生成数字 从01500到-02500 第一步&…

做现货白银模拟账户太爽,一做实盘就亏?

太多现货白银投资者有过这样的经历:自己做模拟账户的时候如鱼得水,盈利几乎手到拿来,实在爽得不要不要的,但在实盘操作中却常常面临亏损,甚至出现巨亏的情况。其实这主要是由于模拟交易与实盘交易之间存在显著的差异&a…

VBA技术资料MF166:提取某区域特定数据到工作表

我给VBA的定义:VBA是个人小型自动化处理的有效工具。利用好了,可以大大提高自己的工作效率,而且可以提高数据的准确度。“VBA语言専攻”提供的教程一共九套,分为初级、中级、高级三大部分,教程是对VBA的系统讲解&#…

Python武器库开发-武器库篇之Thinkphp5 SQL注入漏洞(六十六)

Python武器库开发-武器库篇之Thinkphp5 SQL注入漏洞(六十六) 漏洞环境搭建 这里我们使用Kali虚拟机安装docker并搭建vulhub靶场来进行ThinkPHP漏洞环境的安装,我们进入 ThinkPHP漏洞环境,可以 cd ThinkPHP,然后通过 …

3d怎么把歪的模型摆正?---模大狮模型网

在进行3D建模过程中,有时候会遇到模型出现歪曲或者旋转不正确的情况,这可能会影响到后续的设计和渲染效果。因此,学会将歪曲的模型摆正是一个非常重要的技巧。模大狮将介绍几种常用的方法,帮助您有效地将歪曲的3D模型摆正&#xf…

Python19 lambda表达式

在 Python 中,lambda 表达式是一个小型匿名函数,通常用于实现简单、单行的函数。lambda 函数可以接受任意数量的参数,但只能有一个表达式。 基本语法: lambda arguments: expression这里,arguments 是传递给 lambda …

精益思想在机器人开发中的应用体现

精益思想源于制造业,旨在通过消除浪费、优化流程、持续改进来提升企业竞争力。在机器人开发中,精益思想同样具有指导意义。它要求开发团队在需求分析、设计、制造、测试等各个环节中,不断追求精益求精,力求在降低成本的同时提升产…

多路h265监控录放开发-(14)

首先创建一个新类XCalendar继承QCalendarWidget类&#xff0c;然后在UI视图设计器中把日历提升为XCalendar&#xff0c;通过这个函数自己设置日历的样式 xcalendar.h #pragma once #include <QCalendarWidget> class XCalendar :public QCalendarWidget { public:XCal…

论文神器:即插即用归一化模型!无缝插入助力涨点!

归一化是深度学习和机器学习中一个非常重要的步骤&#xff0c;它通过对数据或网络层的输出进行变换&#xff0c;使其符合特定的标准&#xff0c;有效缓解不同特征间由于量纲和数值范围差异造成的影响&#xff0c;加速模型的收敛速度&#xff0c;并提高模型精度。 大多数归一化…

【ONLYOFFICE深度探索】:ONLYOFFICE桌面编辑器8.1震撼发布,打造高效办公新境界

文章目录 一、功能完善的PDF编辑器&#xff1a;解锁文档处理新维度二、幻灯片版式设计&#xff1a;释放创意&#xff0c;打造专业演示三、改进从右至左显示&#xff1a;尊重多元文化&#xff0c;优化阅读体验四、新增本地化选项&#xff1a;连接全球用户&#xff0c;跨越语言障…

os7安装gitlab

gitlab安装要求&#xff1a;os7以上版本&#xff0c;4G内存&#xff0c;磁盘50GB 1.克隆 由于我这里不想影响原来的&#xff0c;所以这里克隆一个os系统。如果其他是第一次安装则不用。 2.修改ip地址 cd /etc/sysconfig/network-scriptsvi ifcfg-ens33 按&#xff1a;insert…

对于GPT-5的些许期待

目录 1.概述 2.GPT-5技术突破预测 3.智能系统人类协作 3.1. 辅助决策 3.2. 增强创造力 3.3. 处理复杂任务 3.4.人机协同的未来图景 4.迎接AI技术变革策略 4.1.教育方面 4.2.职业发展方面 4.3.政策制定方面 4.4.人才与技能培养 1.概述 GPT-5作为下一代大语言模型&a…

cityscapes数据集转换为COCO数据集格式【速来,我吃过的苦,兄弟们就别再吃了】

利用CityScapes数据集&#xff0c;将其转换为COCO格式的实例分割数据集 – – – 进而再训练出新的YOLOv8-seg模型 写个前言&#xff1a; 人嘛&#xff0c;总想着偷点懒&#xff0c;有现成的数据集&#xff0c;就得拿来用&#xff0c;是吧&#xff1f;确实是这样。 接下来的步…