多模态大模型解读

news2024/10/5 17:19:37

目录

1. CLIP

2. ALBEF

3. BLIP

4. BLIP2

参考文献


        (2023年)视觉+语言的多模态大模型的目前主流方法是:借助预训练好的LLM和图像编码器,用一个图文特征对齐模块来连接,从而让语言模型理解图像特征并进行深层次的问答推理。

        这样可以利用已有的大量单模态训练数据训练得到的单模态模型,减少对于高质量图文对数据的依赖,并通过特征对齐、指令微调等方式打通两个模态的表征。下图来自其他 up 的概括内容,来自:https://zhuanlan.zhihu.com/p/653902791

        对于CLIP部分公式均参照该链接,仅了解损失函数。

图 基础MLLM的架构整理

1. CLIP

        分别对图像、文本进行特征提取,两部分的backbone可以分别采用Resnet系列模型/VIT系列模型、BERT模型。特征提取后,直接相乘计算余弦相似度,然后采用对比损失(info-nce-loss)。

训练损失

  • 交叉熵代价损失(cross entropy):基础有监督学习分类损失函数。

图 n个类别多分类的交叉熵代价函数

  • NCE(noise contrastive estimation):相比于交叉熵损失,这里将多问题转化为二分类问题,即正样本和噪声样本,目标学习正样本和噪声样本之间的差异。

图 噪声对比

  • info-NCE:NCE的变体,将噪声样本按多类别看待。存在一个temp的温度系数。

图 info-NCE loss

2. ALBEF

        动机:该项工作之前的视觉预训练模型一般采用Object Detector的方式,这种Detector能够提取图像上的目标或边界信息。然而这种训练方式有如下几点限制:

  • 图像特征和文本编码token分别处于各子的特征空间,这使得多模态关联性挖掘存在巨大挑战;
  • 这种训练方式会产生额外的解释开销和计算开销;
  • 对于物体目标含量低的样本,模型性能受限于Detector的检测精度;
  • 图像文本样本数据一般来源于网络,具有严重的噪声影响,会导致模型性能降级。

        ALBEF模型架构:如图所示,ALBEF模型架构分为image encoder 、text encoder 和多模态编码器,其中左半部分类似Transformer,text encoder将12层分为两部分,前6层作为text encoder,后6层作为视觉特征和文本特征的融合。由于视觉和文本的编码都包含[CLS]标签,这种标签因自注意力机制的影响被认为包含全局信息,所以可以将视觉和文本的全局信息进行 Image-Text Contrastive Loss。

图 ALBEF架构图

        如图ITM部分,该部分称为图像文本匹配(Image-Text matching),该部分利用的负样本采用 hard negatives 的方式进行生成,即通过ITC(iamge-text Contrastive)计算出的次分类结果,该结果能够作为模型难以理解的样本,进而计算损失。

        除此之外,由于动机中描述的网络图文样本对的噪声影响,ALBEF设计一个Momentum Model(动量模型)解决上述问题。简要描述该组件的作用,即类似知识蒸馏方法,拷贝出原始模型的动量版本,通过动量模型对原始模型规约,加深原始模型和动量模型间的图文对匹配程度,进而消除原始样本数据中的噪声干扰。

3. BLIP

        动机:从模型的角度,当前预训练模型的任务涵盖范围受限。例如,基于Encoder的模型无法做生成任务,而基于Encoder-Decoder的模型无法做检索任务,不能更充分的理解任务信息。从数据的角度,网络图文对具有严重的数据噪声。

        BLIP模型架构:BLIP全称Bootstrapped Language-Image Pre-training,该模型包括三个下游任务:图像文本对比学习、图像文本匹配和语言建模(LM,该任务类似GPT,给定段落前一段话,预测后一段;而不是BERT那种完型填空的方式)。

图 BLIT模型架构

  • Bootstrapped机制:采用一种迭代的、自我改进的学习过程来提升模型性能,该机制有助于提高模型在跨模态任务中的对齐和理解能力。(1)初始模型训练阶段:首先使用大量的单模态数据(如图像/文本)对文本编码器和图像编码器进行预训练(如图中的 Image Encoder 和 Text Encoder)。然后利用多模态数据,即图文对数据,对初始模型进行训练;(2)迭代更新阶段:采用Captioning and Filtering的方式,从网页噪声图像文本对中学习,训练BLIP。
  • image-text contrastive(图像文本对比):和ALBEF类似,利用[CLS]信息进行对比学习。
  • Image-grounded Text Encoder(图像文本匹配编码器):采用一种 Cross Attention 模块,将图像信息融入文本编码过程中,增强文本的上下文表示,进而理解图像的相关描述。
  • Image-grounded Text Decoder(图像关联文本解码器):将原来的 Bi Self-Attention 替换为 Causal Self-Attention(用于预测下一个token),该解码器用于文本生成或多模态推理任务。
  1. soft lables:是指标签值在[0,1]之间的概率值,而不是离散的0或1,反映样本属于某一个类的置信度。有助于平滑标签分布,提高模型的泛化能力,减少过拟合。
  2. Hard Negative Mining Strategy:在训练过程中,专门选择那些模型难以区分的负样本,以增强模型的判别能力。

