我干过一件蠢事:同时跑一个 7B 和一个 70B 的多模态模型做 OCR,前者推理成本只有后者的十分之一,可准确率只差了 0.8 个百分点。换一个数据集,更离谱——7B 直接反超。我第一反应是“跑错模型了”,确认没有之后,我开始怀疑一条铁律:参数量越大,模型一定越聪明。

这条铁律在纯文本 LLM 里大体成立,但多模态模型偏偏打了个大折扣。要搞清为什么,得先拆开一个多模态模型,看看它的参数都花在了哪里。
一个典型的多模态模型由三部分组成:视觉编码器、投影层、LLM。下表是一个常见配置:
| 组件 | 参数量 | 训练状态 |
|---|---|---|
| 视觉编码器 (ViT-L) | ~3 亿 | 冻结 |
| 投影层 (MLP) | ~1 亿 | 训练 |
| LLM | 7B ~ 70B | 微调或全参训练 |
- 视觉编码器
- 把图像转成特征向量,决定模型“看到”什么。
- 投影层
- 把视觉特征映射到 LLM 的词嵌入空间,是两种模态的“翻译官”。
- LLM
- 负责语言理解、推理和生成,是模型的“大脑”。
注意一个反直觉的细节:大多数开源多模态模型在训练时冻结视觉编码器。原因很简单:CLIP 这样的视觉编码器是在几亿图文对上学出来的,再从头训练一个不划算。冻结它,就可以直接借用它的通用视觉特征。但这也意味着,视觉感知上限在训练开始前就被锁死了。
所以,当你给 7B 和 70B 用同一个视觉编码器时,两者“看”到的画面特征完全一样。LLM 只能在同样的特征上做推理。如果任务只需要“看到了什么”,比如 OCR、物体识别、图表读数,那 70B 的推理优势根本使不出来。
视觉编码器冻结带来的问题,还体现在长尾视觉能力上。CLIP 学到的更多是“图片和描述的相关性”,而不是细粒度的视觉识别。遇到模糊车牌、小物体、密集文字,CLIP 给出的特征往往含糊不清。你把这样的特征喂给 70B,它也只能在含糊的信息上瞎猜。信息丢失发生在入口处,后面堆再多的参数都找不回来。
有人可能会问:既然瓶颈在视觉编码器,那换一个更大的视觉编码器就行吗?对,但也没那么简单。更大的视觉编码器意味着更强的视觉特征,同时也要更多的数据来对齐。而且,如果编码器和 LLM 之间的投影层设计不好,视觉特征就算再丰富,LLM 也解读不了。这就是为什么同样用 ViT-L,有些模型的视觉理解远超另外一些——差异在对齐训练的质量。
这不是推测。OpenCompass 的多模态评测榜单上,你能找到一大堆 7B 模型在 OCR、文档理解等感知密集科目上追平甚至超过 70B 模型的例子。OpenCompass 的数据是公开的,你可以按科目排序自己查。
那为什么大家都说大模型强?因为官方评测往往用综合分数,而综合分数里推理任务占了很大比重。大模型在推理上确实有优势,把综合分拉高了。但如果把感知和推理分开看,小模型在大模型怀里狠狠踢了一脚。
这里还有一个隐藏因素:训练数据的规模。Chinchilla 论文告诉我们,模型参数量和训练数据量必须同步增长,才能保证性能按预期提升。
在计算最优训练条件下,模型规模和数据规模应等比例增加;如果只扩大参数量而数据量不变,模型会欠拟合。
这条结论来自 Training Compute-Optimal Large Language Models。
但很多开源团队训练多模态模型时,用的还是“同一套数据,跑 7B 和 70B”。数据量对 7B 来说刚好,对 70B 来说严重不足。结果 70B 还没把数据学透,训练就结束了。这种情况下,70B 的实际能力甚至可能低于充分训练的 7B。这也是为什么有些 Benchmark 上小模型反超大模型的常见原因。
即便数据量足够,参数量和性能也不是线性的。Scaling law 说的是幂律关系:模型参数翻十倍,loss 只会下降一个零头。在多模态微调这种数据规模很小的场景下,这种边际收益进一步缩小,因为模型很快就拟合了可见的图文对,没机会发挥深层的世界知识。
我个人的血泪教训:我把 LLaVA-1.5 从 7B 换成 13B,训练数据、超参数全不变,结果准确率只上涨了约 1%。一开始我怀疑是视觉编码器瓶颈,后来翻论文才发现,LLaVA 官方也是用更大数据训练的 13B,不是简单替换。论文里的对比实验同样显示,7B 和 13B 的差距远小于纯文本模型同规模差距。LLaVA: Visual Instruction Tuning 的实验部分值得一读。
所以,回到标题:70B 一定比 7B 好吗?我的回答是:分任务。
- 感知型任务(OCR、图表识别、物体检测):不一定。视觉编码器决定性能上限,70B 的优势发挥不了。
- 推理型任务(看图写代码、医疗诊断、多步逻辑问题):70B 大概率更好。这部分需要世界知识和推理链,参数量是实打实的优势。
另外还有一个趋势值得注意:为了让小模型也能具备强视觉感知,研究者开始解冻视觉编码器或换更大的编码器,比如 InternVL、Qwen-VL 都做了可训练的视觉部分。这说明什么?提升视觉能力的正确杠杆在视觉编码器,而不是在 LLM 参数上盲目加码。
那 70B 完全没用吗?
当然不是。在需要跨模态推理、少样本学习、复杂指令遵循的场景,70B 的优势非常明显。只是它的优势集中在“语言和知识”那一侧,而不是“视觉感知”那一侧。你要做医疗影像报告生成,它需要把图像中的异常区域和医学知识对应起来,这时大模型能减少荒谬错误;但如果你只是做一个 OCR 工具,选 70B 就是浪费。
那选模型时到底该看什么?
我的建议是三步走:
- 先定位你的任务属于感知型还是推理型,或者各占多少。
- 打开 OpenCompass 或 LMArena 的细分榜单,找到任务对应的科目。
- 按科目排名选模型,而不是按参数量选。排名靠前的小模型如果训练充分,往往比大模型更划算。
最后说句掏心窝的话:我最早也迷信“越大越好”,直到在真实项目里对比了准确率和账单,才意识到自己被“参数量崇拜”骗了很久。多模态模型的性能不是单一参数决定的,而是一场参数、数据、对齐三者之间的博弈。想清楚这一点,你选模型时就能少交很多学费。
原创文章,作者:guanweilu,如若转载,请注明出处:https://guanweilu.cn/article/471.html