揭秘AI幻觉:GPT-4V存在视觉编码漏洞,清华联合NUS提出LLaVA-UHD

    ChatGPT狂飙160天,世界已经不是之前的样子。
新建了免费的人工智能中文站https://ai.weoknow.com
新建了收费的人工智能中文站https://ai.hzytsoft.cn/

更多资源欢迎关注


GPT-4V 的推出引爆了多模态大模型的研究。GPT-4V 在包括多模态问答、推理、交互在内的多个领域都展现了出色的能力,成为如今最领先的多模态大模型。

然而,近期很多工作发现 GPT-4V 在很多基本能力上却意外的出现短板。例如,在微软一篇长达 166 页的技术报告《The Dawn of LMMs:Preliminary Explorations with GPT-4V (ision)》中,作者发现,对于一个不太复杂的图像中的苹果数量,GPT-4V 竟然怎么数也数不对。

图片

然而,学术界和工业界尚不清楚导致这些问题的底层原因。

这个问题在清华大学、新加坡国立大学和中国科学院大学的一篇题为《LLaVA-UHD: an LMM Perceiving Any Aspect Ratio and High-Resolution Images》的论文中得到了解释。

图片

  • 论文链接:https://arxiv.org/pdf/2403.11703.pdf

  • 项目链接:github.com/thunlp/LLaVA-UHD

其原因在于 GPT-4V 很可能存在:视觉编码漏洞。

该工作对当前最强的商业大模型 GPT-4V 和最受欢迎的开源模型 LLaVA-1.5 进行了实验,揭示了目前多模态大模型中的视觉编码漏洞。

图片

漏洞 1:GPT-4V 将图像进行有重叠的切片后再编码

作者首先设计了一个实验来观察:图像中的位置如何影响 GPT-4V 的计数回答。

具体来说,作者合成了如图 1 (a) 所示的图像,并向 GPT-4V 提问题:“图像中有多少个圆圈?” 同时,通过改变圆圈的位置而保持提问不变,进一步生成了一系列图像变体。

图 1 (b) 中以热图的形式显示了 GPT-4V 对图像中每个位置平均回答的数量,作者发现了一个与图像中目标位置高度相关的有趣模式如图 1(b)所示,具体表现为被 256×256 的正方形网格分割的三种不同模式:

(1) 中央正方形区域展示了最高的响应数量,

(2) 中间边缘区域的响应数量较低,

(3) 角落区域的响应数量最接近于真实值。

在对 GPT-4V 的响应进行数值区分后,作者发现除了正确答案和接近正确答案的情况,还有两种异常答案(8 个圆和 16 个圆),这些异常答案呈现了答案数量翻倍或四倍的错误模式。结合 OpenAI 公开的信息,这一现象的最可能原因是,当图像分辨率无法被 512 整除时,GPT-4V 处理图像的切片之间会出现重叠。如图 1 (e) 所示,两个切片之间的重叠区域导致数量翻倍,而四个切片的交叉重叠区域会使得识别出的数量增加至四倍。

图片

作者设计了另一个实验来观察:图像分辨率如何影响 GPT-4V 的计数回答。

具体来说,作者将图 2 (a) 中的图像按比例缩放至连续递增的分辨率,并询问 GPT-4V 其中圆圈的个数。

图片

图 2 (b) 中展示了 GPT-4V 的回答结果。随着图像分辨率的变化,GPT-4V 的回答显示出显著的相位变化:(1)在第 1 阶段,由于没有图像切片,大多数答案是正确的;(2)在第 2 阶段,答案 12 在响应中占主导地位,可能是由于每个切片中的圆不完整;(3)第 3 阶段显示了 9、12 和 16 的混合答案。请注意,16 可以很好地解释图 1 (e) 中的错误模式。

以上两个实验结果揭示了 GPT-4V 在处理高分辨率图像时存在重叠切片,导致错误响应,启发作者需要进一步研究更合理的图像预处理和编码方式。

漏洞 2:LLaVA-1.5 进行大范围的图像填充(Padding)

