Llama 3-V: 比GPT4-V小100倍的SOTA

大模型技术论文不断,每个月总会新增上千篇。本专栏精选论文重点解读,主题还是围绕着行业实践和工程量产。若在某个环节出现卡点,可以回到大模型必备腔调重新阅读。而最新科技(Mamba,xLSTM,KAN)则提供了大模型领域最新技术跟踪。若对于如果构建生成级别的AI架构则可以关注AI架构设计专栏。技术宅麻烦死磕LLM背后的基础模型。

大模型领域风云变幻莫测。先是Llama3风靡全球,在几乎所有基准测试中都超越GPT-3.5,部分的基准测试超越了 GPT4。随后,GPT-4o横空出世,凭借其多模态重新夺回王位。而本文中的Llama3-v是研究人员带来新的惊喜,先看下图的统计。Llava是目前最先进的多模态理解模型,LLama3-V与Llava(多模态理解领域的SOTA)相比,提升了 10-20%。此外,除了MMMU之外,在其他指标的表现上和规模大于其 100 倍的闭源模型都毫不逊色。

基于Llama3 8B的LLama3-v与其他模型对比的基准指标数据:

模型架构

为了让Llama3理解视觉信息,因此研究人员将图像切块通过SigLIP模型获取图像的Embedding Vector,然后通过投影与输入文本Tokens对齐平面上。最后,投影块中的视觉Tokens添加到文本Tokens之前,并将联合表示传递到 Llama3。

SigLIP 模型由 Xiaohua Zhai、Basil Mustafa、Alexander Kolesnikov 和 Lucas Beyer在“Sigmoid Loss for Language Image Pre-Training”中提出。SigLIP 是一种与 CLIP 类似的图像嵌入模型。主要区别在于训练损失,SigLIP采用成对Sigmoid 损失,这允许模型独立地对每个图像-文本对进行操作,而无需对批次中的所有对进行全局查看,同时对 logits应用sigmoid激活函数,而不是softmax。

请看上图。换句大白话的说,sigLIP的损失函数是在文字Tokens和图像Tokens的两个序列的基础上计算出来。它指导着模型训练朝着这相同样本对(图,文)的点积值越大,而不同图文对的点积值越小的目标迈进。即矩阵对角线的越大,其余的各自越小。

上图为SigLIP的预训练过程,它在三个设备进行训练。每设备持有4幅图和文字,在单设备上各自运算。紧接着不同的设备交换文本计算损失,如此循环直到全部计算完毕。

SigLIP 的视觉编码器在高层次上将图像分割成一系列不重叠的图像块,并将它们投影到低维线性嵌入空间中,从而产生一系列块嵌入。然后,这些块嵌入经过视觉编码器,该编码器应用自注意力来捕获长距离依赖关系并提取更高级的视觉特征。

虽然为了节省计算资源,在LLama3-v中直接使用由Google DeepMind训练的原始SigLIP模型。然而为了与文本嵌入对齐,还是在SigLIP输出之后使用了额外的投影模块。这与将单个线性层应用于原始图像嵌入的Llava不同,这个模块被改为训练两个自注意力块以便于更好地捕获输入模式,从而生成最终的图像嵌入向量(Embedding Vector)。

对于文本输入,首先使用字节对编码 (BPE) 词汇表对文本进行Tokenizer,从而生成文本标记序列。这些标记(Token)会被包在特殊的 <text>和</text>标签中来进行区分。对于来自投影层的图像输出将被视为单独的“视觉标记”,并使用<image>和</image>标签划分它们。视觉标记序列前置到文本标记序列,形成新的序列成为Llama3的联合输入。

SigLIP

SigLIP模型比Llama3小得多,而且在整个过程中是被冻结参数的。因此对于预训练和 SFT,我们直接传入这些预先计算好的图像嵌入(Embedding),而不是重新运行SigLIP。这使得训练能够增加批处理大小并最大限度地利用GPU来运行SigLIP,还为节省了训练/推理时间。

为了进一步的优化速度,由于SigLIP也适合运行在Macbook,因此采用MPS 优化过的SigLIP模型上进行运算,这样一来就能够实现每秒 32 张图像的吞吐量,让上个步骤得以实行。

MPS(Metal Performance Shaders)是Apple提供的一套框架,专门用于在Apple设备上加速机器学习和图形计算。

通过SigLIP预计算图像嵌入的步骤,目标是将图像传入SigLIP以获得图像的矢量表示或嵌入。

由于分辨率较高,研究人员遵循LLaVA-UHD采用的方法并执行图像分割。图像分割的目的是将图像分成可变大小的块或片段,以实现更高效的编码和批量处理。

细节分析

首先加载 SigLIP 模型和处理器/标记器,然后使用处理器预处理提供的输入图像。紧跟着将预处理后的图像传递给模型。之后获得模型的输出,将 S型激活函数应用于输出以获得概率。