如何消除网络样本噪声的影响:BLIP采用 Filter-Captioner 的方式,如图所示,通过生成+过滤的方式生成更匹配图像的Caption,进而完善样本集。具体而言,对于给定的训练集
$D$,包含网络文本 T_w、人工正确标注文本 T_h,由于前文有 ITC、ITM 和 LM 损失,因此在部分利用这些指标训练 Filter(grounded Encoder)和 Captioner(grounded Decoder),Captioner会生成文本数据 T_s,将 T_w 和 T_s 交由 Filter 微调更加匹配图像的文本信息,最终获得信息匹配程度更紧密的样本集。

图 Filter-Captioner机制

4. BLIP2

动机:回顾之前的研究,无论是视觉预训练模型还是语言预训练模型,其规模都是庞大的,这种模型架构会产生巨额开销。

BLIP2架构:BLIP2全称Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models,视图将视觉预训练模型和语言预训练模型参数均进行冻结。然而,这会导致视觉特征和文本特征都处于各自的特征空间,存在巨大的 modality gap。因此BLIP2中采用 Q-Former(Query Transformer) 的一种轻量级Transformer技术,该技术用于弥补视觉和语言两种模态的 modality gap,选取最匹配的视觉特征给后续LLM生成文本。

图 BLIP2的模型架构

        Q-Former是一个可学习的组件,学习的参数包括若干queries,这些queries最终从 image encoder中提取固定数量的视觉特征,学习与文本更匹配的视觉特征。

        queries间的彼此交互通过共享自注意力层,和冻结的图像特征交互使用的跨模态注意力机制层,然后queries也能通过共享自注意力层与文本特征进行交互。整个Q-Former由Image Transformer和Text Transformer两个子模块构成,它们共享相同自注意力层。

  • Image Transformer:通过和image encoder交互来提取视觉特征,输入是一系列(文中用的32个*768长度)可学习的 Queries,这些Query通过自注意力层相互交互,并通过交叉注意力层与冻结的图像特征交互,还可以通过共享的自注意力层与文本进行交互;输出的query尺寸是32*768,远小于冻结的图像特征257*1024(ViT-L/14)。
  • Text Transformer:既作为文本编码器也作为文本解码器,它的自注意力层与Image Transformer共享,根据预训练任务,用不同的self-attention masks来控制Query和文本的交互方式。

参考文献

多模态大模型 CLIP, BLIP, BLIP2, LLaVA, miniGPT4, InstructBLIP 系列解读

BLIP2的前世与今生

ALBEF原文

BLIP原文

BLIP2原文

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

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

相关文章

AI绘画新境界:如何利用智能工具打造未来艺术

引言 AI技术的发展加速了我们的生活和工作方式,艺术领域也不例外。今天,AI已经超越了辅助工具的角色,开始成为艺术创造过程中的一个内在组成部分。本文将探讨如何利用AI智能工具在绘画艺术领域开辟新的境界,并结合互联网技术以及实…

淘宝评论数据接口,助力无忧购物

在数字化时代,消费者在网购时越来越重视其他用户的评价和意见。淘宝作为我国最大的电商平台之一,拥有海量的商品评论数据。如何有效利用这些数据,为消费者提供参考,同时保护他们的权益,是我们要探讨的问题。联讯数据将…

文件加密软件排行榜|常用三款文件加密软件推荐

Top 1: 安秉网盾文件加密软件 加密模式多样:采用多种加密模式,对企业重要的文档、图纸进行全方位360度保护。可根据企业不同工作场景设置不同的加密模式。 全透明加密:通过全透明加密模式,对企业重要的图纸文件类型进行全盘透明…

C++ 76 之 异常变量生命周期

#include <iostream> #include <string> using namespace std;class MyExpetion{ public:MyExpetion(){cout << "默认构造函数" << endl;}MyExpetion(const MyExpetion& e){cout << "复制构造函数"<< endl;}~MyEx…

【IPython的使用技巧】

&#x1f3a5;博主&#xff1a;程序员不想YY啊 &#x1f4ab;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f917;点赞&#x1f388;收藏⭐再看&#x1f4ab;养成习惯 ✨希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出…

AMBA-CHI协议详解(四)

《AMBA 5 CHI Architecture Specification》 AMBA-CHI协议详解&#xff08;一&#xff09; AMBA-CHI协议详解&#xff08;二&#xff09; AMBA-CHI协议详解&#xff08;三&#xff09; AMBA-CHI协议详解&#xff08;四&#xff09; 文章目录 2.3.3 Atomic transactions2.3.4 S…

