专栏名称: AI生成未来
AIGC最新技术及资讯
目录
相关文章推荐
新浪科技  ·  【#交个朋友称用DeepSeek1天卖3.3 ... ·  2 天前  
新浪科技  ·  【#OpenAI发布CoT监控阻止大模型恶意 ... ·  2 天前  
爱范儿  ·  iPad Air M3 首发评测:一个典型 ... ·  3 天前  
51好读  ›  专栏  ›  AI生成未来

MiniCPM-V技术报告详细翻译解读: 端侧GPT-4V级别多模态大语言模型

AI生成未来  · 公众号  · 科技媒体  · 2024-08-10 00:02

主要观点总结

本文介绍了MiniCPM-V系列模型,这是一项在智能手机上运行的、性能匹敌GPT-4V的多模态大型语言模型(MLLM)的突破性研究。该模型通过一系列技术和优化,包括自适应视觉编码、多语言泛化和RLAIF-V方法,在参数数量大大减少的情况下实现了与GPT-4V相当的性能。通过端侧优化技术,该模型确保了手机上的可接受用户体验。MiniCPM-V的推出表明,在不久的将来,端侧设备上部署的GPT-4V级别的MLLM将成为可能,开启更广泛的应用场景和利益。

关键观点总结

关键观点1: MiniCPM-V模型的突破

MiniCPM-V成功开发了一款能在智能手机上运行的、性能匹敌GPT-4V的多模态大型语言模型(MLLM)。

关键观点2: 模型的技术和优化

该模型通过自适应视觉编码、多语言泛化和RLAIF-V方法等技术,实现了与GPT-4V相当的性能,同时减少了参数数量。

关键观点3: 端侧优化技术

通过端侧优化技术,如量化、内存优化、编译优化和NPU加速,确保了模型在手机上的可接受用户体验。

关键观点4: 未来展望

MiniCPM-V的推出表明,在不久的将来,端侧设备上部署的GPT-4V级别的MLLM将成为可能,开启更广泛的应用场景和利益。


正文

点击下方 卡片 ,关注“ AI生成未来


最近多模态大语言模型(MLLM)的激增从根本上重塑了AI研究和产业的格局,为通往下一个AI里程碑的道路指明了有希望的方向。 然而,要使MLLM在现实世界的应用中变得实用,仍然存在重大挑战。 最明显的挑战来自于运行具有大量参数和广泛计算需求的MLLM的巨大成本。 结果,大多数MLLM只能部署在高性能的云服务器上,这大大限制了它们的应用范围,如移动设备、离线、能耗敏感和注重隐私/保护的场景。 在这项工作中,我们介绍了MiniCPM-V,一系列可在端侧设备上部署的高效MLLM。 通过整合最新的MLLM技术在架构、预训练和对齐方面,最新的MiniCPM-Llama3-V 2.5具有几个显著特点:(1)强大的性能,在OpenCompass上超过了GPT-4V-1106、Gemini Pro和Claude 3,OpenCompass是一个涵盖11个流行基准的全面评估,(2)强大的OCR能力,支持1.8M像素的高分辨率图像感知,在任何纵横比下,(3)可信行为,低幻觉率,(4)支持30多种语言的多语言,(5)在手机上高效部署。 更重要的是,MiniCPM-V可以被视为一个有希望的趋势的代表(图1):实现可用(例如,GPT-4V)级别性能的模型大小正在迅速减小,同时端侧计算能力也在快速增长。 这共同表明,部署在端设备上的GPT-4V级别的MLLM很快就会实现,在不久的将来开启更广泛的应用场景和利益。

我们翻译解读最新论文:端侧GPT-4V级别多模态大语言模型,文末有论文链接。


作者: 张长旺,图源: 旺知识

图1:MLLM发展的摩尔定律?MLLM发展的趋势,以时间(x轴)、模型大小(y轴)和性能(颜色)为度量。 红线显示了实现GPT-4V级别性能的模型大小在快速减小,而蓝线代表了端侧计算能力的增长。 这共同表明,部署在端设备上的GPT-4V级别的MLLM变得越来越可行,在不久的将来将开启更广泛的现实世界AI应用领域。