LLaVA-1.5 作为出色的开源多模态大模型被学术界广泛关注。

为了处理具有不同长宽比的图像,LLaVA-1.5 在将图像输入视觉编码器之前将其填充为正方形。这种编码方法导致非正方形图像的计算浪费。例如,将 1:4 图像填充为正方形后,有效计算量仅为 25%。

更重要的是,LLaVA-1.5 实际上无法确定填充像素是来自图像预处理还是原始输入图像的实际部分。

图片

为了演示这个问题,作者合成了一系列输入图像,如图 3(右)所示,其中不同长宽比的绿色矩形被灰色(即填充对应的 RGB 值)所包围。给定输入图像,作者提示:“最左 / 最右 / 最上 / 最下区域的颜色是什么?” 从图 3(左)的结果中,作者观察到 LLaVA-1.5 忽略了灰色输入区域(将其视为填充),并置信地回答了中心矩形的颜色。

综合以上 2 个明显的视觉编码漏洞可以知道,多模态模型中的视觉策略必须谨慎设计。常见做法,如填充、形状扭曲调整和重复切片,可能导致计算资源的浪费、模型能力的丧失,甚至容易受到对抗性攻击。

于是,作者提出 LLaVA-UHD,该模型可以对 180 万像素任意长宽比图像进行编码,相比于 LLaVA-1.5 在 9 个主流评测基准实现提升,训练和推理计算开销相比于 LLaVA-1.5 均有显著下降。

图片

LaVA-UHD 包括三个关键部分:一种图像模块化策略,将原始分辨率的图像分成更小的可变大小的切片,以便进行高效和可扩展的编码;一个压缩模块,进一步压缩来自视觉编码器的图像 tokens,一个空间装饰模式,用于为 LLMs 组织片段 tokens。

图像模块化策略中主要包含两个部分:

1. 高分辨率图像划分策略(如图 4 左侧)。目标是确定高分辨率图像的划分方式,使每个切片的分辨率变化最小。给定图像分辨率和和在固定分辨率上预训练的 ViT,首先确定处理图像所需的切片数。然后将切片数因式分解为和几种划分方式。为了选择最合适的划分,作者定义一个评分函数来衡量与 ViT 标准预训练设置的偏差,进而选择最佳的划分方法。

2. 任意宽高比切片编码(如图 4 右侧)。目的是等比例调整图像以适应预训练模型的位置嵌入数量。首先将 ViT 的 1D 位置嵌入转换为 2D 格式,并进行插值以匹配动态切片分辨率,从而获得自适应图像尺寸的视觉编码。实验表明,此方法在保持 ViT 和位置嵌入参数不变的情况下,通过后期微调即可提升性能。此外,还编码一张低分辨率概览图像,有助于提供全局语义信息,增强模型对图像的整体理解。

LLaVA-UHD 利用压缩模块(Resampler)压缩每张切片的 tokens,实现比 LLaVA-1.5 在 336×336 分辨率图像中更低的计算成本来编码 672×1008 分辨率的图像。由于图像切片在不同图像之间是动态的,因此有必要通过位置修饰符来告知 LLM 图像切片的相对位置。

图片

表 1 报告了主要的实验结果。在性能表现上,LLaVA-UHD 相对于 LLaVA-1.5 取得了显著的改进。通过简单地感知原生高分辨率图像,LLaVA-UHD 在 TextVQA 上实现了 6.4 的准确率提升,在 POPE 上实现了 3.2 的准确率提升。原因在于低分辨率图像中的模糊内容可能会阻止 LMMs 准确识别具有挑战性的细粒度目标和 OCR 字符。在计算效率和可拓展性上,LLaVA-UHD 仅使用 94% 的推理计算即支持任意宽高比的 672×1088 分辨率图像,能够适应更大分辨率的拓展。

图片

为了更直观地展示 LMM 在处理高分辨率图像方面的能力,在图 5 中提供了 LLaVA-UHD 和 LLaVA-1.5 的定性结果。可以看到,LLaVA-UHD 可以正确识别课表上的密集内容,小海报上的文字以及手机上的图标和文字,实现了细粒度的识别和推理。

