吊打 CLIP 平均10个点,Meta 多模态通用模型 FLAVA真香啊

2023-10-29

图片

厉害了!作者将单一模型运用于三个不同领域的不同任务,结构简单且训练直观,还能有着出色的表现。

自Transformer横空出世,从NLP到CV,再到今天的多模态,无数基于Transformer的模型被应用于各类任务,似乎真的印证了当年文章的标题“Transformer is ALL you need”。然而,纯粹的NLP任务有BERT、RoBERTa,CV任务有ViT,多模态任务又有VLBERT、OSCAR,虽然都是基于Transformer的结构,但是仍然是针对不同任务设计不同模型,那么“万能”的Transformer能否构建出一个统合各类任务的模型,实现真的的一个模型解决所有问题呢?

干货推荐

今天文章的作者就关注到了当前各个模型的局限,提出了一个适用于NLP+CV+多模态的模型FLAVA,可运用于三种领域共计35个任务,且都有着出色的表现。

论文题目:
FLAVA: A Foundational Language And Vision Alignment Model

论文链接:
https://arxiv.org/abs/2112.04482

图片介绍图片

文章标题中,作者称模型为“Foundational”,他们不希望借助各种奇技淫巧的Tricks,而是通过尽可能简单的结构,配合直观的的训练手段,达到涵盖NLP、CV、多模态的目的。

FLAVA基于三种不同的输入:

  • 匹配的图片-文本

  • 单独文本

  • 单独图片

解决三个领域的问题:

  • NLP:语言理解(如GLUE)

  • CV:视觉识别(如ImageNet)

  • 多模态:多模态解释(如VQA)

图片

图片

图片编码器(Image Encoder)

FLAVA直接借用既有模型ViT的结构,同时仿照ViT的处理方法,分割图片进行编码。在ViT输出的隐状态上,FLAVA利用单一模态数据集中的图片进行Masked Image Modeling。首先,利用dVAE将图片转化为类似词向量的token;再参照BEiT,对masked隐状态进行分类,即利用周围图片分块,预测masked的图片属于dVAE划分的哪一类,这样在图片上也可以像BERT那样做mask modeling。

文本编码器(Text Encoder)

FLAVA在文本部分多处理就相对简单,作者采取常见的Masked Language Modeling,对一部分masked token进行预测,和其他方法对区别在于,FLAVA没有采用BERT之类纯文本语言模型的结构,而是和图片编码器一样,使用了ViT的结构,不过因为是不同的模态,自然采用了不同的模型参数。

多模态编码器(Multimodal Encoder)

在图片编码器和文本编码器之上,FLAVA添加了一层多模态编码器做模态融合,多模态编码器将前两者输出的隐藏状态作为输入,同样利用ViT的模型结构进行融合。

多模态预训练

在文本编码器和图片编码器中,FLAVA在单一模态上进行了预训练,在多模态预训练方面,FLAVA使用了三种多模态预训练任务:

  • 对比学习:FLAVA利用图片编码器和文本编码器的隐藏状态,增大相匹配的图片-文本对之间的余弦相似度,减小非匹配的图片-文本对之间的余弦相似度。

  • Masked Multimodal Modeling:与图片编码器上的MIM类似,只不过改为利用多模态编码器的隐状态进行预测。

  • 图片-文本匹配:与许多现有模型一样,FLAVA利用多模态编码器的[CLS]的隐状态,识别当前图片与文本是否匹配。

图片效果图片

从上述模型细节可以看出,无论是模型结构,还是预训练任务,文本与图片之间高度对称,同时也设计也十分直观。接下来看看在35个任务上的表现。

图片

图中下划线表示最优结果,加粗表示在公开数据集上训练的最优结果。

图片

从各个任务平均上看,FLAVA能够取得整体上的最优结果,多模态任务平均比CLIP高出2个百分点左右,整体平均比CLIP高出10个百分点左右。从具体任务上看,在不少任务上都取得了十分显著的提高,如STS-B数据集提高了69.69,MNLI数据集提高了46.81。

图片小结图片

不同于现有模型,FLAVA最大的特点,也可以说是创新点,在于作者实现了将单一模型运用于三个不同领域的不同任务,而且都有着不错的效果,虽然FLAVA并没有奇迹般在所有任务上都达到SOTA,但是整体性能上并不弱于现有模型,同时有着更广阔的运用场景,模型设计也没有各种奇技淫巧,这对未来研究通用模型有着很大的启发。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

吊打 CLIP 平均10个点,Meta 多模态通用模型 FLAVA真香啊 的相关文章