1 - 引言

多模态大型语言模型(MLLM)[83,2,68,62,102,23,7,41,52,76,11]的快速发展带来了在理解、推理和交互方面的多模态能力的令人印象深刻的激增。这不仅从根本上重塑了AI研究和产业的格局,而且还为通往下一个AI里程碑的道路指明了有希望的方向。然而,当前的MLLM在现实世界的应用中还远远不够实用。最突出的挑战之一是,当前的MLLM通常涉及大量的参数,并带来沉重的计算负担。结果,大多数MLLM只能部署在高性能的云服务器上,导致显著的能源消耗和碳排放。这一限制大大制约了潜在的应用范围,如移动设备、能耗敏感场景、没有稳定网络连接的离线场景,以及对个人和工业用户都具有隐私/安全保护意识的场景。

鉴于这些限制,人们越来越有兴趣探索更高效的轻量级MLLM[1,68,83,11],它们可以在端侧设备上运行。端侧场景涵盖了更广泛的设备范围,包括手机、个人电脑、车辆和机器人等,它们在用户的日常生活中无处不在,并且计算能力正在快速发展。由于其更广泛的使用范围、更好的计算效率、更强大的离线行为和更好的隐私/安全保护,端侧MLLM为更实用的应用提供了有希望的解决方案。

然而,开发有能力的端侧MLLM具有挑战性,因为参数和推理计算预算受到显著限制。结果,需要更精心的架构设计和训练方案,以充分发挥端侧MLLM的潜力。在这项工作中,我们介绍了MiniCPM-V,一系列可在端侧设备上部署的高效MLLM。MiniCPM-V的理念是在性能和效率之间实现良好的平衡,这在现实世界的应用中是一个更重要的目标。到目前为止,在2024年,我们已经推出了三个模型:(1)在2月,我们推出了MiniCPM-V 1.0 2B,这是为手机设计的第一批MLLM之一。(2)在4月,我们推出了MiniCPM-V 2.0 2B,在性能上超过了Qwen-VL 9B[7]、CogVLM 17B[102]和Yi-VL 34B[108]等大型MLLM。这个版本还引入了对高分辨率图像输入的支持,并展示了有希望的OCR能力。(3)最近在5月,我们发布了MiniCPM-Llama3-V 2.5 8B,在OpenCompass评估中超过了强大的GPT-4V-1106、Gemini Pro和Claude 3。这个模型的值得注意的特点包括强大的OCR能力、高分辨率图像感知、可信行为、多语言支持和高效的端侧部署优化。

更重要的是,MiniCPM-V可以被视为一个有希望的趋势的代表。图1总结了最近的MLLM发展[1,68,57]在性能、参数和发布时间方面的情况。我们观察到一个有趣的趋势,类似于摩尔定律[103]所指示的红线:达到GPT-4V级别性能的模型大小正在迅速减小。这种现象或许可以被称为MLLM的摩尔定律。与此同时,端侧设备(如手机和个人电脑)的计算能力正在稳步增长(由蓝线定性描述)。这两种趋势的汇聚表明,部署在端侧设备上的可用的(例如,GPT-4V级别)MLLM很快就要实现了,这将在不久的将来开启更广泛的可能性,并使更多的应用场景受益。

从人类技术发展的历史上看,这一趋势也可以被视为人类对尖端技术小型化的追求,这在其他科学和技术领域也一再被见证。例如,在航天领域,最新的SpaceX Raptor 2火箭引擎的质量为1.6吨,可以产生高达2256千牛的推力,而20年前,RD-0750火箭引擎的质量超过4吨,只能产生1413千牛的推力[104]。

MiniCPM-V系列技术。在本文中,我们将以最新的MiniCPM-Llama3-V 2.5为例,系统地介绍MiniCPM-V系列的显著特点和背后的关键技术:

•领先的性能。 MiniCPM-Llama3-V 2.5在OpenCompass集合上的性能优于GPT-4V1106、Gemini Pro和Claude 3,这是一个涵盖11个流行基准的全面评估。这得益于其在架构、数据和训练方案方面的精心设计,我们将在以下部分详细介绍。