未来展望

LLaVA-UHD 将图像分辨率限制在最大 672×1008。但是在未来,考虑到其具有潜力的效率和可扩展性,将探索更高分辨率的图像以及更具挑战性的任务,如小目标检测和分割。此外,目前图像片段是独立编码的,只在 LLMs 中进行交互。计划通过改进的视觉编码策略,在图像片段之间建立高效的连接,实现细粒度全局信息交互。

    ChatGPT狂飙160天,世界已经不是之前的样子。
新建了免费的人工智能中文站https://ai.weoknow.com
新建了收费的人工智能中文站https://ai.hzytsoft.cn/

更多资源欢迎关注


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

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

相关文章

capter1:GPU 硬件与 CUDA 程序开发工具

GPU 硬件与 CUDA 程序开发工具 参考书籍:CUDA 编程 樊哲勇 代码地址:https://github.com/QINZHAOYU/CudaSteps GPU 硬件 在由 CPU 和 GPU 构成的异构计算平台中,通常将起控制作用的 CPU 称为 主机(host),…

二. CUDA编程入门-双线性插值计算

目录 前言0. 简述1. 执行一下我们的第十个CUDA程序2. Bilinear interpolation3. 代码分析总结参考 前言 自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》,链接。记录下个人学习笔记,仅供自己参考 Note:关于 CUDA 加速双线程插值的内容博主…

Linux下I2C设备驱动:i2c_driver 的注册示例代码

一. 简介 前面学习了 Linux下 I2C驱动框架分为:I2C总线驱动与I2C设备驱动两个部分。我们主要重点学习 I2C设备驱动,前一篇文章学习了I2C设备驱动相关的结构体与设备驱动注册与删除。文章如下: Linux下I2C驱动实验:I2C 设备驱动…

对象存储服务MinIO安装使用

对象存储服务MinIO安装使用 MinIO简介 MinIO基于Apache License v2.0开源协议的对象存储服务,可以做为云存储的解决方案用来保存海量的图片,视频,文档。由于采用Golang实现,服务端可以工作在Windows,Linux, OS X和FreeBSD上。配置…

爬虫逆向非对称加密和对称加密案例

注意!!!!某XX网站逆向实例仅作为学习案例,禁止其他个人以及团体做谋利用途!!! 案例--aHR0cHM6Ly9jcmVkaXQuaGxqLmdvdi5jbi94eWdzL3l6d2ZzeHF5bWQv 第一步:分析页面、请求…

CTF 之Zhuanxv

拿到题目进行目录遍历发现有一个/list文件 打开/list文件,发现是一个登录界面 尝试过爆破,毫无疑问不可能成功。 刷新页面,抓包,然后放一个包,发现又发了一个请求。 GET /loadimage?fileNameweb_login_bg.jpg HTTP/…

1995-2021年各省分品种能源产量和消费量数据

1995-2021年各省分品种能源产量和消费量数据 1、时间:1995-2021年 2、来源:能源统计年鉴、各省年鉴 3、指标:能源消费总量、煤炭消费量、焦炭消费量、原油消费量、汽油消费量、煤油消费量、柴油消费量、燃料油消费量、天然气消费量、电力消…

不开玩笑,你应该像「搬砖」一样写代码!斯坦福大学研究如是说

由于程序员不可避免要进行很多重复性的工作,并且工作强度很高,导致有一种自嘲的说法出现:程序员们自称自己每天都在搬砖(实际上很多职场人都这么自嘲)。我相信当我们说工作像「搬砖」的时候,只是在表达一种…

JSX 入门:React 开发者的必备技能指南

JSX 是 React 的一种语法扩展,用于描述 UI 组件的外观。在 React 中,JSX 可以与 JavaScript 一起使用,帮助您在应用程序中创建动态和可重用的组件。以下是 JSX 的语法、使用技巧和注意事项,以及一些示例代码。 JSX 基础语法 JSX…

