多模态:InstructBLIP

news2024/11/28 3:43:21

多模态:InstructBLIP

  • Introduction
  • Method
    • dataset
    • Instruction-aware 视觉提取架构
    • Dataset Balance
  • 实验
  • 参考

Introduction

作者表示,与nlp任务不同,多模态任务由于引入额外的视觉输入,它的任务更加多样化,这似的联合多个模型是一个有挑战性的工作。

以前的方法大多要依靠LLM的生成能力,LLM在微调text- only instruction比微调Vision- language 的表现要更让人满意。

为了解决上述问题,作者提出了Instruct BLIP,一个多模态微调框架。
它由BLIP-2初始化,在微调期间,只微调Q- former保持LLM与image encoder frozen。

这篇文章的贡献主要是:

  1. 合并了当前的多模态数据集,并转换成指令微调的形式。
  2. 提出了新的 instruction-aware 视觉提取架构。
  3. 验证了有效性。

Method

dataset

在这里插入图片描述
联合上面的数据集,为不同的任务设置了不同的prompt template。
在这里插入图片描述

为了更好的验证性能,把验证集分割为两部分:
训练中见过此类任务,但是没见过这个样本,用于测试在相同任务unseen数据的性能。
训练集没见过此类任务,用于测试在unseen task 的unseen sample 的 迁移能力。

如果涉及到文本 图像,增加OCR token。

Instruction-aware 视觉提取架构

首先是 数据上的变化:

  1. 用相同的图像采取不同的instruction
  2. 不同的图像采取相同的instruction

这应该是增加泛化的一种方式。

然后是结构上的变化:
在这里插入图片描述
Image - Coder、LLM都被冻结,只微调Q- former。MiniGPT4则是微调Q- former与LLm之间 projection linear。

与BLIP2不同的是作者在Q- former阶段与LLM阶段都输入了Instruction。
由于在blip2预训练Q- former时,它就可以提取文本特征,然而到了推理阶段,就把这个Instruction放到了LLM侧。

在Q-fomer 阶段引入Instruction可以在计算self- attention的时候,query也考虑了instruction来抽取image- encoder的特征。

作者也通过实验证明了这样做的有效性。
在这里插入图片描述

Dataset Balance

由于作者混合多个数据集,每个数据集的大小不同,如果采用均匀采样,可能会造成大数据集underfitting,小数据集overfitting。所以作者对不同的数据集采取不同的sample比例。

实验

在这里插入图片描述

参考

https://arxiv.org/pdf/2305.06500.pdf

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

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

相关文章

Immich让你从此告别百度网盘备份手机照片

一. Immich 是什么 Immich是一个开源的图片自托管服务,它能实现类似于百度网盘的照片自动备份、分类等功能,它同时提供了Web管理页面,和移动端APP,可以轻松备份手机中的照片至家庭服务器中。这一应用也在很多群辉玩家中用于替代“…

在 Windows 上安装 Helm包

一、前言 个人主页: ζ小菜鸡大家好我是ζ小菜鸡,让我们一起学习在 Windows 上安装 Helm包。如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连) 二、 Helm是什么 Helm是Kubernetes的包管理工具,类似于centos的yum,能够快速查找、下载和安装…

(2022 EMNLP)结合面部表情的情感分析

论文题目(Title):Face-Sensitive Image-to-Emotional-Text Cross-modal Translation for Multimodal Aspect-based Sentiment Analysis 研究问题(Question):面向面部敏感的图像-情感-文本翻译的跨模态的多…

【开源项目】TinyId 全网最好的分布式ID生成系统的源码解析

TINYID介绍 项目地址:https://github.com/didi/tinyid Tinyid是滴滴开发的一款分布式ID系统,Tinyid是在美团(Leaf)的leaf-segment算法基础上升级而来,不仅支持了数据库多主节点模式,还提供了tinyid-client客…

23种设计模式之适配器模式(Adapter Pattern)

前言:大家好,我是小威,24届毕业生,在一家满意的公司实习。本篇文章将23种设计模式中的适配器模式,此篇文章为一天学习一个设计模式系列文章,后面会分享其他模式知识。 如果文章有什么需要改进的地方还请大佬…

[GYCTF2020]EasyThinking

功能:登录,注册,搜索 回显登录用户名,搜索历史 简单测试搜索历史发现可能不存在sql注入 www.zip下载源码 访问一个不存在的路径,爆出 thinkphp的框架,版本是6.0.0 参考:ThinkPHP 6.0.1 漏洞…

MyBatis操作数据库实现增删改查