•强大的OCR能力。 MiniCPM-Llama3-V 2.5在OCRBench上胜过GPT-4V、Gemini Pro和QwenVL-Max。它还支持高实用性功能,如表格转Markdown转换和完整的OCR内容转录。这在很大程度上归功于1.8M像素高分辨率(例如1344×1344)图像感知技术,适用于任何纵横比[107]。

•可信行为。 基于RLAIF-V[112]和RLHF-V[111]技术,通过AI/人类反馈使MLLM行为与期望对齐,MiniCPM-Llama3-V 2.5展现出更可信的行为,在Object HalBench上比GPT-4V-1106实现了更低的幻觉率。

•多语言支持。 受到VisCPM[41]的发现的启发,多语言LLM的整合大大减轻了低资源语言对多模态训练数据的严重依赖。在这一基础上,高质量的多语言多模态指令调整帮助MiniCPM-Llama3-V 2.5将其多模态能力泛化到30多种语言。

•高效的端侧部署。 我们系统地整合了一系列端侧优化技术,包括量化、内存优化、编译优化和NPU加速,实现了在端侧设备的高效部署。

我们希望MiniCPM-V系列能够作为揭示端侧MLLM潜力的典范,并帮助吸引更多的关注,以推动这一研究方向的发展。遵循MLLM的摩尔定律,我们相信将会出现越来越强大的端侧MLLM,其规模更小,很快就能在设备上带来高效、安全、可信的AI服务。

这项工作的贡献总结如下:(1)我们介绍并开源了MiniCPMV,这是一系列在性能和效率之间实现良好平衡的高效端侧MLLM。(2)我们研究了推动MLLM实现大规模性能-效率平衡的关键技术,揭示了这些技术的潜力。(3)我们总结了MLLM发展的摩尔定律趋势,并通过MiniCPM-V的代表性例子实证了这一趋势。

2 - 相关工作

多模态大型语言模型。LLM的发展显著推进了MLLM的进展。Flamingo[4]首次提出将预训练的视觉编码器与Chinchilla 70B[40] LLM连接起来,展示了MLLM在一系列视觉语言任务中的零样本和少样本能力。在ChatGPT出现之后,包括BLIP-2[54]、Kosmos-1[43]、MiniGPT-4[121]、LLaVA[62]和VPGTrans[117]在内的许多开源模型被提出。其中大多数是建立在现有的预训练LLM如Llama[100]和Vicuna[120]的基础上,而Kosmos-1则试图从头开始训练LLM。后来,研究人员继续扩展MLLM的功能范围,提高视觉感知能力。Kosmos-2[80]、CogVLM[102]、Shikra[20]和NExT-Chat[116]进一步将本地化能力整合到MLLM中,无论是通过pix2seq范式还是与检测/分割模型连接。Qwen-VL-Chat[7]、Yi-VL[108]、DeepSeek-VL[68]、InternVL[23]和Intern-XComposer[31]更注重通过高分辨率输入、更多的训练数据和更好的数据比例等不同技术来提高模型的能力。

图2:MiniCPM-Llama3-V 2.5在图像中阅读文本、将表格转换为markdown、执行复杂推理和多语言交互等方面的定性结果。 请参阅MiniCPM-Llama3-V 2.5在手机上运行的屏幕录像。

图3:模型架构。 (a)整体结构展示了包括视觉编码器、共享压缩层和LLM在内的模型架构。 (b)自适应视觉编码处理各种纵横比的高分辨率输入。