通过 SigLIP 计算图像嵌入之后,我们现在开始学习投影矩阵——你也可以将其视为投影层,它通常是线性或前馈层。如上文成分部分所述,投影层将视觉嵌入从其原始空间映射到联合多模态嵌入空间。具体而言,投影层将学习到的权重矩阵 Wv 应用于视觉嵌入 v 以获得投影的多模态视觉嵌入 Wv * v(矩阵运算)。通过投影之后,视觉和文本嵌入基本上被对齐到一个共同的多模态嵌入空间,这样一来视觉和文本就融合了,可以运用到各种的多模态任务,如视觉问答、图像字幕等。

根据上述而言图像标记序列添加到文本标记序列之前。之所以添加在前面,是因为将图像放在文本之前,可以让模型在预训练期间更容易学习。

这里借用了LLaVA-UHD的架构图,因为LLama3-v和LLaVA-UHD几乎相同,两者只不过在组件的选择不同而已。前者采用了SigLIP和LLama3,而后者选择CLIP-ViT和Vicuna-13B作为基座模型。

训练回放

训练分为两个阶段:在预训练中使用 600,000 个样本,该步骤保持 Llama-3架构的主要权重不变,主要训练投影矩阵。这里主要是为了训练图像Tokens与文本Tokens的联合对齐。

在第二个阶段微调更多的类似指令微调。这个步骤冻结SigLIP模型和投影层的权重,但是更新Llama3 8B模型的权重和其余的参数。这里用了大约1M张图像。除此之外还利用了从YI模型系列生成的多模态合成数据。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python猜数字游戏

猜数字游戏 计算机随机产生一个1~100的随机数&#xff0c;人输入自己猜的数字&#xff0c; 计算机给出对应的提示“大一点”&#xff0c;”小一点“或”恭喜你猜对了“&#xff0c;直到猜中为止。 如果猜的次数超过7次&#xff0c;计算机温馨提示“智商余额明显不足” import …

K8s(Kubernetes)常用命令

大家好&#xff0c;当谈及容器编排工具时&#xff0c;Kubernetes&#xff08;常简称为K8s&#xff09;无疑是当今最受欢迎和广泛使用的解决方案之一。作为一个开源的容器编排平台&#xff0c;Kubernetes 提供了丰富的功能&#xff0c;可以帮助开发人员和运维团队管理、部署和扩…

能耗监测系统在上海交通大学闵行校区理科实验楼群的设计与应用

引言 建筑能耗系统&#xff0c;除了基本的电力参数监测、配电系统的运行状况&#xff0c;更加关注能耗的去向。除了常规的园区楼层出线电能计量&#xff0c;还会涉及水&#xff0c;气等能耗计量。 针对上海交通大学闵行校区理科实验楼群能耗监测系统的具体要求&#xff0c;以…

小熊家务帮day8-day9 客户管理模块2 (用户定位,地址簿,实名认证,银行卡信息上传等功能)

客户管理模块 0.用户定位功能0.1 需求0.2 接口分析0.3 接口开发Controller层开发Service层开发 1.我的地址簿功能1.1 需求1.2 数据库设计1.3 新增地址簿1.3.1 接口设计1.3.2 接口开发Controller层开发Service层开发测试功能 1.4 地址簿查询1.4.1 接口设计1.4.2 接口开发Control…

游戏主播到底是为游戏宣传还是蹭游戏带来的热度

易采游戏网6月1日最新消息&#xff1a;近日知名游戏主播周淑怡在社交平台上发表了自己对《地下城与勇士》手游(简称DNF手游)的点评。作为一款拥有庞大粉丝基础的端游改编作品&#xff0c;DNF手游自发布以来便受到了广泛关注。而周淑怡的点评不仅聚焦于游戏体验本身&#xff0c;…

visual studis 安装教程

1、下载软件 2、直接安装。根据自己的需求选择需要的模板类型。 如果是.net环境&#xff0c;可以选择.net项目&#xff1b; 如果是c环境&#xff0c;可以选择c项目模板&#xff0c;多个模板可以同时并存。 3、选择C模板&#xff0c;然后重新启动项目。 我是小路&#xff0c;一枚…

Flutter基础 -- Dart 语言 -- 列表集合枚举

目录 1. 列表 List 1.1 初始 1.2 声明 1.2.1 自动 1.2.2 定长 1.2.3 生成数据 1.3 属性 1.4 方法 1.4.1 添加 1.4.2 查询 1.4.3 删除 1.4.4 Range 1.4.5 洗牌 1.4.6 排序 1.4.7 复制子列表 1.4.8 操作符 2. 集合 Map 2.1 初始 2.2 声明 2.2.1 松散 2.2.2 …

7、架构-架构的安全性

即使只限定在“软件架构设计”这个语境下&#xff0c;系统安全仍然是一 个很大的话题。我们谈论的计算机系统安全&#xff0c;不仅仅是指“防御系统 被黑客攻击”这样狭隘的安全&#xff0c;还至少应包括&#xff08;不限于&#xff09;以下这些问 题的具体解决方案。 认证&am…

