BLIP2原理解读——大模型论文阅读笔记二

news2024/10/7 8:31:57

一. 论文与代码

论文:https://arxiv.org/abs/2301.12597
代码:https://github.com/salesforce/LAVIS/tree/main/projects/blip2

二. 解决问题

端到端训练视觉语言模型需要大尺度模型及大规模数据,该过程成本大,本文提出方法基于现有高质量视觉模型及语言大模型进行联合训练,为减少计算量及防止遗忘,作者对预训练模型进行frozen,为了将两任务对齐,作者提出Querying Transformer (Q- Former) 预训练,如图1,其将有用视觉特征传递至LLM输出目标文本。

三. 算法架构

在这里插入图片描述
图一:BLIP-2的算法框架,我们训练了一个轻量级的Q-Former来对齐文本和语言两个模态的差距。第一阶段从冻结的图像编码中学习到图像的语言表征,第二阶段通过冻结的大语言模型从图像特征到语言生成。

四. 具体细节

  1. 表征学习阶段
    在这里插入图片描述
    左边是Q-Former的结构,用来学习图片的视觉语言表征,作者使用三个目标函数使模型学习到图片的视觉表征;右边的self-attention masking策略来控制query-text之间的交互。

  2. 语言生成阶段
    在这里插入图片描述
    作者将Q-Former与LLM相连,后去LLM的语言生成能力。如图,FC层映射输出的query embedding Z至LLM的text embedding;基于LLM Q-Former提取到的视觉表征作为soft visual prompt,由于Q-Former已经预训练用于提取对文本有用的视觉表征,减轻LLM学习视觉-文本对齐的负担。
    作者实验两种LLM,decoder-based LLM以及encoder-decoder-based LLM。
    对于decoder-based LLM,作者使用language modeling loss进行预训练,frozen LLM进行文本生成;
    对于encoder-decoder-based LLM,使用prefix language modeling loss预训练,将text分为两部分,text前半部分与视觉表征concat输入LLM编码器,后半部分作为LLM解码器的生成目标。

五. 结论

BLIP-2是一种通用且计算高效的视觉语言预训练方案,使用frozen 预训练图像编码器及LLM,在多个视觉语言任务达到SOTA,也证明了其在零样本instructed image-to-text生成能力。

推荐:BLIP2-图像文本预训练论文解读

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

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

相关文章

多模态网络

目录 多模态网络概念未来网络体系研究网络管控 多模态网络概念 将多种网络技术通过可编程技术以网络模态的形式融合到多模态网络之中,力求整合多种网络优势,提升网络对多元业务的承载能力。 多模态网络中存在多种标识体系,如内容标识、身份标…

FPGA XDMA 中断模式实现 PCIE X8 OV5640摄像头视频采集 提供工程源码和QT上位机源码

目录 1、前言2、我已有的PCIE方案3、PCIE理论4、总体设计思路和方案视频采集和缓存XDMA简介XDMA中断模式QT上位机及其源码 5、vivado工程详解6、上板调试验证7、福利:工程代码的获取 1、前言 PCIE(PCI Express)采用了目前业内流行的点对点串…

ACE中TASK架构简介及简单应用

首先配置ACE环境&#xff1a; #include <iostream> #include "ace/Synch.h" #include "ace/Task.h" #include "ace/Message_Block.h" #ifdef _DEBUG #pragma comment(lib,"aced.lib") //#pragma comment(lib,"mysqlcppcon…

Python实现逻辑回归(Logistic Regression)

&#x1f4a5; 项目专栏&#xff1a;【Python实现经典机器学习算法】附代码原理介绍 文章目录 前言一、基于原生Python实现逻辑回归算法二、逻辑回归模型的算法原理三、算法实现3.1 导包3.2 定义随机数种子3.3 定义逻辑回归模型3.3.1 模型训练3.3.1.1 初始化参数3.3.1.2 正向传…

电力通信实用小技巧,一看就懂!

随着电力通信技术的快速发展&#xff0c;电力通信机房扮演着至关重要的角色&#xff0c;确保电力系统的正常运行和通信网络的稳定连接。 然而&#xff0c;电力通信机房的环境和设备面临着各种潜在的风险和挑战&#xff0c;如温度过高、湿度异常、电力故障等。为了有效监控和管理…

Canonical:我们对探索完全容器化、不可改变的Ubuntu桌面的想法感到兴奋

导读Canonical的Oliver Smith近日在一篇博文中写道&#xff0c;这个最受欢迎的GNU/Linux发行版之一背后的公司很高兴在不久的将来使用Ubuntu Core和Snaps探索完全容器化和不可变的Ubuntu桌面的想法。 在今年早些时候宣布从Ubuntu 23.04&#xff08;Lunar Lobster&#xff09;开…

计算机网络——物理层

物理层 物理层是计算机网络体系结构中的底层层级&#xff0c;负责处理计算机与物理传输媒介之间的接口和通信细节。它主要关注如何在物理媒介上传输原始比特流&#xff0c;并确保数据能够可靠地从发送方传输到接收方。 物理层的主要任务包括&#xff1a; 传输介质&#xff1a…