非关系型数据库——三万字Redis数据库详解

目录 前言 一、Redis概述 1.主要特点 2.Redis优缺点 3.Redis为什么这么快 4.Redis那么快,为什么不用它做主数据库,只用它做缓存 5.线程模型 5.1单线程架构 5.2多线程IO处理(Redis 6及以上) 5.3线程模型的优化 6.作用 …

回归预测 | Matlab实现WOA-GPR鲸鱼算法优化高斯过程回归多变量回归预测

回归预测 | Matlab实现WOA-GPR鲸鱼算法优化高斯过程回归多变量回归预测 目录 回归预测 | Matlab实现WOA-GPR鲸鱼算法优化高斯过程回归多变量回归预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 Matlab实现WOA-GPR鲸鱼算法优化高斯过程回归多变量回归预测 1.Matlab实现…

系统设计取舍问题

在需求设计过程中,常常面临着取舍问题。由于资源和时间的限制,不可能满足所有的需求,因此需要进行取舍。以下是一些常见的需求设计取舍问题和应对方法: 优先级:对于不同的需求,可以根据其重要性和紧急程度来…

蓝桥杯考前复习二

1.快速幂 public static long qmi(long a, long b, long p) {long r 1;while (b ! 0) {if ((b & 1) 1) {r (r * a) % p;}b >> 1;a a * a % p;}return r;} 2.Java日期类 日期问题暂更 3.日期问题模板 考前更新 4.状态机DP 1.松散子序列 - 蓝桥云课 (lanqia…

LOOP AT内表循环事件块 程序实例

REPORT zdemo_0006. *声明一个结构 DATA: BEGIN OF gs_alv, va1 TYPE char2, va2 TYPE char2, va3 TYPE char2, va4 TYPE char2, END OF gs_alv. *声明内表 DATA: gt_alv LIKE TABLE OF gs_alv. *赋值宏 DEFINE append_va. gs_alv-va1…

吹爆!遥感高光谱分类(Python)

目录 一、数据集下载 二、安装包 三、数据处理 四、模型训练 五、模型推理 六、踩坑记录 一、数据集下载 Hyperspectral Remote Sensing Scenes - Grupo de Inteligencia Computacional (GIC) (ehu.eus) Installing SPy — Spectral Python 0.21 documentation 二、安装…

算法打卡day36|动态规划篇04| 01背包理论基础、416. 分割等和子集

目录 01背包理论基础 01背包问题描述 01背包解法 二维数组 一维数组 算法题 Leetcode 416. 分割等和子集 个人思路 解法 动态规划 01背包理论基础 不同的背包种类,虽然有那么多中南背包,但其中01背包和完全背包是重中之重; 01背包问…

Python + Appium 自动化操作微信入门看这一篇就够了

Appium 是一个开源的自动化测试工具,支持 Android、iOS 平台上的原生应用,支持 Java、Python、PHP 等多种语言。 Appium 封装了 Selenium,能够为用户提供所有常见的 JSON 格式的 Selenium 命令以及额外的移动设备相关的控制命令,…

LABVIEW--正弦+高斯噪声信号及滤波

前面板信号 后面板 LABVIEW源程序链接:https://pan.baidu.com/s/11B-75i4fHZwWQyjxn9yCyQ?pwd7tfj 提取码:7tfj

中文地址分词器源码阅读(jiedi)

文章目录 structure.p文件pd.read_excelenumerate思维导图核心源码讲解jiedi.pytrain.py 总结 structure 点击左边的Structure按钮就如Structure界面。从Structure我们可以看出当前代码文件中有多少个全局变量、函数、类以及类中有多少个成员变量和成员函数。 其中V图标表示全…

AI普及时代,【AI书童】助你提升自我竞争力

AI运营官招募令!!! 【AI书童】运营官 未来智慧人工智能 2024-03-26 12:00 浙江 微信公众号:未来智慧人工智能 助力个人和企业在人工智能时代持续成功 随着ChatGPT、GPT-4和Sora等创新技术的推出,人工智能在多模态领…