小白教你搭建测试环境(docker部署版)

如何使用docker创建多数据库端口&#xff08;云服务器版&#xff09; 背景&#xff1a; 需要搭建一个测试环境&#xff0c;同时还需要不同的端口映射mysql端口。那么我采用的docker拉取mysql镜像&#xff0c;通过宿主机和docker容器端口映射完成。 准备一台云服务器服务器安装…

[书生·浦语大模型实战营]——训练自己的小助手认知+应用部署到 OpenXLab+复现多模态微调

1.训练自己的小助手认知 微调后的回答&#xff1a; 微调前的回答&#xff1a; 2.应用部署到 OpenXLab 上传的自我认知模型 应用部署在OpenXLab&#xff08;比上次部署方便不少&#xff0c;文档写的更清楚了&#xff0c;棒棒&#xff09;,链接如下应用链接 3.复现多模态…

SLAM精度评估—evo

evo是一款用于SLAM轨迹精度的评估工具。核心功能是&#xff08;1&#xff09;能够绘制&#xff08;传感器运动&#xff09;轨迹&#xff0c;&#xff08;2&#xff09;评估估计轨迹与真值&#xff08;ground truth&#xff09;的误差。evo支持多种数据集的轨迹格式(TUM、KITT、…

php之文件操作代码审计

1 PHP文件操作函数 1.1 PHP文件操作函数 文件包含 include/require/include_once/require_once 文件读取 file_get_contents/fread/readfile/file 文件写入 file_put_contents/fwrite/mkdir/fputs 文件删除 unlink/rmdir 文件上传 move_uploaded_file/copy/rename 1.2 文…

Error CREATEing SolrCore ‘new_core‘ Unable to create core [new_core]

Error CREATEing SolrCore new_core: Unable to create core [new_core] Caused by: Cant find resource solrconfig.xml in classpath or F:\Document_Solr.apache.org\solr-8.11.3\server\solr\new_core

VHDL/CPLD硬件描述语言:2022年做的万年历实验

之前接触过一些硬件描述语言以及VHDL/CPLD的单片机的设计实验&#xff0c;那时是2022年了 这里补写一篇笔记,以记录一下那十多个小时 万年历实验 研究中的心得体会&#xff1a; 说明解释都是个人理解&#xff0c;与标准描述有较大出入...... 目录 输入输出器件的编写: 分频器…

年中汇报季?——一文教会你如何进行数据分析

一、常见的数据分析报告类型 数据分析报告通常可以分为三类&#xff1a;日常分析报告、专题型分析报告和综合性分析报告。前两者是以数据结论建议的格式去撰写&#xff0c;综合性分析报告则是&#xff1a;行业环境调研&#xff08;竞品类产品数据分析&#xff09;自身产品数据…

张大哥笔记:你卖什么,就反着来卖

普通人打工的一生&#xff0c;就是努力工作&#xff0c;买房&#xff0c;买车&#xff0c;送孩子上好的学校&#xff0c;为了孩子不要输在起跑线上&#xff0c;拼命报各种补习班等&#xff0c;这些都是普通人认为的主流价值观文化&#xff0c;也造就了一批批的赚钱机器&#xf…

深度解析 Spring 源码:探秘 CGLIB 代理的奥秘

文章目录 一、CGLIB 代理简介1.1 CGLIB 代理的基本原理和特点1.2 分析 CGLIB 如何通过字节码技术创建代理类 二、深入分析 CglibAopProxy 类的结构2.1 CglibAopProxy 类结构2.2 CglibAopProxy 类源码 三、CGLIB 代理对象的创建过程3.1 配置 Enhancer 生成代理对象3.2 探讨如何通…

【斯坦福因果推断课程全集】1_随机对照试验1

目录 The average treatment effect Difference-in-means estimation IID Sampling and Population Asymptotics Example: The linear model Regression adjustments with a linear model 随机对照试验&#xff08;RCT&#xff09;是统计因果推论的基础。如果有的话&#…

Linux - 文件管理高级 sed

3.处理字符 sed ① sed 默认情况下不会修改原文件内容 ② sed 是一种非交互式的编辑器 3.1 工作原理 将原文件一行一行的进行处理&#xff0c;取出一行&#xff0c;放入“模式空间进行处理”&#xff0c;处理完成之后将结果输出到屏幕上&#xff0c;然后读取下一行&#xf…

瓦罗兰特国际服 外服游玩教程 瓦罗兰特外服下载注册游玩指南

瓦罗兰特国际服 外服游玩教程 瓦罗兰特外服下载注册游玩指南 瓦罗兰特作为当今游戏圈顶流的一款热门FPS。游戏&#xff0c;作为拳头游戏公司划时代的一款游戏。游戏不仅延续了传统FPS游戏的玩法&#xff0c;还添加许多新玩法&#xff0c;这也是游戏可以吸引大批量玩家的原因之…