创建数据库 语句要分别执行 CREATE DATABASE mybatis;USE mybatis;CREATE TABLE user(id INT(10) NOT NULL PRIMARY KEY,name VARCHAR(20) DEFAULT NULL,INSERT INTO user(id,name,pwd) VALUES (1,张三,123456), (2,李四,121212), (3,王五,1314520) 搭配环境 1、在pojo包创…

25.基于混合整数规划方法的微网电池储能容量优化配置

关键词:储能容量优化 储能配置 微网 编程语言:matlab 主题:基于混合整数规划方法的微网电池储能容量优化配置 主要内容: 本代码目的为实现微电网内电池容量的优化配置,目标函数为配置过程中整体的运行成本最小或…

【Spring】Spring AOP面向切面编程

文章目录 什么是Spring AOP?为什么要使用AOP?AOP相关组成的概念切面切点通知连接点 Spring AOP实现创建切面创建切点创建通知创建连接点示例演示 Spring AOP的实现原理 什么是Spring AOP? 想要知道Spring AOP,就得先了解AOP AOP是…

【周期信号】工程测试-数据处理-信号分析课程试题:周期信号与周期信号相加,所得信号一定是周期信号吗?

一、问题分析 某课程的作业题中,有下面的一种题目,判断两个周期信号相加,是否是周期信号,以及计算周期长短是多少。 非常显然,1、3、4题都很容易判断。 第2题,我们重点分析。 二、网上的错误论述 在百…

Vivado运用 Language Template 来创建set_input_delay/set_output...

时序约束中的 set_input_delay/set_output_delay 约束一直是一个难点,无论是概念、约束值的计算,还是最终的路径分析,每一次都要费一番脑子。Vivado为方便用户创建输入输出接口的约束,整理出了一套非常实用的InputDelay/Output De…

【C++】类与对象(3)

【C】类与对象(3) 作者:爱写代码的刚子 时间:2023.5.9 本篇博客干货比较多,主要是对类和对象知识的进一步加深,可能有点晦涩。主要介绍的内容为:深入构造函数,初始化列表&#xff0c…

《操作系统》——进程与线程

在上一期博客中,我们学习了关于操作系统中计算机系统概述的基本知识。今天,我将带领学习的是关于操作系统中一个非常重要的概念——进程与线程!!! 目录 前言 (一)进程的基本概念和特征 1、进…

[golang gin框架] 33.Gin 商城项目- 集成支付宝微信支付、生成支付二维码、监听处理异步通知跳转到订单页面

一.界面展示 当用户点击去支付时,请求支付界面,并 展示对应订单相关数据,以及 支付方式相关操作,点击对应的支付方式,进行支付操作 该界面对应的功能: 1.进入该界面,后台逻辑判断: 是否存在该订单,如果不存在,则跳转到购物车页面;如果存在,则获取对应订单相关数据,并 渲染到页面…

0511课后作业(C高级)

1.编写一个名为myfirstshell.sh的脚本,它包括以下内容。 1、包含一段注释,列出您的姓名、脚本的名称和编写这个脚本的目的 2、和当前用户说“hello 用户名” 3、显示您的机器名 hostname 4、显示上一级目录中的所有文件的列表 5、显示变量PATH和HOM…

iOS播放与编辑HDR视频

在iPhone12发布后,支持使用Dolby Vision来录制HDR视频。至此,升级到iOS14.1系统后,已经支持录制、播放、编辑和导出HDR视频。接下来,让我们一起探索HDR视频的各种操作。 一、HDR视频边编辑边预览 1、Profile与Level HDR视频中&…

Java奠基】实现面向对象编程方法

目录 标准的JavaBean类 设计对象并使用 对象封装 this关键字 构造方法 要知道对象是一个又一个能帮助我们解决问题的东西,但是这些东西并不是凭空出现的,需要我们根据设计图来进行制造,而这些一个一个的设计图就是一个一个的类。 标准的…

ChatGPT分销版多开v3.9.1-新增 语音识别和绘画多个引擎-已测试

众所周知ChatGPT在国内是无法正常使用的 而我们模块要做的就是这一点让普通人使用上ChatGPT 或娱乐或作为生产力工具 当前ChatGPT是非常火的 但是国内环境复杂,所以机会来了。。。 ChatGPT分销版多开v3.9.1:公众号H5版本 目前没反编译前端容易封号…

计算机网络-SNMP协议与pysnmp

1.概念 2.典型架构 3.snmp的信息交互 4.MIB 4.1常见MIB节点 5.SNMP管理模型 MIB位于被管理进程 6.SNMP的三个版本 6.1 SNMPv1 6.2 SNMPv2C 6.3 SNMPv3 6.3.1 SNMP3的基本操作 6.3.2 SNMP交互GET 6.3.3 SNMP交互-GETBULK 6.3.4 SNMP交互-SET 6.3.5 SNMP交互-trap 6.3.6 SNMP交…

【开源之夏 2023】欢迎报名 Dragonfly、Kata Containers、Nydus 社区项目!

开源之夏是由“开源软件供应链点亮计划”发起并长期支持的一项暑期开源活动,旨在鼓励在校学生积极参与开源软件的开发维护,促进优秀开源软件社区的蓬勃发展,培养和发掘更多优秀的开发者。 活动联合国内外各大开源社区,针对重要开…