【论文笔记】Wings: Learning Multimodal LLMs without Text-only Forgetting

🍎个人主页:小嗷犬的个人主页
🍊个人网站:小嗷犬的技术小站
🥭个人信条:为天地立心,为生民立命,为往圣继绝学,为万世开太平。


基本信息

标题: Wings: Learning Multimodal LLMs without Text-only Forgetting
作者: Yi-Kai Zhang, Shiyin Lu, Yang Li, Yanqing Ma, Qing-Guo Chen, Zhao Xu, Weihua Luo, Kaifu Zhang, De-Chuan Zhan, Han-Jia Ye
arXiv: https://arxiv.org/abs/2406.03496

基本信息

摘要

多模态大型语言模型(MLLMs)以训练好的LLM为基础,首先将图像与文本对齐,然后对多模态混合输入进行微调。

然而,MLLM在灾难性地忘记了仅包含文本的指令,这些指令不包括图像,可以在初始LLM中解决。

在本文中,我们提出了WINGS,这是一种新型的MLLM,在纯文本对话和多模态理解方面都表现出色。

分析MLLM在多模态指令中的注意力发现,纯文本遗忘与从预图像文本到后图像文本的注意力转移有关。

据此,我们构建了额外的模块,作为增强学习器来补偿注意力转移。

互补的Visual Learner和Textual Learner,如两侧的“翅膀”,在每个层的注意力块中并行连接。

最初,图像和文本输入与Visual Learner一起操作,与主要注意力平衡,关注视觉元素。

Textual Learner随后与基于注意力的路由协作集成,以融合Visual Learner和Textual Learner的输出。

我们设计了Low-Rank Residual Attention(LoRRA)以保证学习器的高效率。

我们的实验结果表明,WINGS在纯文本和视觉问答任务中均优于同等规模的MLLMs。

在一个新构建的交错图像-文本(IIT)基准上,WINGS在从纯文本丰富的到多模态丰富的问答任务中表现出优异的性能。

主要贡献

  1. 我们提出并验证了MLLM的纯文本遗忘现象与图像前后跨层MLLM-LAWS的注意力转移相关。
  2. WINGS构建了Visual Learner和Textual Learner,并引入了一种基于注意力权重转移的Router,以补偿注意力转移,实现协作学习。
  3. 纯文本、视觉问答和新建的交错图像-文本(IIT)基准上的实验表明,WINGS具有全面和灵活的性能。

工作

Capturing the Attention Shift with MLLM-LAWS

对于具有 L L L 层的MLLM,我们定义Layer-level Attention Weights(MLLM-LAWS)为:

LAWS V ∗ = [ a V ∗ 1 , a V ∗ 2 , ⋯ , a V ∗ L ] , a V ∗ l = ∑ i = 0 s ∑ j ∈ V ∗ a i j l ( h l − 1 ) \text{LAWS}_{\mathcal{V}_{*}} = \left[ a_{\mathcal{V}_{*}}^{1}, a_{\mathcal{V}_{*}}^{2}, \cdots, a_{\mathcal{V}_{*}}^{L} \right], \quad a_{\mathcal{V}_{*}}^{l} = \sum_{i=0}^{s} \sum_{j \in \mathcal{V}_{*}} a_{ij}^{l} \left( h^{l-1} \right) LAWSV=[aV1,aV2,,aVL],aVl=i=0sjVaijl(hl1)

a i j l a_{ij}^{l} aijl 表示MLLM的第 l l l 层中第 i i i 个token对第 j j j 个token的注意力权重, h l h^{l} hl 表示第 l l l 层的隐藏状态, ∀ i , ∑ j = 0 s a i j l ( h l − 1 ) = 1 \forall i, \sum_{j=0}^{s} a_{ij}^{l} \left( \mathbf{h}^{l-1} \right) = 1 i,j=0saijl(hl1)=1 V ∗ \mathcal{V}_{*} V 表示一个token序列,可以是 V itself \mathcal{V}_\text{itself} Vitself V before \mathcal{V}_\text{before} Vbefore V after \mathcal{V}_\text{after} Vafter,分别表示视觉序列、视觉序列前的文本序列和视觉序列后的文本序列。

LAWS V ∗ \text{LAWS}_{\mathcal{V}_{*}} LAWSV 可以表示MLLM对当前序列 V ∗ \mathcal{V}_{*} V 在所有MLLM层上的注意力动态曲线。

