《A Survey on Multimodal Large Language Models》阅读笔记
MLLM前也有许多多模态研究,分为判别和生成两种方向。
判别的代表是OpenAI CLIP,尝试对齐图片文本对的编码,从而将视觉和文本信息投影到统一的表达空间;生成的代表是OFA,将多模态任务统一为Seq2Seq模式。
MLLM可以类比生成方向,但同时也有两个特点:1. MLLM基于Billion级别的LLM,这是先前成果所达不到的;2. MLLM使用新的训练范式来释放其能力,如多模态指令微调。这两点使得它能够拥有各种全新的能力。
现有的MLLM成果关注基于文本、图片、音频、视频输出文本的工作。更进一步的工作包括:1. 在更细的粒度上获取信息,如通过图片框或者点击物品来控制输入信息;2. 支持更多的输入输出模态;3. 更多的语言支持,如中文;4. 扩展到更多的应用场景;如应用于其他学科、引入可视化组件和现实感知模块
Architecture
典型的MLLM系统由三部分组成:预训练模态编码器(视觉、听觉)、预训练LLM(大脑)、连接两者的模态接口(对齐不同模态的组件);此外也有一些系统配备了输出其他模态的生成器。
模态编码器
将图片、视频、音频压缩成更紧凑的表示,通常选择采用现成的预训练编码器。
- CLIP:使用庞大的图像-文本对数据集进行训练;使用图片编码器(ResNet或ViT,ViT更优)将图片编码,文本编码器(GPT)对文本进行编码;采用对比损失函数,使得匹配的图片-文本对在多模态空间中距离更近,不相关的距离更远
- EVA-CLIP:CLIP的优化版;采用EVA模型初始化CLIP;引入LAMB优化器;通过FLIP方法mask掉50%的图片块;
- OpenCLIP-ConvNext-L:将图片编码器换成ConvNext,以适应更大的分辨率,获取不同层面的特征。
- Fuyu-8B:直接将图片块线性投射到Transformer的第一层,将图片块视作与文本Token相似的输入,并加入换行标记,从而可以处理任何分辨率的图像,且推理高效
决定编码器性能的三个要素:分辨率、参数量和训练数据量。现有的研究表明高分辨率对编码器性能提升巨大,现有的提高方法有以下两种:
- 直接提高分辨率,采用使用高分辨率训练(Qwen-VL)或替换高分辨率编码器(LLaVA)的方法。
CogAgent:划分高分辨率编码器和低分辨率编码器,高分辨率图像通过交叉注意力注入低分辨率分支; - 分块方法:将高分辨率图片分割成小图片块,获取局部信息,而原图片压缩成小图片后获取全局信息(MonkeySPHINX)
参数量和训练数据则不太重要。
此外编码器也可以应用于其他模态:
- CLAP:音频编码
类似CLIP,CLAP将音频与文本投影到相同的编码空间。 - Image-Bind:支持文本、图片、视频、音频、热力图、深度图
将图片与其他所有模态进行对齐,即对齐:论文发现即使只对图片对齐,其他的模态也能在向量空间中对齐
预训练大模型
通常采用现成的大模型作为MLLM的LLM部分,大多数模型都遵循GPT3的自回归范式
- Flan-T5:早期的MLLM常用(BLIP-2、InstructBLIP)
- LLaMA:开源,科研领域常用
- Qwen:中文支持
提高LLM的参数量与上文提到的图像分辨率一样有较大的作用。研究表明,LLM从7B扩大到13B会带来全方面的性能提升,提升到34B时,模型即便只在英文数据下训练也会涌现出零样本中文能力,同样的能力涌现也发生在模型扩大到35B、60B、70B的情况。
此外,也有工作将小型的MLLM部署在移动设备,如MobileVLM(MobileLLaMA 1.4B/2.7B),让模型在移动设备上高效推理: - 对LLaMA进行缩放,缩小到小参数
- vision encoder后加入一个lightweight dowmsample projector,通过两个下采样操作将 下采样到
也有利用MoE(Uni-MoE)的研究,MoE相比dense modal能达到更好的效果。
模态接口
由于LLM只能输入文本嵌入,重新训练LLM来适应多模态非常costly,因此有必要引入一个connector来连接编码器和LLM,也可以用专家模型,将图片翻译成文本。
不是已经对齐了吗?还需要这个做什么?
因为有的编码器没做对齐(如ConvNext)
可学习连接器:将其他模态的嵌入投影到LLM能够理解的空间里。可以分为token级别和feature级别两种。
- token级别:编码器输出的编码转换成token与文本token拼接后进入LLM。一种常见的方法是设置一系列可学习的Queries,从编码中提取出信息,如BLIP-2。
BLIP-2:若干注意力块堆叠作为connector,与文本编码进行对比学习
另一种方法是直接使用MLP进行投影,如LLaVA采用1~2层的MLP层进行对齐
基于MM1的研究,connector的类型远没有token量和分辨率来得重要,token级的连接器在VQA表现上会比feature级好。交叉注意力的方法可能需要更复杂的超参调整方法来达到较好的表现。 - feature级别:加入额外模块,实现文本和视觉特征的深度融合。
Flamingo在冻结的Transformer层间加入额外的交叉注意力层来引入视觉特征(即KV为视觉、Q为文本),从而增强文本特征。
CogVLM也在每层中加入视觉专家模块来对齐图文特征,但是采用concat的方法,且QKV参数由LLM初始化
LLaMA-Adapter引入可学习prompt到Transformer层中,在前k层Transformer层中将原始LLaMA的特征信息与额外的自适应模块输出的信息进行concat。训练时,原始LLaMA参数冻结,Adapter用零向量初始化并学习更新参数。此外还引入门控机制,学习调整视觉信息的重要程度。
这些connector的参数量通常比LLM和encoder小得多,如Qwen-VL中的Q-Former只有0.08B参数
专家模型:例如使用专用的图片字幕模型,基本思路是在不需要训练的情况下将多模态输入转换为文本输入,LLM就能知道图片里的信息。 - VideoChat-Text使用视觉模型来提取文本中的各类信息(如YOLO、I3D、Scene Graph Generators等),并用语音识别模型(Whisper)丰富信息。
专家模型比较直接,但是不像可学习接口一样灵活,例如生成的文本会在时空信息上产生缺失
训练策略和数据
MLLM的训练分成三个部分:预训练、指令微调和对齐微调,每个部分都有不同的数据和目标。
预训练
预训练的主要目标是对齐各种模态,从多模态空间中学习信息。预训练过程通常需要大量文本对数据,如描述数据。这些描述数据使用自然语言描述各种模态的信息。
预训练的一种通常场景:给出图片,模型自回归的输出对应描述,然后利用交叉熵损失进行权重更新。通常的训练方法是冻结预训练部分(编码器和LLM),训练一个可学习接口,这种方法基于不损失LLM知识的思想。也有研究尝试更新其他模块的参数,如编码器,使得可更新的参数变多,更加对齐。
训练效果与训练数据质量息息相关。对于较短且噪声较多的描述,使用低分辨率图片能加快训练速度;对于较长且较清楚的描述,使用高分辨率图片能够消除幻觉现象。ShareGPT4V也发现,对于高质量数据,在预训练时更新视觉编码器能够达到更好的对齐效果。
数据
Pretraining Data Purposes:
- Aligning Different Modalities: Ensuring the model can process and integrate various types of data such as images, text, and audio.
- Providing World Knowledge: Supplying the model with a broad understanding of real-world information.
Data Granularities:
- Coarse-Grained Data:
- Characteristics: Large volume, sourced from the internet, often short and noisy.
- Examples:
- CC-3M: Contains 3.3M image-caption pairs with raw descriptions derived from alt-text.
- CC-12M: An extension of CC-3M with 12.4M pairs, using a simplified data collection process.
- SBU Captions: 1M image-text pairs sourced from Flickr, filtered for relevance and quality.
- LAION Series:
- LAION-5B: 5.85B image-text pairs, multilingual with a significant English subset.
- LAION-COCO: 600M images with synthetic captions generated using BLIP and filtered by CLIP. - COYO-700M: 747M pairs from CommonCrawl, filtered for quality and content appropriateness.
- Fine-Grained Data:
-
Characteristics: Higher quality, detailed descriptions, using LLM, typically smaller volume.
-
Examples:
- ShareGPT4V-PT: 1.2M pairs generated using GPT-4V.
- GPT-4V provide 700K to train a caption modal and use it to generate 1.2M pairs
- LVIS-Instruct4V: 111K pairs with detailed instructions and annotations.
- ALLaVA: 709K pairs focusing on aligning image and text modalities precisely.
-
Data Quality:
- Cleaning and Filtering: Essential for improving model performance and alignment. Methods include using models like CLIP for filtering out low-quality pairs based on similarity thresholds.
- Resolution Adjustments: Depending on the data quality, lower resolutions can be used for noisy data to speed up training, while higher resolutions are preferred for cleaner data to avoid hallucinations.
This detailed breakdown covers the primary goals and characteristics of the pretraining data used to train multimodal large language models (MLLMs) as outlined in the section
视频-文本:MSR-VTT(2016),InternVideo(2022)
音频-文本:WavCaps
指令微调
指令即任务描述,指令微调旨在让模型更好地理解和完成指令任务,使得LLM能够完成此前不可见的任务,提升0样本性能。有监督微调需要大量数据,且只能完成特定任务;提示工程能提升少样本性能,但0样本性能提升有限;相比之下,指令微调可以使模型完成没有见过的任务,且于多任务提示工程高度相关。
训练细节
多模态指令通常包含一个可选的文本指令和图片-文本对,文本指令通常描述任务,输入可以是图文对(VQA问题),或者单独的图片(图片描述任务),输出为该条件下的回答。指令模版是灵活的,取决于手工设计,也可以通过多轮对话提供指令。
一个多模态指令可以定义为以下三元组,I表示指令,M表示模态输入,R表示基于以上的回答,MLLM通过给定的指令和模态输入预测答案,即:
A为预测答案,为MLLM的参数。训练目标通常是LLM的自回归训练目标,在此基础上,MLLM训练预测下一个token,训练目标即:
N表示序列长度
数据选择
指令数据的灵活性决定了和任务的多样性使其数据更难收集,有三种方法:数据适应、自指导和数据混合。
- 数据适应:特定任务的数据集有非常丰富且高质量的数据,因此有研究将各类数据集融合,构建出一个用于指令微调的数据集。例如VQA数据集中通常由图文输入和文本输出构成,这种结构能够自然地转换为多模态指令微调数据。有些工作手作一些候选指令,在微调时采样其中一条;也有的工作设计了一些指令然后提示GPT生成更多的指令。
现有的VQA和图像描述数据集通常很简单,因此直接用来进行微调可能会影响MLLM的输出长度,有两种方法解决这个问题:1. 直接在指令中指出,如ChatBridge直接用short and brief来表示短回答数据,sentence或single sentence表示粗粒度数据;2. 延长现有回答的长度,如M3IT用ChatGPT重新生成答案。 - 自指导:现有的数据库无法满足现实对话场景的各种需求,例如多轮对话。为了解决这个问题,有研究从自指导中获取样本,即利用LLM通过少量手工标注的样本生成文本指令数据。具体而言,就是人类手工编写一些指令示范,然后在示范下,GPT之类的模型再生成更多指令。LLaVA则更进一步,将图片转换为包含信息和图片框的文本,并在指令和示范的指导下,让仅限文本的GPT-4生成新数据,按照这种方法生产的数据集为 LLaVA-Instruct-150k。后续的如Mini-GPT4、Chat-Bridge、GPT4Tools、DetGPT也采用这种方法生成不同需求的数据集。随着GPT-4V的发布,更多的工作采用这个模型生成高质量数据,如LVIS-Instruct4V、ALLaVA
- 数据混合:除了多模态指令数据,纯文本的问答对话也可以用于提升对话专业性和指令遵循能力。如LaVIN直接从纯文本和多模态数据中进行采样,MultiInstruct则探索了两种数据的不同训练策略:混合两种数据微调,或先采用文本数据再采用多模态数据。
数据质量
近期的研究发现数据质量与数据数量同等重要。Lynx的研究发现采用大量噪声较多的数据微调并不比采用噪声较少的小数据训练效果好;Wei的研究发现较少的高质量指令微调数据可以使模型达到更好的效果,提出了评估数据质量的方法和对应的过滤策略:
- 提示多样性:Lynx证明了提示词的多样性能够提升模型表现和泛化能力
- 任务覆盖程度:Du的研究发现视觉推理任务相比描述图像和VQA任务能更好的提高模型表现,此外,这项研究也发现增强指令的复杂度,相比增加任务多样性和加入细粒度图片描述,更有益。
对齐微调
对齐微调更多地用于模型对齐特定人类需求的场景,例如更少的幻觉现象。现有的方法包括基于人类反馈的强化学习(RLHF)和直接偏好优化(DPO)。
训练细节
RLHF:利用强化学习算法让LLM对齐人类需求,通过在训练循环中加入人类监督。以InstructGPT举例,RLHF分为以下三个部分:
- 有监督微调:这一步旨在微调一个预训练模型,以使其输出期望结果,这个微调好的模型被称作policy model。当然也可以直接使用预训练模型,跳过这一步骤。
- 奖励建模:这一步使用偏好对训练一个奖励模型。给定模态数据x和回复对,奖励模型,给期望回复yw更高的分数,yl则相反,奖励模型与上面的policy model结构相似,训练目标如下:_
- 强化学习:Proximal Policy Optimization算法用于优化强化学习策略模型,每个token的KL散度惩罚被加入学习目标中,防止策略过于偏离原始策略:
有研究利用RLHF来达到更好的多模态对齐水平。LLaVA-RLHF基于LLaVA模型,搜集了人类偏好数据来微调模型,从而达到更少的幻觉。
DPO: 利用简单的二元分类损失从人类偏好的标注中学习。与RLHF不同的是,DPO不需要学习一个显式的奖励模型,所以学习步骤可以简化成两部分:1. 人类偏好数据收集;2. 偏好学习。
RLHF-V搜集细粒度的偏好信息来减少模型反馈中的幻觉信息,使用获取的信息来进行密集的DPO;Silkie则通过提示学习从GPT4-V中搜集信息,通过DPO方式将偏好监督信息蒸馏到指令微调模型中。
数据
通常对模型回应搜集反馈,如决定哪个回答更好,这些数据集往往比之前的更小。
- LLaVA-RLHF:10k人类生产的偏好数据,关注诚实性和帮助性,通常用于减少幻觉现象;
- RLHF-V:7.5k细粒度人类反馈数据,文本段级别的幻觉纠正;
- VLFeedback:380K比较对,用GPT-4V生成,关注帮助性、可信度和道德。
评估
相比较传统的多模态方法,MLLM的应用领域很广泛,同时展现出一些全新的能力,因此需要专门设计新的评估方法。
封闭式
指回答选项在一个给定的限制范围内,通常基于特定任务的数据集。
评估可以设置为零样本任务或者微调任务。零样本任务将广泛任务的数据集分为训练和测试,模型训练完之后在测试集上测试不存在的数据和任务;微调则针对特定任务训练。一般有采用Science QA、biomedical VQA、CIDEr Score等。
以上模型都缺乏广泛的多模态能力测试,所以现在也有针对MLLM设计的测试任务:
- MME:14项感知和认知任务,手工制作的指令-回答对
- MMBench:专门测试多维度模型能力,利用GPT将回复与选项对应
- Video-ChatGPT / Video-Bench:专注视频领域
- 专注特定领域能力的测试:如POPE(幻觉)
开放式
MLLM作为问答机器人,这类评估方法比较难评估。
常见的方法有手工评分、GPT评分和案例评估
- 手工:引入手造数据,人工评估特定领域能力。如mPLUG-Owl测试视觉能力,包括自然图像理解、图表、流程图理解;GPT4Tools测试零样本和微调能力,包括思想、行动、论点和整体能力
- GPT:使用GPT代替人类,通常测试多模态对话能力。如LLaVA从COCO验证集采样30张图,利用GPT4生成一个短问题、一个长问题和一个复杂的推理问题,GPT4和模型结果使用GPT4进行比较;这种范式被应用在许多测试方法中,采用ChatGPT或GPT4输出结果或比较。
- GPT4方法的问题在于只能根据文本输出结果,所以也有使用GPT4V的方法,如Woodpecker利用GPT4V评估性能
- 案例:在不同的应用场景下评估模型能力。
扩展
提升MLLM的能力,引入更强大的能力和更广泛的用途。
-
粒度支持:为了达到更好地交互,MLLM在输入和输出粒度上不断细化。
输入端,图片从整张图到区域,甚至到像素级输入。例如Shikra、Gpt4roi、Pink支持区域输入,用户可以采用自然语言形式的边界框表示特定区域,从而更灵活地与助手进行交互。Osprey、Glamm、Ferret支持像素级输入,Ferret通过设计一种混合表示方案(点、框,自由区域),支持更灵活的引用;Osprey通过利用分割模型支持点输入,由于分割模型的强大能力,Ospery可以通过单击的方法特定一个实体或者部分。Ferret方法:选取区域作为masked points过一个sampling,然后KNN对相邻点进行特征融合,最后KNN进行max pooling
输出部分,对齐能力随着输入能力的发展而提升。如Shikra支持基于图片框选标记的回答,这导致更高的精度和更精细的推理能力;LISA支持掩码级理解和推理,使得像素级对齐成为可能
-
模态支持:包括输入和输出模态。
输入:3D点云
输出:图片、音频、视频(很多时候采用Diffusion Model)
如NExT-GPT提出一个支持多模态输入输出的框架,利用Diffusion model作为decoder,整个框架是encoder-decoder结构,LLM作为理解和推理中枢 -
语言支持:非英语数据集缺乏导致语言支持少,所以现在的工作致力于开发新语言。VisCPM设计多步训练策略来将模型能力迁移到多语言领域,具体的,模型将英文作为中枢语言,利用多语言LLM,通过在指令微调部分引入翻译过的样本,将多模态能力迁移到中文。Qwen-VL在预训练过程中将中文数据融入训练数据集中,占22.7%
-
场景/任务扩展:考虑实际条件的特定场景或扩展到具有特定专长的下游任务。
一个趋势是适应更特定的现实生活的场景。MobileVLM缩小模型参数量,使得能在计算资源紧张的情况下运行。有些设计和技术被应用于移动设备部署,如模型压缩、量化技术等。其他工作开发了agents来与现实世界交互,如特别设计的GUI(CogAgent、AppAgent、Mobile-Agent),这些模型擅长通过一步步引导和规划来完成用户给定的任务,做到更好地人机交互。
另一个趋势是将MLLM对齐特定任务,用于不同领域的问题,如文档理解、医药领域等。文档理解有mPLUG-DocOwl,利用不同形式的文档级数据进行微调,从而完成无需OCR的文档理解。TextMonkey引入文档理解的多种任务来提升任务表现。除了传统的文档图像和场景文本外,还增加了位置相关的任务以减少幻觉,帮助模型学会根据视觉信息作出反应。MLLM还可以用于医药领域,通过也引入对应知识。如LLaVA-Med基于LLaVA引入医药知识,开发了医药图片理解和QA的模型。
幻觉
MLLM的幻觉指MLLM的输出与参考图片不一致的现象。
现有的研究可以分为一下三个方向:
- 存在幻觉:指MLLM指出了图片中不存在的物品
- 属性幻觉:指MLLM描述的物品属性出错,例如颜色。属性幻觉基于对于图片物品的识别,往往与存在幻觉相关
- 关系幻觉:指MLLM对物品间的关系描述出错,例如两个物品的相对位置。这是个比较复杂的幻觉,往往与存在幻觉有关。
评估方法:
- CHAIR:在开放字幕中评估幻觉现象,评估文本中出现的错误物品或所有物品中的错误物品量
- POPE:闭集评估方法,多个提示询问某个物品是否存在。还包含更多挑战性问题,评估模型的数据分析能力。最终结果检测句子中的是否字样,将开放回答转换为封闭回答。
- MME:更详细的评估,询问物品的存在、数量、位置、颜色等信息。
- HaELM:通过text-only LLM评估MLLM回答和参考答案的差异
- Woodpecker:使用GPT-4V,基于图片评估回答
- Faith-Score:将句子分解后分别评估,粒度更细
- AMBER:无需LLM的方法,包含辨识任务和生成任务,评估三种幻觉
优化方法:
- 预纠正:预先搜集特定的负面数据用于微调。
LRV-Insturction添加了不同语义级别的负面数据用于鼓励模型输出可信信息。
LLaVA-RLHF搜集人类偏好的图文对,利用强化学习方法微调,达到与人类偏好对齐的效果 - 过程内纠正:研究幻觉产生的原因并提出对应的解决方法。一般采用特别设计的结构或语义表示。
HallE-Switch研究了存在幻觉出现的原因,猜想视觉encoder没有提取出对应物品,基于LLM的知识回答是存在幻觉的原因,因此论文提出了一系列的控制方法和对应的训练策略来控制LLM的想象程度。
VCD发现,数据集偏差和LLM中已经学习到的语言规律和模式会导致存在幻觉,当图片中的噪声较多时,MLLM倾向于依赖语言的先验知识而不是图片内容,导致幻觉。因此论文设计了一个对比机制,对比原始输入和扭曲输入来对抗LVLM的统计偏差和语言先验,惩罚函数:。为了防止惩罚函数对整个模型的知识造成影响,论文实施一种自适应的可信度约束,根据输出分布筛选较靠前的几个选项
HACL研究了文本和语言的嵌入空间,将匹配的跨模态表示拉近,无幻觉和幻觉文本表示被拉远。 - 后纠正:修改输出内容
WoodPecker结合专家模型来补充图像的上下文信息,并设计一个pipeline来纠正幻觉,每步的中间结果都可检查,对象在图像中都是有依据的。
LURE训练了一个专用的检查器来掩盖描述中高度不确定的对象并重新生成回答。
扩展技术
多模态ICL
ICL的好处:1. 只需要通过少量样本、可选的指引和外推的新问题进行学习,就能够模型对应样本,解决复杂的问题和未见任务;2. 不需要专门训练,可以灵活引入不同架构。一个应用场景就是指令微调。
多模态ICL(MICL)可以通过引入原始样本的上下文样本集合实现。
ICL能力的发展
- MIMIC-IT:通过多模态上下文格式化的指令数据,将上下文学习和指令微调相结合,在字幕任务中提升了少样本表现。
- Emu:基于Flamingo,在生成和对应的训练语料中引入额外模块,例如Stable Diffusion,从而学习额外的视觉监督信息,支持更灵活的输出格式。
- Sheng et al:不用专门的图像编码器,而是采用共享嵌入层的统一量化方案。
也有在特定设置下提升few-shot学习能力的研究: - Link-context learning专注加强图像-标签之间的因果关系,指定积极和消极的数据对形成对比训练策略;
- MMICL关注多相关图片的推理能力,将交错的图文数据转换到统一格式来加强图文联系;
- Jeong通过过滤较不相关的上下文,促进连贯的回答。
应用
两个场景:
- 解决多样的视觉推理任务。通常是提供一些特定任务的样例给模型学习,模型泛化到一些新的相似问题上。LLM从样例中学习任务是什么和输出格式是什么,最终生成给定结果。
- 教LLM使用外部工具。通常涉及更细粒度的信息,由一连串可按顺序执行的步骤组成,以完成任务,这类任务与CoT密切相关。
多模态CoT
指引导LLM一步步思考,回答推理过程,最终输出答案。
学习范例
- 微调方法:通常涉及精心设计的数据集
ScienceQA:科学相关的QA数据库,包含讲座和讲解,可用于CoT推理学习和模型微调。
Multimodal-CoT:使用ScienceQA,引导模型进行两步输出(推理过程和结果)
CoT-PT:通过提示调整和特定步骤的视觉偏差的结合学习隐式推理链。 - few/zero-shot:更高效
few shot需要手造数据给模型参考。
zero shot单纯依靠嵌入的知识和推理能力,通过“Let’s think frame by frame”、“What happened between these two keyframes”之类的引导让模型思考。
一些工作(Mm-react、visual chatgpt)用任务描述和外部工具的使用来引导模型将任务分解。
推理链设置
两个方面:结构和长度。
结构方面,单链的方法通过一步步推理得到问题-推理过程-答案的链条;树形链条(如DDCoT)将问题分解成多个子问题,每个由LLM或者视觉专家模型来生成推理过程,LLM再利用推理过程求出答案。
长度方面,可以分为自适应长度(mm-react、Learn to explain、chameleon、visual programming、visual chatgpt)和预定义长度(Caption anything、Visual chain of thought、Let’s Think Frame by Frame)。
生成格式
- 填空式(Visual chain of thought、VideoCOT)
- 预测式(mm-react、chameleon)
LLM辅助视觉推理
引入外部工具或视觉模型来辅助视觉推理任务,将LLM作为具有不同作用的助手,构建特定任务或通用任务的视觉推理系统。
相比现有的视觉推理模型,这些方法能够有强大的泛化能力,涌现能力和更好的交互和控制能力。
学习范例
- 无需训练的方法:直接prompt LLM,利用原有知识完成任务。
few-shot:手造数据来引导LLM生成程序或一系列执行步骤,用于外加模型和模块
zero-shot:直接利用LLM知识和能力prompt LLM(PointCLIP V2、CAT) - 微调:微调方法提升LLM的工具使用能力(GPT4Tools),利用工具相关的数据集
功能
- LLM控制器:与CoT相关,系统在一轮内完成任务
将复杂任务分解为简单的子任务,将子任务分配给合适的模块。前一步通常需要LLM的CoT能力。LLM通过提示词输出任务计划或直接调用模块工作(VisProg),此外还需要输出模块输入的参数名。这需要手造的上下文样例作为参考,与优化推理链(least-to-most提示)技术有关。 - LLM决策器:与CoT相关,系统在多轮内完成任务
总结当前的上下文和历史信息,决定当前步骤下的可用信息是否足够回答问题或完成任务,然后规划和总结答案。 - LLM语义提炼器:LLM将信息整合成连贯流畅的自然语言句子,或根据不同要求生成文本
挑战和未来方向
- MLLM在长上下文方面受限,这限制了需要更多多模态token的模型能力(长视频、长文档)
- MLLM需要理解更复杂的指令,如当前生成QA数据的主要方法仍然是利用GPT4V,其他模型表现较差
- MICL和MCoT能力仍有待提高
- 利用MLLM开发具身智能体
- 安全议题,防止MLLM被引导生成具有偏差、不可信的数据