基于springboot的阅读系统-计算机毕设 附源码86095

基于springboot的阅读系统 摘 要 从古至今&#xff0c;阅读都是人们学习新技能&#xff0c;新知识的一种方式。随着互联网时代的到来&#xff0c;传统的纸质阅读早已满足不了人们对于阅读的渴望。在这样的大背景下&#xff0c;电子阅读便快速崛起。越来越多的人们喜欢愿意通过这…

这个传感器真的可以解决问题吗?

倒闭了 之前在文章里面写了我创业开发的猫塔&#xff0c;其中有一个问题是&#xff0c;因为猫砂重量不一致&#xff0c;磁铁老化等等问题&#xff0c;可能导致在倒砂的时候不能准确让沙仓回到正确的位置。 有个朋友在文章后面回复了一个方案&#xff0c;就是用编码器。 先简单说…

Linux网络操作实操指南:从网络配置到安全管理

目录 1. 网络配置2. 网络诊断3. 网络服务管理4. 网络安全5. 小结 Linux是一种开源的操作系统&#xff0c;具有稳定性高、安全性好、可定制性强等优点。作为一名Linux用户&#xff0c;掌握基本的Linux网络操作是非常必要的。以下是Linux网络操作的几个方面&#xff0c;包括具体的…

6款程序员实用工具,老少皆宜,你一定用得上!

从事开发行业已有4年之久&#xff0c;在此期间积累了不少好用的开发工具&#xff0c;希望帮助各位在工作上化繁为简&#xff0c;提升个人生产力。 这里的分享本着1个原则去做&#xff1a; 凡是需要重复做的&#xff0c;必须使用自动化工具来完成。 01、单元测试工具——PHPUnit…

7从0开始学PyTorch | PyTorch中求导、梯度、学习率、归一化

今天我们继续&#xff0c;接着昨天的进度。 先回顾一下上一小节&#xff0c;我学到了构建起一个模型函数和一个损失函数&#xff0c;然后我们使用人眼观察损失&#xff0c;并手动调整模型参数。然而看起来&#xff0c;我们虽然看到了损失&#xff0c;但我们调整参数的方案跟损失…

【Python学习】—认识Python与环境搭建(一)

【Python学习】—认识Python与环境搭建&#xff08;一&#xff09; 本章节思维导图如下&#xff1a; 一、Python解释器 首先一个基本原理就是&#xff1a;计算机只认识二进制&#xff0c;0和1 Python解释器&#xff0c;是一个计算机程序&#xff0c;用来翻译Python代码&…

十六、Docker Swarm的介绍和使用

一、Swarm简介 1、swarm介绍 Dockere Swarm是Docker公司推出的用来管理docker集群的编排工具&#xff0c;代码开源在https://github.com/docker/swarm&#xff0c; 它是将一群Docker宿主机变成一个单一的虚拟主机&#xff0c;提供了标准的 Docker API&#xff0c;所有任何已经与…

MySQL8超详细安装教程

MySQL的下载与安装 一、MySQL8下载 MySQL Community Server 社区版本&#xff0c;开源免费&#xff0c;自由下载&#xff0c;但不提供官方技术支持&#xff0c;适用于大多数普通用户。 MySQL Enterprise Edition 企业版本&#xff0c;需付费&#xff0c;不能在线下载&#x…

VUE——Vue CLI的原理与基本使用

摘要 Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统&#xff0c;提供&#xff1a; 通过 vue/cli 实现的交互式的项目脚手架。通过 vue/cli vue/cli-service-global 实现的零配置原型开发。一个运行时依赖 (vue/cli-service)&#xff0c;该依赖&#xff1a; 可升级&…

互联网企业更需要线上版的产品手册

互联网企业在不断发展变化的市场中&#xff0c;需要更加灵活和快速地适应市场需求&#xff0c;因此&#xff0c;线上版的产品手册对于互联网企业来说是非常重要的。 互联网企业更需要线上版的产品手册的原因 互联网用户更喜欢在线文档 互联网用户更喜欢在线文档&#xff0c;…

中创|没人比我更懂!马斯克发出警告:人类要小心人工智能

马斯克在过去十年对AI的态度一直非常鲜明&#xff0c;很早就对这个问题有深入地思考&#xff1a; 2014 “我们对AI要非常小心&#xff0c;这可能是我们最大的存在威胁。” 2016 “AI的未来发展方向可能并不乐观&#xff0c;起码不会所有结果都是好的。” 2017 “AI会比地…

中原银行 OLAP 架构实时化演进

中原银行 OLAP 架构实时化演进 1. OLAP 实时化建设背景2. OLAP 全链路实时化3. OLAP 实时化探索4. 未来探索方向 中原银行成立于 2014 年&#xff0c;是河南省唯一的省级法人银行&#xff0c;2017 年在香港联交所主板上市&#xff0c;2022 年 5 月经中国银保监会批准正式吸收合…