Illustration of mixed visual-and-textual inputs and the Layer-level Attention Weights (LAWS) with its properties

  • (a): 视觉编码器和投影器的视觉特征token被插入到文本特征序列中。
  • (b): 文本层中在文本token的前图像、图像本身和后图像上的注意力权重比例。红色曲线来自在纯文本任务表现更好的MLLM,而蓝色曲线来自在纯文本任务表现更差的MLLM。
  • ©: 实验表明,在100多个MLLM中,视觉token前后的皮尔逊相关系数与MLLM在纯文本上的表现存在正相关关系。

因此,注意力转移可通过视觉序列前后 LAWS \text{LAWS} LAWS 之间的皮尔逊相关系数量化为:

Attention Shift = E x [ − ρ ( LAWS V before , LAWS V after ) ] + 1 \text{Attention Shift} = \mathbb{E}_{\mathbf{x}} \left[ -\rho \left( \text{LAWS}_{\mathcal{V}_{\text{before}}}, \, \text{LAWS}_{\mathcal{V}_{\text{after}}} \right) \right] + 1 Attention Shift=Ex[ρ(LAWSVbefore,LAWSVafter)]+1

WINGS

WINGS

我们引入了与主要注意力平行的额外模块,作为增强Learner来补偿注意力转移。我们在一侧训练Visual Learner,减轻一些转移的注意力。然后,我们基于路由转移的注意力权重协同训练Visual Learner和Textual Learner。

WINGS 详细结构

WINGS由Low-Rank Residual Attention(LoRRA)模块构建,其中前一个隐藏状态作为Query,而视觉/文本特征作为Key和Value。训练从Visual Learner和Projector开始,接着是动态注意力Router。

Learner:

Learner ∗ ( Q = h l , K , V = x ∗ ) ∗ ∈ { V , T } = Softmax ( h l ( 1 + W Q ) ⋅ ( x ∗ ( 1 + W K ) ) ⊤ d head ) x ∗ ( 1 + W V ) W O \text{Learner}^* \left( \rm{Q} = \mathbf{h}^l, \rm{K}, \rm{V} = \mathbf{x}_* \right)_{* \in \{\mathbf{V}, \mathbf{T}\}} = \text{Softmax} \left( \frac{\mathbf{h}^l (1 + \mathbf{W}^{\rm{Q}}) \cdot (\mathbf{x}_* (1 + \mathbf{W}^{\rm{K}}))^\top}{\sqrt{d_{\text{head}}}} \right) \mathbf{x}_* (1 + \mathbf{W}^{\rm{V}}) \mathbf{W}^{\rm{O}} Learner(Q=hl,K,V=x){V,T}=Softmax(dhead hl(1+WQ)(x(1+WK)))x(1+WV)WO

Router接受一个注意力权重作为输入,通过单层MLP和Softmax处理,然后将Learner的输出叠加到主注意力上。

Att WINGS = Att main + ∑ ∗ ∈ { V , T } Router ( a ) ⋅ Learner ∗ ( h l , x ∗ ) \text{Att}^{\text{WINGS}} = \text{Att}^{\text{main}} + \sum_{* \in \{V, T\}} \text{Router}(\mathbf{a}) \cdot \text{Learner}^* \left( \mathbf{h}^l, \mathbf{x}_* \right) AttWINGS=Attmain+{V,T}Router(a)Learner(hl,x)

训练

训练

WINGS的架构包含四个元素:Vision Encoder、Projector、LLM以及带有Router的Learner。

  • Stage 1
    • ❄️ Vision Encoder、LLM
    • 🔥 Projector、Visual Learner
    • Visual Learner的输出直接加到主分支上
  • Stage 2
    • ❄️ Vision Encoder
    • 🔥 LLM、Projector、Router、Visual Learner、Textual Learner

实验

主实验

Performance comparisons of WINGS and the baseline MLLMs under the same training data

WINGS与基线MLLMs在相同训练数据下的性能比较。

Performance comparisons of the equal-scale MLLMs and the efficient multimodal LLMs on text-only and multimodal datasets

同等规模的多模态大模型和高效多模态大模型在纯文本和多模态数据集上的性能比较。

Interleaved Image-Text (IIT) Benchmark