随机推荐

  • linux grpc c++编译安装

    环境信息 1 操作系统 centos7 4 2 g 版本 4 8 5 grpc v1 29 1 版本 源码下载 因为国内现在访问github速度很慢 这里用了代理镜像 git clone b v1 29 1 https hub xn gzu
  • 安装打印机时LPT,COM、USB端口区别

    LPT 并口 LPT是用于使用打印机或其它设备的 LPT并口是一种增强了的双向并行传输接口 在USB接口出现以前是扫描仪 打印机最常用的接口 目前使用滴少 COM 串口 COM端口通常用于连接鼠标及通讯设备 如连接外置式MODEM进行数据通
  • 内网进行spring-boot开发时Jar包依赖的解决

    1 简介 使用Spring Boot可以轻松的创建独立运行的程序 非常容易构建独立的服务组件 是实现分布式架构 微服务架构的利器 Spring Boot简化了第三方包的引用 通过提供的starter 简化了依赖包的配置 1 1 Spring
  • Cisco Packet Tracer配置操作的三种命令模式

    Cisco Packet Tracer三种基本命令模式 这里我们需要讲一下三种命令模式 今后绝大部分操作都通过命令实现 所以需要熟悉命令模式 在路由器命令配置界面中演示 三种命令模式介绍 用户模式 用户模式下可进行的操作较少 我们一般不在用
  • kubeadm init三个master节点遇到的问题

    要创建三个master节点 就不能使用其中一台主机的IP 所以申请了一个VIP地址 kubeadm init apiserver advertise address 0 0 0 0 image repository k8s gcr io c
  • qmake 乱乱乱谈(四)

    继续qmake 本文主题 低调的 TEMPLATE subdirs 非常非常常用的一个东西 可是manual中却介绍的很少 太低调了 在编写包含多可执行文件 库 插件 的程序时 一直不敢相信subdirs的能力 以至于曾一度想转到cmake
  • python三级考什么_什么是计算机三级考试?计算机三级考什么?

    什么是计算机三级考试 计算机三级考什么 2020 04 1118 04 03 来源 上学吧 作者 dengyangjie 全国计算机等级考试 National Computer Rank Examination 简称NCRE 是经原国家教育
  • HTTP POST GET 本质区别详解

    一 原理区别 一般在浏览器中输入网址访问资源都是通过GET方式 在FORM提交中 可以通过Method指定提交方式为GET或者POST 默认为GET提交 Http定义了与服务器交互的不同方法 最基本的方法有4种 分别是GET POST PU
  • 硬件工程师修炼的几层境界

    分享一篇文章 觉得写的很好 mark一下 第零层 1 对基础技术有认知 2 模电 数电 电路分析 信号与系统 物理学之电磁学基础 3 基本掌握焊接 电路设计软件 示波器使用 万用表等基础仪器仪表的使用 第一层 1 精力主要花在学习原理图工具
  • Windows 7 下 vs2010内存泄漏检测工具VLD的使用

    1 环境和软件 Windows7 32位系统 Visual Studio 2012 旗舰版 vld 2 2 3 setup exe 大小1 04M 2 步骤 1 下载安装 下载好 vld 2 2 3 setup exe 大小1 04M 并安
  • CentOS 7.9 使用rpm包安装MySQL-5.7.43

    参考 refman 5 7 pdf 2 5 5 Installing MySQL on Linux Using RPM Packages from Oracle 前期准备 1 防火墙端口检查与设置 检查防火墙状态 systemctl sta
  • 买服务器做网站 镜像选什么,云服务器做网站镜像类型选啥

    云服务器做网站镜像类型选啥 内容精选 换一换 创建一台或多台云服务器 V1 1版本创建云服务器的接口兼容了V1版本创建云服务器 按需 的功能 同时合入新功能 支持创建包年 包月的弹性云服务器 本接口为异步接口 当前创建云服务器请求下发成功后
  • 【Golang

    环境准备 GoLang go1 15 7 windows amd64 Docker 1 13 1 MySQL 8 0 28 一 利用容器部署mysql 1 首先通过docker pull mysql拉取mysql镜像 root k8s ma
  • Jetty篇一之初识Jetty

    前言 最近公司项目中用到了Jetty来作为项目的web容器 借此机会来分享一下我的学习心得 在学习Jetty之前 一定要了解一些Jetty的基本概念以及优缺点 这样才方便做更深入的学习 现在让我来慢慢揭开它的神秘面纱吧 基础 什么是Jett
  • 大数据模型案例库-涵盖多行业,超百个实战项目案例

    平台目前积累了大量的人工智能应用模型 不仅包括多年来人工智能企业服务方面的沉淀 还包括大量其他企业的真实项目应用模型 以及高校智能工作室成果模型 覆盖教育 医疗 交通 金融 科技 农业等18个行业 平台面向高校 企业 个人等广大用户群体 所
  • Candence原理图误删图页并保存退出后的恢复方法

    一早打开Candence准备工作 发现原理图少了几页 心里很慌 昨晚在画PCB的时候设置按了几次Delete键 没有反应 可能删了原理图 关闭的时候也没有看 直接保存退出了 看了之前拷贝备份的文件 时间有点久 那只能靠软件的自动备份功能了
  • C语言进阶(九)—— 函数指针和回调函数、预处理、动态库和静态库的使用、递归函数

    1 函数指针 1 1 函数类型 通过什么来区分两个不同的函数 一个函数在编译时被分配一个入口地址 这个地址就称为函数的指针 函数名代表函数的入口地址 函数三要素 名称 参数 返回值 C语言中的函数有自己特定的类型 c语言中通过typedef
  • 学习笔记-选择排序

    选择排序 将一个一维数组从小到大排序 思路 选择排序的思路是 首先认为数组的第一个数是最小的 保留它然后遍历它后面的数 跟它作比较 选择出最小的数和位置 遍历结束后 让这个最小的数和数组的第一位数交换 这样确定了第一个最小的数 之后重复这个
  • Unity AR阴影投射透明地面 仅渲染模型实时阴影 Shader实现

    亲测可用 上面就是实现的效果 仅仅渲染阴影 地面透明 也可以换成AR中的虚拟物体 AR中为的虚拟物体添加阴影 只用unity的光照投影是没办法实现的 或者需求是 角色需要投射阴影在墙上 但是墙不能显示 只渲染出阴影 相当于接受阴影的地面墙体
  • 吊打 CLIP 平均10个点,Meta 多模态通用模型 FLAVA真香啊

    厉害了 作者将单一模型运用于三个不同领域的不同任务 结构简单且训练直观 还能有着出色的表现 自Transformer横空出世 从NLP到CV 再到今天的多模态 无数基于Transformer的模型被应用于各类任务 似乎真的印证了当年文章的标