【论文极速读】EMT——评估多模态LLM中的灾难性遗忘问题

news2024/11/24 22:30:42
【论文极速读】EMT——评估多模态LLM中的灾难性遗忘问题
FesianXu 20231001 at Baidu Search Team

前言

论文[1]报告了多模态LLM中遇到的灾难性遗忘问题,并且提出了一种评估其程度的方法EMT,本文简要介绍,希望对读者有所帮助。如有谬误请见谅并联系指出,本文遵守CC 4.0 BY-SA版权协议,转载请联系作者并注明出处,谢谢。

∇ \nabla 联系方式:

e-mail: FesianXu@gmail.com

github: https://github.com/FesianXu

知乎专栏: 计算机视觉/计算机图形理论与应用(https://www.zhihu.com/column/c_1265262560611299328)

微信公众号:机器学习杂货铺3号店


灾难性遗忘(Catastrophic forgetting)是在深度学习领域的一个概念,指的是模型在学习一个新目标的时候,对热启模型信息忘却的一个现象,比如在采用预训练模型作为热启,对模型进行微调导致模型对预训练模型信息的忘却。论文[1]报告了在多模态大规模语言模型(Multimodal Large Language Model, MLLM)中遇到的灾难性遗忘现象。通常来说,MLLM的视觉信息部分由视觉编码器(如ViT、Resnet等)组成,作者在论文中发现MLLM的图片分类能力对比原视觉编码器而言,会出现分类性能的下降,而在对MLLM进行微调后,发现会出现灾难性遗忘,作者提出一个称之为EMT的框架去评估(取名得纯纯二次元呢:P)。

所谓的EMT(Evaluating MulTimodality),如Fig 1.所示,首先输入待评估图片和prompt,让MLLM去对图片类别进行预测,由于LLM是生成式模型,其输出格式具有一定的不可控性,这意味着其预测输出和真实label之间可能是语义相同(semantic match)的,但是字面上却不匹配(lexical mismatch),因此在下游接入另一个LLM(比如GPT 3.5 turbo)进行预测结果的评估。
emt-framework

Fig 1. EMT的框架示意图。

通过这种方法,作者评估了LLaVA-7b、LLaVA13b与其视觉编码器CLIP的性能差异,见Fig 2. (a),同样的,作者也评估了LENS与openCLIP,InstructBLIP 7b、InstructBLIP 13b与openCLIP性能的差别,在各个图像分类测试集中结果绘制成玫瑰图,如Fig 2.所示。不难发现,绝大部分情况下MLLM的视觉分类能力都弱与其原生采用的视觉编码器CLIP,只有在ViT-g-14上的CIFAR-10数据上有所特殊。当然,这个可能和作者采用的prompt也有很大关系,众所周知,prompt模板的好坏对LLM的性能影响很大,这一点在之前的博文 [2] 中也曾经讨论过。
mllm-vision-worser-than-baseline

Fig 2. MLLM的视觉分类能力比其采用的图像编码器的分类能力更弱。

作者认为其性能下降主要有以下三种情况:预测错误(incorrect prediction),内部幻觉(intrinsic hallucination),外部幻觉(extrinsic hallucination),如下所示,具体细节请参考原论文。
emt-degrade-types
为何会产生性能下降呢?一个直接的想法就是,视觉语义和LLM的文本语义未完全对齐,导致对LLM的提问不能从知识库中检索出来(笔者:当然也不能排除prompt不合适的原因)。这点容易理解,假如视觉语义和文本语义已经对齐,那么对MLLM的提问,其实本质上就是在prompt中指定的若干个类别中检索一个语义最为接近的类别进行返回,如果没对齐,那么就会预测错误,如果LLM没能充分理解prompt的语义,则会出现幻觉。基于这种想法,可以对MLLM进行微调以更好地对齐多模语义,或者让LLM理解prompt语义,这种微调可以有几种,比如LoRA,Linear适配,prompt tuning,P-Tuning等,本文作者采用了LoRA和Linear适配。

  1. LoRA,采用Low Rank技术增加一些低秩矩阵参数,具体可见 [3]。
  2. Linear适配,在视觉编码向量 Z v Z_v Zv后新增一个线性投影层,得到 H v = W ⋅ Z v H_v = \mathbf{W} \cdot Z_v Hv=WZv作为输入到MLLM的视觉特征。

如Fig 3.所示,作者用LLaVA 6b和13b在不同数据集上进行微调了3个epoch,然后在其他数据集上进行测试,绘制出玫瑰图。不难发现大部分出现了灾难性遗忘情况(基线为7b-v0和13b-v0),也即是在某个数据集上微调在其他测试集上测试,其结果甚至远远低于基线,特别是采用lora微调的遗忘情况比linear适配的更为严重。由于LoRA会对LLM本身参数进行更新(低秩矩阵参数也是LLM的一部分),而Linear适配只是对视觉语义和文本语义进行对齐,因此猜测是对LLM的不当微调更容易导致幻觉。
emt-finetune

Fig 3. LLaVA 6b和13b下微调了3个epoch,采用LoRA和Linear适配的结果对比,可以发现都出现了过拟合情况。

当然,3个epoch的微调可能对于MLLM来说太多了,作者同样对epoch的数量进行了探索,如Fig 4.所示,(a)是Linear适配而(b)是同时更新Linear适配层和LoRA参数。有几点观察:

  1. 在只对Linear适配层进行更新的配置下,少量的微调(比如一个epoch内)能帮助视觉和文本语义的对齐。
  2. 采用Linear和LoRA同时更新的结果,其灾难性遗忘现象严重,对LLM层参数的不当更新会导致严重的幻觉。
  3. 微调数据集足够多样化能够帮助减缓灾难性遗忘,这一点可从Fig 4. (a)的在CIFAR 10、CIFAR 100数据集上的微调结果中看出来。

因此,在期望对MLLM进行微调的时候其下游数据集需要进行精心设计,尽可能保证微调数据集的多样性,并且微调方式也需要多考虑,尽可能不要碰LLM的原先参数,笔者觉得也许Prompt Tuning会是一个更好的方式,可以结合Linear适配和Prompt Tuning进行微调的实验尝试。我们就当LLM通过大规模的预训练已经语义完备了,MLLM的语义对齐就交给视觉端进行吧,其实理论上说,语义对齐这个能力应该交给上游的CLIP对比学习完成,但是可能出现语义漂移,因此适当的下游任务语义对齐也是必要的。
emt-finetune-epoch

Fig 4 采用了不同epoch数量的测试结果,同时作者对比了(a)线性适配和(b)同时更新线性适配层和LoRA参数。

Reference

[1]. Zhai, Yuexiang, et al. “Investigating the Catastrophic Forgetting in Multimodal Large Language Models.” arXiv preprint arXiv:2309.10313 (2023).

[2]. https://blog.csdn.net/LoseInVain/article/details/133385359, 《【论文极速读】Prompt Tuning——一种高效的LLM模型下游任务适配方式》

[3]. Edward J Hu, Yelong Shen, Phillip Wallis, Zeyuan Allen-Zhu, Yuanzhi Li, Shean Wang, Lu Wang, and Weizhu Chen. Lora: Low-rank adaptation of large language models. arXiv preprint arXiv:2106.09685, 2021

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

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

相关文章

criu简单例子

CRIU(Checkpoint/Restore In Userspace)是运行在linux操作系统上的一个开源软件,其功能是在用户空间实现Checkpoint/Restore功能。 github地址如下:https://github.com/checkpoint-restore/criu 本人选取的版本是3.12&#xff0…

使用V-Ray for SketchUp 进行室外场景操作流程!

使用V-Ray for SketchUp 渲染时,可让大家轻松创建出色的渲染效果。如何使用V-Ray for SketchUp 进行室外场景操作呢? 对于一些新手朋友,可能是不知所措的,今天小编通过一个室外场景案例流程来给大家展示看看。 1、设置场景 可视化…

FPGA设计时序约束三、设置时钟组set_clock_groups

目录 一、背景 二、时钟间关系 2.1 时钟关系分类 2.2 时钟关系查看 三、异步时钟组 3.1 优先级 3.2 使用格式 3.3 asynchronous和exclusive 3.4 结果示例 四、参考资料 一、背景 Vivado中时序分析工具默认会分析设计中所有时钟相关的时序路径,除非时序约束…

Android子线程可以更新UI

目录 1 传统更新UI的七种方式1.1 new Handler()1.2 new Handler.Callback()1.3 new Handler().post(Runnable r)1.4 new Handler().postDelayed(Runnable r, long delayMillis)1.5 Activity.runOnUiThread(Runnable action)1.6 View.post(Runnable action)1.7 View.postDelayed…

科普丨如何让语言芯片保持稳定性能

一、勿长期高磁接触 虽然高质量的语音芯片的高声量范围相对较大,但是智能语音芯片一般分为不同情况使用,首先是内外不能混用,不仅如此在室内使用时也要防止长期的高磁接触,这样也会使语音芯片寿命折损。 二、定期清尘擦拭 专业…

计算机网络拓扑结构

什么是计算机网络拓扑结构? 计算机网络拓扑结构是指在网络中连接计算机和设备的方式或布局。它决定了如何在网络中传输数据,以及网络中的设备如何相互通信。不同的拓扑结构适用于不同的场景和需求,因此选择正确的拓扑结构对于网络性能和可用…

详解FreeRTOS:FreeRTOS任务恢复过程源码分析(进阶篇—4)

本篇博文讲解FreeRTOS中任务恢复过程的源代码,帮助各位更好理解恢复任务的原理和流程。 在详解FreeRTOS:FreeRTOS任务管理函数(基础篇—11)中,讲述了任务恢复函数有两个vTaskResume()和xTaskResumeFromISR(),一个是用在任务中的,一个是用在中断中的,但是基本的处理过程…

[C]二叉树的实现——喵喵成长记

宝子,你不点个赞吗?不评个论吗?不收个藏吗? 最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!! 喵喵喵,你对我真的很重要…

OpenAI将自研芯片,以解决ChatGPT算力短缺问题

10月6日,路透社消息,OpenAI将自研芯片,以解决ChatGPT算力短缺的问题。 据内部人士透露,OpenAI目前正在评估潜在的芯片厂商,以进行收购。 随着ChatGPT等生成式AI产品的火爆出圈,AI算力成为互联网领域的新一…

SpringBoot, EventListener事件监听的使用

1、背景 在开发工作中,会遇到一种场景,做完某一件事情以后,需要广播一些消息或者通知,告诉其他的模块进行一些事件处理,一般来说,可以一个一个发送请求去通知,但是有一种更好的方式,…

BLIP 小结

论文:Bootstrapping Language-Image Pre-training (BLIP) 代码:https://github.com/salesforce/BLIP 1 motivation 目前多模态模型在图片理解类任务、生成类任务表现卓越主要源于Scale up model and scale up dataset(更大的模型&#xff…

加速attention计算的工业标准:flash attention 1和2算法的原理及实现

transformers目前大火,但是对于长序列来说,计算很慢,而且很耗费显存。对于transformer中的self attention计算来说,在时间复杂度上,对于每个位置,模型需要计算它与所有其他位置的相关性,这样的计…

【Unity】万人同屏高级篇, BRG Jobs实战应用, 海量物体同屏

博文开发测试环境: Unity:Unity 2022.3.10f1,URP 14.0.8,Burst 1.8.8,Jobs 0.70.0-preview.7,热更HybridCLR 4.0.6PC:Win11,CPU i7-13700KF,GPU 3070 8G,RAM…

[SWPUCTF 2022 新生赛]善哉善哉题目解析

这一题结合的东西挺多的,但也不是说很难。 他先给了压缩包,正常压缩他没有密码卡你压缩出来是一张图片 打开看没什么提示,就按自己的思路走先查看属性,一般属性是最优先查看的,因为他在属性藏东西的地方不多&#xff…

网络安全(黑客)从零开始的自学指南(第二章)

第二章:黑客入门 2.1 什么是黑客 黑客是指具有高超计算机技术和网络知识的个人或组织,通过技术手段侵入他人的计算机系统或网络,获取非法利益或破坏目标系统的行为。黑客可以分为两类:道德黑客(白帽黑客&#xff0…

接扫理解.exe文件的结构原理即运行过程

爱像时间,永恒不变而又短暂;爱像流水,浩瀚壮阔却又普普通通。 .exe .exe文件是Windows操作系统中可执行文件的常见格式,它包含了计算机程序的二进制代码以及其他必要的信息,以便操作系统能够加载和执行该程序。下面是…

秒验:可以自定义UI的一键登录服务

一键登录如今成为越来越多移动应用的首选,但千篇一律的登陆界面在引发用户担忧其安全性的同时,也容易让用户在不同APP切换时产生误解。因此,由国内知名移动应用开发服务商MobTech打造的一键登录工具——秒验,通过允许开发者自定义…

【MVDiffusion】完美复刻场景,可多视图设计的生成式模型

文章目录 MVDiffusion1. 自回归 生成 全景图1.1 错误积累1.2 角度变换大 2. 模型结构2.1 多视图潜在扩散模型(mutil-view LDM)2.1.1 Text-conditioned generation model2.1.2 Image&text-conditioned generation model2.1.3 额外的卷积层 2.2 Correspondence-aware Attenti…

使用 TensorFlow 创建 DenseNet 121

一、说明 本篇示意DenseNet如何在tensorflow上实现,DenseNet与ResNet有类似的地方,都有层与层的“短路”方式,但两者对层的短路后处理有所不同,本文遵照原始论文的技术路线,完整复原了DenseNet的全部网络。 图1&#x…

评价指标篇——IOU(交并比)

什么是IoU(Intersection over Union) IoU是一种测量在特定数据集中检测相应物体准确度的一个标准。 即是产生的候选框(candidate bound)与原标记框(ground truth bound)的交叠率 即它们的交集与并集的比值。最理想情况是完全重叠…