为了精细评估MLLMs,我们构建了一系列纯文本和多模态混合多轮对话。

我们通过chroma从MMLU、CMMLU、OpenbookQA、HellaSwag、MMMU、MMBench、SEED-Bench和AI2D数据集中提取具有相似语义的指令。

然后,我们使用GPT-3.5 Turbo润色一些指令,使它们更接近现实世界的对话。

我们设置了6种视觉内容配置,按多轮内容分类为:(T)、(T, T)、(T, T, T)、(T, T, V)、(T, V)和(V)。

例如,(T, T, V)表示两个连续的纯文本查询后跟一个需要回答的视觉问题。

消融实验

Performance comparison on the newly constructed Interleaved Image and Text (IIT) Benchmark of the LLaVA series, different learning rate and fine-tuning parts

在Interleaved Image and Text (IIT) Benchmark上与LLaVA系列模型、不同学习率、不同微调部分的性能比较。

总结

我们提出了WINGS,它包括Visual Learner和Textual Learner,以减轻纯文本的遗忘。Learner由高效的Low-Rank Residual Attention(LoRRA)构成。

我们首先考虑MLLM中的转移注意力权重,并在第一阶段专注于学习Visual Learner。然后,我们基于转移注意力权重进行联合训练Visual Learner和Textual Learner。

WINGS在纯文本、视觉问答和新建的Interleaved Image and Text (IIT) Benchmark测试中表现出显著性能。

WINGS允许在资源有限的情况下保持纯文本的性能,并在资源丰富的环境中进一步提升性能。

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

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

相关文章

数据类型底层

计算机的工作原理 CPU 找数据 数据通过地址信息来标记 高级语言:在内存中"分配"空间用变量来标识 所以变量一定是存在地址的 例如: int a10; //a就是变量名用来对地址进行标识 0x100对这个地址标识必备常识:8bit1byte 常见的数据类型: char short int long //…

【Leecode】Leecode刷题之路第45天之跳跃游戏II

题目出处 45-跳跃游戏II-题目出处 题目描述 个人解法 思路: todo代码示例:(Java) todo复杂度分析 todo官方解法 45-跳跃游戏II-官方解法 这道题是典型的贪心算法,通过局部最优解得到全局最优解。以下两种方法都是…

【Allure】mac下环境配置

安装 1.Mac 可以使用 brew 安装 allure,安装命令如下 brew install allure 2.与 pytest 结合需要安装 allure-pytest 插件: pip install allure-pytest3.查看allure版本 allure --version

conan2 c/c++包管理菜鸟入门

以官网教程为例。 首先下载官网示例: git clone https://github.com/conan-io/examples2.git cd examples2/tutorial/consuming_packages/simple_cmake_project 然后进入该示例教程 先 conan profile detect 检测一下当前编译器环境是否配置, 然后…

20221428欧阳慕蓉 第九周预习报告

AI对学习内容的总结 第九章的内容主要围绕进程和系统调用的概念,以及如何在C程序中使用这些概念来创建和管理进程。以下是本章的主要内容总结: 系统调用(System Calls): 系统调用是C程序用来与操作系统内核交互的函数…

C#语言发展历史

前言 C#是微软公司在2000年6月发布的一种新的编程语言,主要由安德斯海尔斯伯格(Anders Hejlsberg)主持开发,它是第一个面向组件的编程语言,其源码会编译成msil再运行。 C#最初有个更酷的名字,叫做COOL。微软…

证件照尺寸168宽240高,如何手机自拍更换蓝底

在提供学籍照片及一些社会化考试报名时,会要求我们提供尺寸为168*240像素的电子版证件照,本文将介绍如何使用“报名电子照助手”,借助手机拍照功能完成证件照的拍摄和背景更换,特别是如何将照片尺寸调整为168像素宽和240像素高&am…

Kafka生产者如何提高吞吐量?

1、batch.size:批次大小,默认16k 2、linger.ms:等待时间,修改为5-100ms 3、compression.type:压缩snappy 4、 RecordAccumulator:缓冲区大小,修改为64m 测试代码: package com.bigd…

【开源免费】基于SpringBoot+Vue.JS水果购物网站(JAVA毕业设计)