端侧多模态大型语言模型。MLLM的大量参数在训练和部署中带来了极高的计算成本,极大地限制了其广泛的应用。最近,有一种趋势是构建参数更少的小型LLM。代表性的模型包括Phi[45]、Gemma[8]、MobileLLM[66]、MiniCPM[42]等。这些模型的适中大小使它们适用于端侧设备,如个人电脑甚至手机。通过优化的训练策略,像MiniCPM 2B这样的端侧LLM可以实现与像Llama2-7B[101]这样的7B强模型相当的性能。在MLLM中也观察到了类似的趋势。例如,Mini-Gemini[57]和PaliGemma[11]是基于Gemma 2B[8]构建的,而MobileVLM V2是基于MobileLlama[25]构建的。然而,端侧MLLM的较少参数特性为构建一个有能力的模型带来了显著的挑战。MiniCPM-V系列旨在通过在架构、训练、推理和部署中进行精心设计,解决关键瓶颈问题,推动端侧MLLM的潜力。

3 - 模型架构

在这一部分中,我们介绍了MiniCPM-V的模型架构,概述了整体结构和自适应高分辨率视觉编码方法。MiniCPM-V系列的设计哲学是在性能和效率之间实现良好的平衡,这是一个更实际的目标,适用于更广泛的现实世界应用场景,这在架构设计、训练、推理和部署中得到了实现。

3.1 - 整体结构

该模型由三个关键模块组成:视觉编码器、压缩层和LLM。输入图像首先由视觉编码器编码,采用自适应视觉编码方法。具体来说,我们使用SigLIP SoViT-400m/14[115]作为视觉编码器。然后,视觉标记通过压缩层进行压缩,压缩层采用具有一层交叉注意力的感知器重采样器结构。最后,压缩后的视觉标记与文本输入一起输入LLM进行条件文本生成。

3.2 - 自适应视觉编码

最近,人们越来越认同视觉编码在MLLM性能[76,68]中的基本作用,尤其是对于OCR等细粒度能力。为了有效性,一个好的视觉编码策略应该同时尊重输入的原始纵横比并保留足够的视觉细节(高分辨率)。为了效率,图像编码产生的视觉标记数量应该是适中的,以便在端侧设备上是可承受的。为此,我们采用了LLaVA-UHD[107]提出的一种自适应视觉编码方法。

图像分割。 为了处理具有不同纵横比的高分辨率图像,我们将图像分割成切片,每个切片更好地匹配ViT的预训练设置的分辨率和纵横比。具体来说,我们首先根据输入图像的大小计算理想切片数。给定一个分辨率为(WI,HI)的图像,和一个在分辨率为(Wv,Hv)的图像上预训练的ViT,我们计算理想切片数N = ⌈WI×HI / (Wv×Hv)⌉。然后,我们从集合CN = {(m, n)|m × n = N, m ∈ N, n ∈ N}中选择行数n和列数m的组合。一个好的分割(m, n)应该产生与ViT的预训练设置很好地匹配的切片。为了实现这一点,我们使用一个评分函数来评估每种可能的分割: S(m, n) = −∑(log(WI/m) + log(HI/n) − log(Wv/Hv))。

我们从所有可能的候选中选择得分最高的分割:m*, n* = arg max(m,n)∈C̄ S(m, n)

其中C̄是可能的(m, n)组合的集合,其乘积为N。然而,当N是质数时,可行的解决方案可能限于(N, 1)和(1, N)。因此,我们额外引入了CN−1和CN+1,并将C̄设置为CN−1 ∪ CN ∪ CN+1。在实践中,我们设置N < 10,在编码期间最多支持180万像素(例如1344 × 1344分辨率)。尽管我们可以为更高的分辨率包含更多的图像切片,但我们故意将分辨率上界设置得较低,因为这已经很好地覆盖了大多数现实世界的应用场景,并且考虑到性能和开销,进一步提高编码分辨率的好处是边缘的。

切片编码。 尽管图像分割可以确保切片与ViT的预训练设置很好地匹配,但每个切片的大小并不精确地等于(Wv, Hv)。为了将切片输入到ViT,我们首先通过按比例调整每个切片来调整它,以便结果的面积大小与ViT预训练的面积大小Wv × Hv匹配。这种调整有助于防止编码补丁的数量与ViT的预训练设置之间存在显著差距。随后,我们插值ViT的位置嵌入以适应切片的比率。这涉及将ViT的1D嵌入P1 ∈ RQ×l重新塑造为其2D格式P2 ∈ Rq×q×l,其中位置嵌入的数量Q = q × q。然后,我们通过2D插值将P2插值以适应每个切片的大小。我们还包括原始图像作为额外的切片,以提供关于整个图像的整体信息。