day14-226.翻转二叉树+101. 对称二叉树+104.二叉树的最大深度

一、226.翻转二叉树 题目链接&#xff1a;https://leetcode.cn/problems/invert-binary-tree/ 文章讲解&#xff1a;https://programmercarl.com/0226.%E7%BF%BB%E8%BD%AC%E4%BA%8C%E5%8F%89%E6%A0%91.html#%E7%AE%97%E6%B3%95%E5%85%AC%E5%BC%80%E8%AF%BE 视频讲解&#xff1…

Vue CLI,Vue Router,Vuex

前言 Vue CLI、Vue Router 和 Vuex 都是 Vue.js 生态系统中的重要组成部分&#xff0c;它们在构建 Vue 应用程序时扮演着关键角色。 Vue CLI Vue CLI 介绍 Vue CLI 是 Vue.js 的官方命令行工具&#xff0c;用于快速搭建 Vue.js 项目。它提供了一个图形界面&#xff08;通过…

对身外之物,不必在意

不管对待自己还是他人&#xff0c;外在的条件不值得挂怀&#xff0c;人在不得已颠沛流离时期&#xff0c;吃不好、穿不好&#xff0c;都应该从容接受。

STM32学习记录(八)————定时器输出PWM及舵机的控制

文章目录 前言一、PWM1.工作原理2.内部运作机制3. PWM工作模式4.PWM结构体及库函数 二、PWM控制舵机 前言 一个学习STM32的小白~ 有错误评论区或私信指出提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、PWM 1.工作原理 以向上计数为例&#xff0…

【LeetCode刷题】面试题 17.19. 消失的两个数字

1. 题目链接2. 题目描述3. 解题方法4. 代码 1. 题目链接 面试题 17.19. 消失的两个数字 2. 题目描述 3. 解题方法 例子假设&#xff1a; 数组A元素为 &#xff1a;1 &#xff0c;4&#xff0c;5 缺少的元素为&#xff1a;2&#xff0c; 3 那么所有整数就为1 ~ 5&#xff…

【JavaEE】Spring Web MVC详解

一.基本概念. 什么是Spring Web MVC? 官方链接: https://docs.spring.io/spring-framework/reference/web/webmvc.html Spring Web MVC is the original web framework built on the Servlet API and has been included in the Spring Framework from the very beginning. Th…

人工智能—美国加利福尼亚州房价预测实战

引言 在当今快速发展的房地产市场中&#xff0c;房价预测已成为一个至关重要的领域。它不仅关系到投资者的决策&#xff0c;也直接影响到普通购房者的生活质量。特别是在美国加利福尼亚州&#xff0c;这个以其高房价和房地产市场的波动性而闻名的地方&#xff0c;准确的房价预…

【面试八股总结】Redis数据结构及底层实现

一、五种基本数据结构 Redis 提供了丰富的数据类型&#xff0c;常见的有五种数据类型&#xff1a;String&#xff08;字符串&#xff09;&#xff0c;Hash&#xff08;哈希&#xff09;&#xff0c;List&#xff08;列表&#xff09;&#xff0c;Set&#xff08;集合&#xff0…

每日一练:攻防世界:miao~

给了一张jpg图片 没发现什么特别&#xff0c;放到winhex中查看也没思路。 放到kali里面foremost分离文件试试&#xff0c;结果分离出个wav音频文件 直接放到 audycity看看频谱图 发现字符串&#xff0c;但是没有其他信息。可能是密钥之类的。到这里我就卡住了&#xff0c;看…

Java15-API

目录 Math类 概述 常见方法 练习 System类 概述 常见方法 Runtime 概述 常见方法 Object类 概述 常见方法 一.演示toString方法 二.演示equals方法 三、对象克隆 分类&#xff1a; 浅克隆 深克隆&#xff1a; Objests类 概述 常见方法 BigInteger类 概…

chrome 录制器及性能分析工具的使用

需求背景&#xff1a; 对比不同VPN方案网络延迟的差异。 验证工具&#xff1a; chrome浏览器自带的录制器、性能插件可以完美的解决这个问题。 注意&#xff1a;录制的操作都在当前页面&#xff0c;不存在新开标签页的场景 解决方案&#xff1a; 使用chrome录制器&#xf…

了解指标体系1:指标是大数据开发中的关键要素

在大数据开发的过程中&#xff0c;指标体系是一个至关重要的概念。本文将介绍什么是指标&#xff0c;为什么它们如此重要&#xff0c;以及如何在大数据项目中有效地构建和应用指标体系。 目录 什么是指标&#xff1f;指标的类型为什么指标如此重要&#xff1f;如何构建有效的指…