博主说明:本文项目编号 T 065 ,文末自助获取源码 \color{red}{T065,文末自助获取源码} T065,文末自助获取源码 目录 一、系统介绍二、演示录屏三、启动教程四、功能截图五、文案资料5.1 选题背景5.2 国内外研究现状5.3 可行性分析…

OAK相机:纯视觉SLAM在夜晚的应用

哈喽,OAK的朋友们,大家好啊,今天这个视频主要想分享一下袁博士团队用我们的OAK相机产出的新成果 在去年过山车SLAM的演示中,袁博士团队就展示了纯视觉SLAM在完全黑暗的环境中的极高鲁棒性。 现在袁博士团队进一步挖掘了纯视觉的潜…

Linux下通过sqlplus连Oracle提示字符是乱码▒▒▒[

先参考https://www.cnblogs.com/wrencai/articles/4374451.html 理解下Oracle编码字符集的概念 如下图,刚开始连上是软吗▒▒▒[ 执行export NLS_LANGJAPANESE_JAPAN.AL32UTF8 (这个仅在当前会话起作用)如果好了,说明字符集是这个,不行在尝试别的字符集 如果要永久设置 vim …

多个NVR同时管理EasyNVR多品牌NVR管理工具/设备:IP常见问题解决方案

随着视频监控技术的不断发展,NVR(网络视频录像机)已经成为现代安防系统的重要组成部分。而为了更高效地管理多个品牌的NVR设备,EasyNVR这一多品牌NVR管理工具应运而生。然而,在实际使用过程中,尤其是在多个…

【C++】C++的单例模式、跟踪内存分配的简单方法

二十四、C的单例模式、跟踪内存分配的简单方法 1、C的单例模式 本小标题不是讨论C的语言特性,而是一种设计模式,用于确保一个类在任何情况下都只有一个实例,并提供一个全局访问点来获取这个实例。即C的单例模式。这种模式常用于资源管理&…

掌握鸿蒙生态的崛起之机:开发者的挑战与机遇

掌握鸿蒙生态的崛起之机:开发者的挑战与机遇 引言 在智能设备领域,鸿蒙系统(HarmonyOS)正迅速崛起,与安卓、iOS形成三足鼎立之势。作为一名开发者,如何抓住这一机遇,解决开发中的挑战&#xf…

任务中心全新升级,新增分享接口文档功能,MeterSphere开源持续测试工具v3.4版本发布

2024年11月5日,MeterSphere开源持续测试工具正式发布v3.4版本。 在这一版本中,系统设置方面,任务中心支持实时查看系统即时任务与系统后台任务;接口测试方面,新增接口文档分享功能、接口场景导入导出功能,…

Python毕业设计选题:基于django+vue的荣誉证书管理系统

开发语言:Python框架:djangoPython版本:python3.7.7数据库:mysql 5.7数据库工具:Navicat11开发软件:PyCharm 系统展示 管理员登录 管理员功能界面 学生管理 教师管理 证书分类管理 荣誉证书管理 菜单列表…

Ubuntu下如何管理多个ssh密钥

Ubuntu下如何管理多个ssh密钥 前言 ‍ 我一直在逃避这个问题,误以为我能够单纯地用一个 ssh 走天下。 好吧,现实是我不得不管理多个 ssh 做,那就写个博客总结一下吧。 查阅后发现前人已经总结了不少,那我就结合之后&#xff…

Pr 视频过渡:沉浸式视频

效果面板/视频过渡/沉浸式视频 Video Transitions/Immersive Video Adobe Premiere Pro 的视频过渡效果中,沉浸式视频 Immersive Video效果组主要用于 VR 视频剪辑之间的过渡。 自动 VR 属性 Auto VR Properties是所有 VR 视频过渡效果的通用选项。 默认勾选&#x…

mongoDB的安装及使用

mongodb的安装可参考:Centos系统中mongodb的安装详解_centos安装mongodb-CSDN博客 不要下载最新的版本,新的版本中mongo命令无法使用,也就是安装后不能通过mongo命令登录,我这里使用5.0.30版本; mongodb安装成功后通过…

SDL事件相关

文章目录 事件相关的函数和数据结构用户自定义事件代码相关: 事件相关的函数和数据结构 SDL_WaitEvent :等待一个事件SDL_PushEvent 发送一个事件SDL_PumpEvents(): 将硬件设备产生的时间放入事件队列 ,用于读取事件,在调用该函数之前&#…