标记压缩。 经过视觉编码后,每个切片被编码成1024个标记,10个切片总共可以产生超过10k个标记。为了管理这种高标记数量,我们采用了一个压缩模块,包括一层交叉注意力和适度数量的查询,2D位置信息已知[7]。在实践中,每个切片的视觉标记通过这一层被压缩成64个查询用于MiniCPM V1-2,96个标记用于MiniCPM-Llama3-V 2.5。与其他具有竞争力性能的MLLM相比,MiniCPM-V系列中显著较少的视觉标记数量使其在GPU内存消耗、推理速度、首标记延迟和功耗方面具有更高的效率,使其更适合更广泛的应用范围和社区。

空间模式。为了指示每个切片相对于整个图像的位置,受到[9]的启发,我们额外引入了一个空间模式。我们首先用两个特殊标记 和包装每个切片的标记,然后使用特殊标记"\n"来分隔来自不同行的切片。


4 - 训练

模型训练包括三个阶段:预训练阶段、监督微调阶段和RLAIF-V阶段。我们将在以下部分介绍训练方案。

4.1 - 预训练

在这个阶段,我们使用大规模的图像-文本对进行MLLM预训练。这个阶段的主要目标是将视觉模块(即视觉编码器和压缩层)与LLM的输入空间对齐,并学习基础的多模态知识。预训练阶段进一步分为三个阶段。

阶段1。 阶段1的作用是预热压缩层,主要连接视觉编码器和LLM。(1)可训练模块。在阶段1,我们随机初始化压缩层,并训练这个模块,同时保持其他参数冻结。视觉编码器的分辨率设置为224×224,与视觉编码器的预训练设置相同。(2)数据。为了预热压缩层,我们从表1中的图像字幕数据中随机选择200M数据。进行数据清洗,以去除相关性差和格式不良的文本数据的图像-文本对,确保数据质量。

表1:预训练数据。 预训练数据包括英文和中文的图像字幕和OCR数据。 LAION-2B-OCR是通过将OCR工具应用于LAION-2B图像生成的。

阶段2。 在压缩层的预热训练之后,阶段2的作用是扩展预训练视觉编码器的输入分辨率。(1)可训练模块。在阶段2,我们将图像分辨率从224×224扩展到448×448。整个视觉编码器都被训练,而其他参数保持冻结。(2)数据。为了扩展预训练分辨率,我们另外从表1中的图像字幕数据中选择200M数据。

阶段3。 在扩展视觉编码器的主要输入分辨率之后,我们最后使用自适应视觉编码策略训练视觉模块,这可以进一步适应具有任何纵横比的高分辨率输入。(1)可训练模块。在阶段3训练期间,压缩层和视觉编码器都被训练以适应语言模型的嵌入空间。LLM被保持冻结,以避免相对低质量的预训练数据的干扰。(2)数据。与之前阶段只使用图像字幕数据不同,在高分辨率预训练阶段,我们另外引入OCR数据来增强视觉编码器的OCR能力。

字幕重写。 来自Web [86,15]的图像-文本对可能存在字幕数据质量问题,包括不流畅的内容、语法错误和重复单词。这种低质量的数据可能导致不稳定的训练动态。为了解决这个问题,我们引入了一个辅助模型来重写低质量的字幕。重写模型以原始字幕为输入,并被要求将其转换为问答对。从这个过程中得到的答案被用作更新后的字幕。在实践中,我们利用GPT-4 [14]来注释少量种子样本,然后使用这些样本来微调LLM进行重写任务。

数据打包。 来自不同数据源的样本通常具有不同的长度。跨批次的样本长度高度变化将导致内存使用效率低下和内存不足(OOM)错误的风险。为了解决这个问题,我们将多个样本打包成一个固定长度的序列。通过截断序列中的最后一个样本,我们确保了序列长度的一致性,有助于更一致的内存消耗和计算效率。同时,我们修改了位置ID和注意力掩码,以避免不同样本之间的干扰。在我们的实验中,数据打包策略可以使预训练阶段的速度提高2到3倍。

