多模态大模型轻量化探索-开源SmolVLM模型架构、数据策略及其衍生物PDF解析模型SmolDocling

在《多模态大模型轻量化探索-视觉大模型SAM的视觉编码器》介绍到,缩小视觉编码器的尺寸,能够有效的降低多模态大模型的参数量。再来看一个整体的工作,从视觉侧和语言模型侧综合考量模型参数量的平衡模式,进一步降低参数量,甚至最小达256M参数量,推理时显存占用<1GB。下面来看看,仅供参考。

模型架构

那么,如何设计一个高效的小型多模态模型架构?

Q1: 如何在视觉和语言模型之间分配计算?

传统大型VLMs(如Flamingo)将90%以上参数分配给语言模型(LM),但SmolVLM发现:小规模LM需重新平衡视觉与语言的计算资源。

研究方法:将三种不同规模的SmolLM2变体(135M、360M和1.7B参数)与两种SigLIP编码器(一个紧凑的93M SigLIP-B/16和一个较大的428M SigLIP-SO400M)进行配对。

发现:通常情况下,较大的VLM会不均衡地将参数分配给语言模型,但在小型模型中,这种分配方式不再适用。当使用大型编码器与最小的LM(135M)时,性能显著下降,表明这种配置效率低下。在中等规模的LM(360M)中,较大的编码器可以提高性能,但会增加66%的参数。只有在最大的LM(1.7B)中,较大的编码器仅增加10%的参数。

结论 :紧凑的多模态模型受益于平衡的编码器-LM参数分配,使得较小的视觉编码器在效率上更具优势。即:模型越小,视觉编码器应更轻量,避免"头重脚轻"。当使用具有最小LM(135M)的大编码器时,性能显著下降,突显了编码器-LM平衡效率低下。在中等LM规模(360M)时,较大的编码器将性能提高了11.6%,但这也伴随着参数增加了66%,使得紧凑型编码器更可取。只有在最大的LM规模(1.7B)时,较大的编码器仅代表参数增加了10%。

Q2: 如何有效地将图像传递给语言模型?

如何支持长上下文与对视觉token进行压缩?为了提高模型的上下文处理能力,采用了自注意力架构,其中视觉Token与文本token连接,并由语言模型共同处理。这种方法需要比SmolLM2的2ktoken限制更多的上下文。

研究方法:通过增加RoPE基数从10k到273k来扩展上下文容量,并在长上下文数据(如Dolma书籍和The Stack)和短上下文数据(如FineWeb-Edu、DCLM和SmolLM2的数学数据)上进行微调。

发现:扩展上下文窗口对紧凑VLM有显著的好处。对于1.7B的LM,微调在16ktoken时表现稳定,但对于较小的模型(135M和360M),在超过8k token时表现不佳。因此,研究者们为SmolVLM采用了16k token的上下文,并为较小的变体设定了8k token的限制。

像素重排:重新排列编码图像,以增加通道深度为代价换取空间分辨率。这减少了视觉标记数量,同时保持信息密度。


原理:将2×2空间区域重组为通道维度(上图),token数减少4倍(r=2时)。

对比基线:InternVL等使用r=2,但SmolVLM证明小模型需更激进压缩。

结论:小型VLM显著受益于扩展的上下文长度。

Q3: 如何有效地编码图像和视频?

在多模态建模中,平衡图像和视频之间的token分配至关重要。图像通常需要更高的分辨率和更多的token来保持质量,而视频则需要更少的token来高效处理长序列。

研究方法:采用了一种图像分割策略,灵感来自UReader和SPHINX,将高分辨率图像分割成多个子图像,并保留原始图像的缩小版本。这种方法在不增加过多计算开销的情况下保持了图像质量。

视频处理:对于视频,研究者们发现帧平均策略会负面影响性能(下图)。因此,选择不采用帧平均策略,而是将视频帧重新缩放到图像编码器的分辨率。

结论:对于小型模型,图像分割增强了视觉任务的表现,而视频帧平均则不适用。

数据策略

数据配比:最终训练集含14%文本、33%视频、53%图像

性能

衍生模型-端到端的PDF解析多模态模型SmolDocling

模型结构:就是SmolVLM

训练数据(该模型核心):训练数据构造上,引入了一种新的文档标记格式DocTags,用于标准化文档转换,这个是核心意义。DocTags定义了一个明确的标签和规则集,以分离文本内容和文档结构,从而提高图像到序列模型的性能,如下图:

对应的语法

从上面类XML标签语法看来,感觉设计的非常冗余。整体上结合模型架构也没什么特殊的创新点,并且,之前被自媒体吹得性能很强,实际上,该模型还是demo玩具。个人使用后观点。

参考文献:SmolVLM: Redefining small and efficient multimodal models,https://arxiv.org/pdf/2504.05299

开源地址:https://github.com/huggingface/smollm

相关推荐
大鱼>4 天前
大语言模型+物联网:LLM理解物理世界
物联网·struts·语言模型·多模态·aiot
虎妞05007 天前
多模态大模型应用指南:从 GPT-4V 到开源方案
ai·多模态·视觉·gpt-4v·llava
汤姆yu7 天前
云知声 U2 原生智能体大模型深度解析
大数据·人工智能·算法·ai·大模型·多模态·智能体
kishu_iOS&AI8 天前
LLM —— 多模态(文本、图片、音频、视频)
人工智能·语音识别·多模态
troubles maker9 天前
LLaMA-Adapter V2: Parameter-Efficient Visual Instruction Model
llm·nlp·llama·多模态
君为先-bey11 天前
UniVidX——基于扩散先验的统一多模态视频生成框架
计算机视觉·多模态·扩散模型·视频生成
HyperAI超神经12 天前
深度估计准确率冲上0.9,Meta提出VLM³,论证视觉模型天生会学3D,以Qwen3-VL-4B为基础实现多任务的统一建模
人工智能·3d·大模型·多模态·空间推理·3d感知·3d理解
余俊晖13 天前
多模态文档解析后处理开源模型:MinerU-Popo方案思路提升RAG性能
人工智能·ocr·多模态
汤姆yu17 天前
原生一体化多模态大模型技术研究
ai·大模型·多模态·智能体