表2:MiniCPM-V系列的SFT数据。 Part-1和Part-2数据在SFT阶段顺序连接。 Part-1专注于增强基本识别能力,而Part-2旨在提高生成详细响应和遵循人类指令的高级能力。

多语言泛化。 跨多种语言的多模态能力对于服务更广泛社区的用户至关重要。传统的解决方案涉及广泛的多模态数据收集和清洗,以及针对目标语言的训练。幸运的是,VisCPM [41]的最新发现表明,通过强大的多语言LLM枢纽,可以高效地跨语言泛化多模态能力。这个解决方案在很大程度上减轻了对低资源语言中多模态数据的严重依赖。在实践中,我们只对英语和中文多模态数据进行预训练,然后进行轻量级但高质量的多语言监督微调,以与目标语言对齐。尽管这种方法很简单,但我们发现MiniCPMLlama3-V 2.5在30多种语言上的表现与明显更大的MLLM相当。

4.2 - 监督微调

在从预训练中学习基础能力后,我们在高质量的视觉问题回答数据集上执行监督微调(SFT),以从人类注释中进一步学习知识和交互能力。

可训练模块。 与主要使用来自Web的爬取数据的预训练阶段不同,SFT阶段主要使用由人类标注者或像GPT-4这样的强模型注释的高质量数据集。因此,我们解锁了所有模型参数,以更好地利用数据,在SFT阶段学习丰富的知识。

数据。 最近的工作[42,83]表明,训练结束时的数据在塑造模型的能力和响应风格方面起着更重要的作用。我们将SFT数据分为两部分。Part-1专注于增强模型的基本识别能力,而Part-2旨在提高它们在生成详细响应和遵循人类指令方面的高级能力。具体来说,Part-1数据包括相对简短的响应长度的传统QA/字幕数据集,这有助于增强模型的基本识别能力。相比之下,Part-2包括在文本或多模态上下文中具有复杂交互的长响应的数据集。在SFT期间,这两部分数据被连接并顺序输入到模型中。对于MiniCPM-Llama3-V 2.5,我们整合了最近Cauldron数据集[52]的200万数据进行多模态知识增强,以及36种语言的9万多语言数据以增强多语言对话能力。


4.3 - RLAIF-V

MLLM通常容易出现幻觉问题,生成与输入图像事实不符的响应[111]。这个问题极大地限制了MLLM的广泛应用,尤其是在高风险场景中,如自动驾驶和为视力受损群体提供帮助。为了解决幻觉问题,我们采用了最近的RLAIF-V [112]方法(图4),其中关键是从开源模型获得可扩展的高质量反馈,以进行直接偏好优化(DPO)[82]。

响应生成。 RLAIF-V的第一步是使用策略模型为给定指令生成多个响应。具体来说,给定一个等待对齐的模型M,我们使用高温度的采样解码从M中采样10个响应Y = {y1, y2, · · · , yn}。使用策略模型M进行响应生成有几个好处:(1)反馈收集和学习可以更好地关注可信度,因为避免了来自多个MLLM的不同文本风格。(2)反馈学习更加高效,因为偏好是直接在策略模型的分布上收集的。

反馈收集。 从开源MLLM收集高质量反馈可能是一项挑战,因为它们通常比专有模型具有较弱的能力。为了解决这个问题,RLAIF-V使用分而治之的策略进行响应评分。具体来说,每个响应yi被Llama-3 8B划分为原子声明Ci = {c1, c2, · · · , cm},其中原子声明的正确性更容易评估。然后,我们通过将每个声明转换为是非问题,并使用开源MLLM对每个声明进行评分来验证声明。在实践中,我们采用OmniLMM 12B对MiniCPM-V 2.0进行评分,采用LLaVA-NeXT-Yi 34B对MiniCPM-Llama3-V 2.5进行评分。响应yi的最终得分si由−nrej给出,其中nrej是无效原子声明的数量。







请到「今天看啥」查看全文