跳到主要内容

把它做大会先撞上什么 — 参数、分辨率、语言三道坎(InternVL)

这一章讲三件事: 开源的图文模型追不上闭源,差距具体在哪三处; 一个 60 亿参数的视觉编码器怎么和一个语言模型对齐(分三个阶段,每阶段冻住的部件都不一样); 以及一张长条形的文档截图,怎么被喂进模型还不把它撑爆。 它在全书链条里的位置是「把它做大」这条支线的第一篇—— 第 04 章那十四堵墙里,它正面处理了「闭源黑箱」「序列太长」「数据噪声」三堵。 这一章立起来的「冻住一部分、只训另一部分」,是后面十几章的共同动作。

1. 顶层全景:一张长条截图的一生

本章的主走查: 一张 800×1300 的中文文档截图 + 一个问题「这张单据的金额是多少?」

800×1300 的截图
│ ① 从 35 种预设长宽比里挑一个最接近的 → 选中 2×3

缩放到 896×1344
│ ② 切成 6 块 448×448,另加一张整图缩略图 → 一共 7 块

每块过 InternViT-6B(45 层)
│ ③ 每块出 32×32 = 1024 个视觉 token
│ ④ 压缩:宽高各减半 → 每块 16×16 = 256 个

7 × 256 = 1792 个视觉 token
│ ⑤ 过一层 MLP,变成语言模型认得的形状

语言模型(InternLM2-20B)接着往下写答案


在文档问答这项上得 90.9 分(同期 GPT-4V 是 88.4)

图说:**这条链上的数只有 ③ ④ 两步是我们算的**(448÷14=32,压缩后减半得 16),
其余全是书里的:35 种长宽比、800×1300→896×1344、6 块 448、90.9、88.4。
第 3 到第 8 节把这条链上的每一步拆开讲。

这条链上有一个零件现在就得立住:第 ⑤ 步那个 MLP。 它是最基础的一种小网络:把一串数乘一张数表、得到新的一串数,再过一次 「把负数压成 0」这类简单变换,这么叠上几层就成了—— 它的名字叫多层感知机,写出来永远是 MLP 这三个字母。

它在这里只干一件事: 视觉那半边吐出来的一串数,长度和格式跟语言模型认得的对不上; MLP 负责把它换成对得上的形状,像一个转接头。 后面几章凡是说「中间那层」「接口那一层」「投影层」,指的都是它—— 第 19 章那两个提分辨率的小网络也是同一种东西。

2. 先看现象:差距不是「感觉差一点」,是三处点得出名字的地方

这篇论文的开篇不谈方法,先算账。 它把开源模型和闭源商业模型的差距落到三处1:

#差在哪闭源那边开源那边
参数规模通常不少于 1000 亿常见配置是 3 亿参数的视觉模型 + 70 亿或 130 亿的语言模型
图像分辨率动态分辨率,保持原图的长宽比固定分辨率,钉死在 336×336 或 448×448
语言用大量多语言数据训主要靠英文数据,别的语言全靠语言模型自己的零样本能力

第 ① 处还有一个更隐蔽的问题:视觉那半边和语言那半边「说话对不上」。 书里说,那些只在纯视觉数据上训、或者和早一代语言模型对齐过的视觉模型, 和今天的大语言模型之间存在表示上的不一致,结果是语言模型的能力没被用上1

第 ③ 处的后果很具体: 非英语场景下的场景理解和文字识别(把图片里的字读出来, 这件事的通称是 OCR)表现明显更差1

这三条就是本章后面全部动作的清单。 一条一条对着处理: ① 视觉那半边加到 60 亿(第 3 节),② 动态切块(第 6 节),③ 拿多语言的语言模型当文本编码器(第 3 节)。

3. 第一步:把视觉那半边加到 60 亿,然后发现文本那半边配不上了

做法:一个 60 亿参数的 ViT

他们用普通的 ViT 结构做了一个 60 亿参数的视觉编码器,叫 InternViT-6B2

怎么定它的形状?靠试。 他们把深度在 {32, 48, 64, 80} 里试、 每个注意力头的维度在 {64, 128} 里试、内部那层放大倍数在 {4, 8} 里试, 在一亿张图的子集上比精度、速度和稳定性。结论有点扫兴:

参数量相同时,深度、头维度、放大倍数对效果几乎没有影响。 速度上,计算没吃满时浅的更快,一旦把卡吃满,差别就可以忽略2

所以最后是按「稳定」选的,不是按「更强」选的。 照实写在这儿。

于是问题变成:文本那半边配什么?

视觉这边 60 亿了,原来 CLIP 那种从零训的小文本编码器就配不上了。

他们的做法很直接:拿一个已经训好的多语言语言模型(LLaMA-7B)来当文本那半边。 书里给它起了个名字叫语言中间件——因为它在不同阶段扮演不同角色: 对比训练时它是「文本编码器」,生成任务里它就是「解码器」,负责根据用户的问题往下写3

这一步顺带解决了第 ③ 条差距:多语言能力是这个语言模型自带的。

4. 一个大胆的假设:换更大的语言模型,不必从头再来

这一节讲的是本章最值钱的一个判断,而它是个假设,不是定理。

先看问题

第 3 节拿 LLaMA-7B 对齐好了。可后来出了更强的 200 亿模型,想换。 难道要把 60 亿的视觉编码器和它重新对齐一遍?那等于重训。

他们赌的那件事

书里的原话是:尽管各家语言模型的设计不同,它们都是在全网收集的文本语料上训出来的, 这让它们的表示空间具有同质性;所以视觉编码器只需要和其中一个对齐过, 之后换成另一个,只要少量数据做增量预训练或者监督微调就够4

判断(我们的,不是书里的): 这是全章风险最高的一句话,而书里没有为它做任何对照实验—— 没有「换一个语言模型,重新对齐 vs 增量对齐」的比较。 它的证据是间接的:最终模型表现好,所以这个假设至少没坏事如果错,会错在: 如果两个语言模型的训练语料差别很大(比如一个几乎全英文、一个中英混合), 「同质」可能就不成立,那时省下来的对齐成本会以效果下降的形式还回去。

5. 三阶段渐进对齐:每一阶段冻住谁,是这一章的骨架

这一节是全章骨架,也是「冻住」这个词在本书里第一次真正承重的地方。

先把这个词立起来: 「冻住」某个部件,意思是训练时不许改它内部的那些数—— 修正信号照样穿过它传给前面的部件(这个信号的正式名字叫梯度: 它指的是「每个数该往哪个方向挪一点,才能让错误变小」),但它自己一个数都不变为什么要这么做? 因为改动一个已经训好的东西 既贵又危险(第 04 章第 ⑦ 堵讲过:数据少的时候,改得越多越容易把它改坏)。

书里把训练分成三个阶段,从「在脏数据上做对比」逐步走向「在干净数据上做生成」5:

阶段数据目标谁在训、谁冻住
一、图文对比网爬的、有噪声的 49.8 亿对对比(第 03 章那种「在一批里认领自己那条」)全都在训:视觉编码器随机初始化从零开始,语言模型用预训练权重开始
二、增量预训练更干净、加了检测与大量 OCR 数据生成(看图往下写)语言模型冻住,只训视觉编码器和中间那层 MLP
三、监督微调十一类任务的高质量数据 + 纯文本生成全参数微调

三个动作值得单独记住:

  1. 第一阶段扔掉了原来那个 LLaMA。 第二阶段直接换成更大的语言模型接上—— 这正是第 4 节那个假设在起作用;
  2. 第二阶段是唯一引入动态高分辨率的阶段(下一节讲),训练时最多 12 块;
  3. 第三阶段掺进了纯文本数据,书里说明理由:为了保住语言模型原有的语言能力6—— 否则一路只喂图文数据,它会把「怎么好好说话」这件事忘掉一部分。

6. 动态高分辨率:不是把图放大,是按形状切块

先看问题:固定分辨率对长条形的图很不友好

一张 800×1300 的截图,如果硬缩成 448×448,长宽比被压扁,上面的小字直接糊掉。

做法:先挑长宽比,再切块,外加一张缩略图

书里的做法分两步7:

第一步,挑一个最接近的长宽比。 他们预先枚举了 1 到 12 块能拼出的 全部 35 种长宽比组合(1:1、1:2、2:1、3:1……2:6),拿输入图的长宽比去比,挑差得最小的那个。 还有一条防呆规则:如果有多个都匹配(比如 1:1 和 2:2),优先选面积不超过原图两倍的那个, 免得把一张小图硬放大。

第二步,缩放、切块、加缩略图。

走查第 ① ② 步(书里的原例,连数字都一样):

800×1300 的图
→ 挑中 2×3 的切法(2 块宽 × 3 块高)
→ 缩放到 896×1344(正好 = 448×2 × 448×3)
→ 切成 6 块 448×448
→ 另加一张整图缩下来的 448×448 缩略图 ←── 这张是为了保住全局的样子
→ 一共 7 块

图说:缩略图这一块很关键——切碎之后每块只看得到局部,
**缩略图是唯一一块知道「整张单据长什么样」的。**

测试时可以放到 40 块(相当于 4K 分辨率),而训练时只用到 12 块—— 书里明说这是算力限制,不是设计选择7

7. 视觉 token 太多会把语言模型撑爆:1024 压成 256

这一节是第 04 章第 ② 堵墙(序列一长就贵)在真实系统里的样子。

先算一笔账

InternViT 把图切成 14 像素的块。一块 448×448 的图,就是 448÷14 = 32, 横竖各 32 块,一共 1024 个视觉 token。

7 块就是 7168 个 token。 这个长度对语言模型来说是灾难—— 第 04 章说过,注意力的开销随长度平方增长。

做法:把相邻的四个格并成一个

书里用的操作叫 pixel unshuffle,效果是把宽和高各降一半8:

走查第 ③ ④ 步:

每块 448×448
→ 32×32 = 1024 个视觉 token
→ 宽高各减半 → 16×16 = 256 个
→ 7 块合计 1792 个 token 交给语言模型

图说:**1024、32、16 这几个数是我们按「448÷14」和「减半」算出来的**,
书里给的是两个端点:训练时视觉 token 在 **256 到 3328** 之间,
测试时最多 40 块 = **10496** 个 token。
(核对一下:41 块 × 256 = 10496,和书里的数完全对上。)

为什么这笔账是「这类模型的核心矛盾」: 分辨率越高 → 块越多 → token 越多 → 语言模型越贵越慢。 「看得清」和「算得起」直接对冲,而这一节这个「压成四分之一」的动作, 就是他们在这条对冲线上选的位置。

8. 数据:六个条件筛掉 17.4%,还要防「泄题」

这一节是第 04 章第 ⑫ 堵墙(量大就意味着脏)的正面处理。

筛数据

第一阶段的原始数据是 60.3 亿对图文,清洗之后剩 49.8 亿(82.6%)9书里明说这一阶段「只做了最低限度的过滤」,大部分数据被保留了—— 换句话说,砍掉的 17.4% 只是极端值,不是精挑细选。

六个过滤条件是:

条件在筛什么
图文相似度图和配文根本对不上的
水印概率带水印的
不安全内容概率有害内容
美学分质量太差的图
图像分辨率太小看不清的
配文长度太短或太长的

防「泄题」:一个很容易被忽略的动作

他们还额外剔除了与 ImageNet、Flickr30K、COCO 重复的图片。

为什么: 这三个数据集是后面用来测「零样本」能力的考卷。 如果训练数据里混进了考卷上的图,那测出来的「零样本」就是假的—— 它其实见过。书里给的理由正是「确保零样本评测的可靠性」9

这个动作值得记住,因为它是「零样本」这个说法能不能当真的前提。 你以后读任何一篇报「零样本」成绩的论文,都可以问一句:去重了吗?

第二阶段的数据配比:OCR 占了四成

第二阶段的数据里,图注类占 53.9%,检测与定位占 5.2%, 大规模 OCR 数据占 32.0%,小规模专项 OCR 占 8.9%10—— 两项 OCR 加起来 40.9%,是仅次于图注的第二大类。

那些 OCR 数据是他们自己造的: 用一个开源的文字识别工具, 去中文图库和英文图库上批量识别,把结果当成训练数据10

这解释了为什么这个模型在文档问答上能反超闭源模型—— 它在这方面的训练数据比例是特意堆出来的。

9. 一个反直觉的小动作:砍掉最后 3 层

这一节很短,但它是全书「减法」主题的第一个实例。

书里说:他们发现从倒数第四层往前的特征在多模态任务上表现最好, 所以直接把最后 3 层的权重丢掉,让 InternViT-6B 从 48 层变成 45 层11

书里没有解释为什么最后几层反而不好用。 照实写在这儿。 (补充,不在书里,来自通用知识: 一个常见的解释是,最靠近输出端的那几层 已经为原来的训练目标高度特化了,对新任务反而不如中间层通用—— 但这只是一种流行说法,书里没有验证。)

10. 作者的判断与证据

书里给了证据的(挑最硬的四条):

说法证据
这个视觉编码器本身很强在千类图像分类上冻住主干、只训一个线性分类器(这种量法叫线性探测),得 88.2;对照的 ViT-22B 是 89.5,只高 1.3——但它有 217 亿参数(是这边的 3.7 倍),还用了不公开的私有数据集,而 InternViT 只有 59 亿、全用公开数据12
它的像素级感知也强同样冻住主干、只训一个线性层做分割,47.2 对 ViT-22B 的 34.612
多语言不是空话零样本分类:英文 83.2、中文 64.5;对照的多语言开源模型是 77.0 / 55.713
在文档与图表类任务上追上了闭源文档问答 90.9(GPT-4V 88.4)、图表问答 83.8(78.5)、文字问答 80.6(78.0)、数学题 53.5(49.9)14

书里自己承认没追上的地方:

  • 多轮对话仍然明显落后 GPT-4V。 书里的原话是「与其他开源模型相比表现很强, 但与 GPT-4V 相比仍有明显差距」15这一条很重要: 单项测评追上了,不等于对话体验追上了。

属于作者的推断:

  • 「不同语言模型的表示空间同质」——第 4 节讲过,这是假设,没有对照实验;
  • 「倒数第四层往前最好」——这是实测结论,但书里没有解释原因。

11. 边界与局限

① 这一章的所有结论都绑在「有几百张卡」这个前提上。 书里没有给完整的训练成本(第 06 章那篇给了:256 张卡 × 18 天), 但从三阶段的规模看,这不是一支八张卡的团队能复现的东西。 普通人从这一章能带走的是判断和取舍,不是可执行的方案。

② 动态分辨率不是白吃的午餐。 书里的消融显示, 它在 OCR 类任务上有用,但在图表理解和多学科问答上反而略降16。 书里没有深究原因。

「消融」这个词从这里开始会一直跟着你,先立住: 把自己方法里的某一个零件拆掉、别的一切都不动,再跑一遍,看分数掉多少—— 掉得多,说明那个零件真的在干活;掉不动甚至变好,说明它是摆设。 这里就是把「按形状切块」这一个动作关掉,其余照旧。 这种实验的全名叫消融实验,论文里几乎每篇都有一节,后面十几章会反复出现「消融表」这个说法。

③ 三个阶段的边界是经验划的。 为什么是三个阶段而不是两个或四个、 每个阶段该训多久,书里没有讨论,也没有做过对照。

④ 「六个过滤条件」各自的贡献不明。 书里列了是哪六个, 但没有说哪一个筛掉的最多、去掉哪一个会怎样。

12. 可带走的

  1. 差距要落到点得出名字的地方:参数规模、图像分辨率、语言覆盖—— 这篇论文的价值一半在于它先把问题拆成了这三条;
  2. 视觉那半边加大之后,文本那半边必须跟着换;他们的办法是直接拿一个现成的多语言语言模型来当;
  3. 「不同语言模型的表示空间同质」是个假设,靠它才敢中途换更大的语言模型, 而书里没有为它做对照实验;
  4. 三阶段渐进对齐:脏数据上做对比 → 冻住语言模型只训视觉侧 → 全参数微调;
  5. 「冻住」= 训练时不许改它内部那些数,这是后面十几章的共同动作;
  6. 第三阶段要掺纯文本数据,否则语言模型会把「好好说话」忘掉一部分;
  7. 动态分辨率 = 先从 35 种预设长宽比里挑一个,再切块,再加一张缩略图; 缩略图是唯一知道全局长什么样的那一块;
  8. 视觉 token 必须压:每块 1024 压成 256,7 块 1792——「看得清」和「算得起」直接对冲;
  9. 零样本成绩要问一句「去重了吗」:他们特意剔掉了和三个评测集重复的图,防止「泄题」;
  10. OCR 数据占了第二阶段的四成,这才是它文档问答反超闭源模型的直接原因;
  11. 砍掉最后 3 层反而更好用——全书「减法」主题的第一个实例,但书里没解释原因;
  12. 单项追上了不等于全面追上:同一个模型在多轮对话上仍明显落后。

13. 原文地图

主题原书章原文位置
三处差距:参数 / 分辨率 / 多语言2.1 Introductiontext/10-ch02-01-2-1-introduction.txt:5(搜「This gap is mainly reflected」)
60 亿参数的 ViT、超参搜索的结论2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:11(搜「scaled up to 6 billion parameters」) · text/12-ch02-03-2-3-proposed-method.txt:13(搜「have little impact on the performance」)
语言中间件:既当编码器又当解码器2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:101(搜「language middleware」)
表示空间同质的假设2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:103(搜「representation spaces homogeneity」)
三阶段:谁训、谁冻2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:129(搜「All model parameters are fully trainable」) · text/12-ch02-03-2-3-proposed-method.txt:133(搜「the LLM is frozen」)
纯文本数据保住语言能力2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:385(搜「maintain the original linguistic capabilities」)
35 种长宽比、800×1300 的例子、40 块 10496 个 token2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:155(搜「35 possible combinations」) · text/12-ch02-03-2-3-proposed-method.txt:161(搜「800×1300」)
砍掉最后 3 层、宽高各降 2 倍2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:149(搜「fourth to the fourth-last layers」)
数据清洗 60.3 亿 → 49.8 亿、六个条件、防泄题2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:167(搜「6.03 billion image–text pairs」)
第二阶段配比:图注 53.9%、OCR 32.0% + 8.9%2.3 Proposed Methodtext/12-ch02-03-2-3-proposed-method.txt:263(搜「constituting 53.9% of the total data」)
线性探测 88.2 / ADE20K 47.22.4 Experimentstext/13-ch02-04-2-4-experiments.txt:147(搜「88.2」) · text/13-ch02-04-2-4-experiments.txt:285(搜「47.2」)
多语言零样本 83.2 / 64.52.4 Experimentstext/13-ch02-04-2-4-experiments.txt:677(搜「83.2」)
文档问答 90.9、数学 53.5 对 GPT-4V2.4 Experimentstext/13-ch02-04-2-4-experiments.txt:1663(搜「90.9」) · text/13-ch02-04-2-4-experiments.txt:1351(搜「GPT-4V-1106」)
多轮对话仍落后 GPT-4V2.4 Experimentstext/13-ch02-04-2-4-experiments.txt:2673(搜「still lags behind GPT-4V」)
动态分辨率在部分任务上反而略降2.4 Experimentstext/13-ch02-04-2-4-experiments.txt:2809(搜「dynamic resolution」)

Footnotes

  1. 出处:「2.1 Introduction」第 5 段(text/10-ch02-01-2-1-introduction.txt:5,搜「This gap is mainly reflected」)。三条原文分别是:商业模型通常不少于 1000 亿参数,而开源常用 3 亿参数的视觉基础模型配 70 亿或 130 亿的语言模型,并且纯视觉训练或与早一代语言模型对齐的视觉模型「与大语言模型之间存在表示不一致」,这可能导致「语言模型的能力没被充分利用」;商业模型用动态分辨率并保持长宽比,开源模型固定在 336×336 或 448×448;开源模型主要用英文数据,导致非英文场景理解与 OCR 任务表现次优。 2 3

  2. 出处:「2.3 Proposed Method」第 11 段(text/12-ch02-03-2-3-proposed-method.txt:11,搜「scaled up to 6 billion parameters」)与第 13 段(text/12-ch02-03-2-3-proposed-method.txt:13,搜「have little impact on the performance」)。原文的超参搜索范围是深度 {32,48,64,80}、头维度 {64,128}、MLP 比例 {4,8},在 LAION-en 的一亿张子集上比精度、速度、稳定性;结论是同参数量下这三项对效果影响很小,最后按「最稳定」选定配置。 2

  3. 出处:「2.3 Proposed Method」第 101 段(text/12-ch02-03-2-3-proposed-method.txt:101,搜「language middleware」)。原文说这个中间件在图文对齐预训练阶段被初始化为多语言增强的 LLaMA,提供整体文本表示用于对比学习;在后续生成阶段则换成更大更强的语言模型,「既能当语言编码器,也能当文本解码器」。

  4. 出处:「2.3 Proposed Method」第 103 段(text/12-ch02-03-2-3-proposed-method.txt:103,搜「representation spaces homogeneity」)。原文:尽管不同大语言模型设计各异,它们都是在全网收集的文本语料上训练的,这使它们的表示空间具有同质性;视觉编码器只需与其中之一对齐,后续即使换成另一个,也「只需要少量样本做增量预训练或监督微调」就能实现对齐。

  5. 出处:「2.3 Proposed Method」第 129 段(text/12-ch02-03-2-3-proposed-method.txt:129,搜「All model parameters are fully trainable」)与第 133 段(text/12-ch02-03-2-3-proposed-method.txt:133,搜「the LLM is frozen」)。第一阶段:视觉编码器随机初始化、文本编码器用预训练权重初始化、全部参数可训;第二阶段:丢掉第一阶段的 LLaMA,通过一层 MLP 接上更大的语言模型,语言模型冻住,只微调视觉编码器与 MLP。

  6. 出处:「2.3 Proposed Method」第 385 段(text/12-ch02-03-2-3-proposed-method.txt:385,搜「maintain the original linguistic capabilities」)。原文说第三阶段掺入的纯文本数据集「用于保持语言模型原有的语言能力」。

  7. 出处:「2.3 Proposed Method」第 155 段(text/12-ch02-03-2-3-proposed-method.txt:155,搜「35 possible combinations」)与第 161 段(text/12-ch02-03-2-3-proposed-method.txt:161,搜「800×1300」)。第 159 段说明训练时最多 12 块「是因为算力有限」,并给出「多个长宽比同时匹配时,优先选面积不超过输入图两倍的那个,以免把低分辨率图放得过大」这条规则;第 161 段是那个 800×1300 → 896×1344 → 6 块的例子,以及训练时视觉 token 在 256 到 3328 之间、测试时最多 40 块共 10496 个 token。 2

  8. 出处:「2.3 Proposed Method」第 149 段(text/12-ch02-03-2-3-proposed-method.txt:149,搜「pixel-unshuffle」)。原文只说用 pixel-unshuffle 把宽和高各降 2 倍以减少高分辨率带来的过多图像 token。「每块 1024 个、压成 256 个」是我们算的:InternViT 的特征图是 H/14 × W/14(见同章第 107 段,text/12-ch02-03-2-3-proposed-method.txt:109,搜「H∕14×W∕14×D」),448÷14 = 32,32×32 = 1024,宽高各减半得 16×16 = 256;41 块 × 256 = 10496,与书里给的测试上限完全吻合。

  9. 出处:「2.3 Proposed Method」第 167 段(text/12-ch02-03-2-3-proposed-method.txt:167,搜「6.03 billion image–text pairs」)。原文列了六个过滤因子(CLIP 相似度、水印概率、不安全内容概率、美学分、图像分辨率、图注长度),说明这一阶段「只做最低限度的过滤」,并特别提到剔除与 ImageNet-1K/22K、Flickr30K、COCO 重复的数据「以确保零样本评测的可靠性」。 2

  10. 出处:「2.3 Proposed Method」第 263 段(text/12-ch02-03-2-3-proposed-method.txt:263,搜「constituting 53.9% of the total data」)。原文的配比:图注类 53.9%,检测与定位 5.2%,大规模 OCR 32.0%,小规模专项 OCR 8.9%;大规模 OCR 数据是他们用 PaddleOCR 对中文图库与英文图库批量识别构造的。 2

  11. 出处:「2.3 Proposed Method」第 149 段(text/12-ch02-03-2-3-proposed-method.txt:149,搜「fourth to the fourth-last layers」)。原文:发现从倒数第四层往前的特征在多模态任务上最好,于是直接丢弃最后三层的权重,把 InternViT-6B 从 48 层减到 45 层。为什么最后几层不好用,书里没有解释。

  12. 出处:「2.4 Experiments」第 147 段(text/13-ch02-04-2-4-experiments.txt:147,搜「88.2」)与第 285 段(text/13-ch02-04-2-4-experiments.txt:285,搜「47.2」)。表 2.5 的说明里注明 ViT-22B 用了不公开的 JFT-3B 私有数据集;表 2.7 那一行是冻住主干、只训一个线性头的设定。「线性探测」这个量法本身值得记一句:冻住主干、只在它的输出上训一个最简单的线性分类器,量的是「这个主干的特征本身好不好用」。 2

  13. 出处:「2.4 Experiments」第 677 段(text/13-ch02-04-2-4-experiments.txt:677,搜「83.2」)。这一行是多语言千类分类的零样本成绩:英文 83.2、中文 64.5;上一行的对照模型是 77.0 / 55.7。

  14. 出处:「2.4 Experiments」第 1663 段(text/13-ch02-04-2-4-experiments.txt:1663,搜「90.9」)与第 1351 段(text/13-ch02-04-2-4-experiments.txt:1351,搜「GPT-4V-1106」)。同一张表里 GPT-4V-1106 的四项分别是 88.4 / 78.5 / 78.0 / 49.9,InternVL-Chat(260 亿参数)是 90.9 / 83.8 / 80.6 / 53.5。

  15. 出处:「2.4 Experiments」第 2673 段(text/13-ch02-04-2-4-experiments.txt:2673,搜「still lags behind GPT-4V」)。原文的完整说法是:多轮对话比单轮更贴近人的实际使用,而在这项评测上,这个模型相对其他开源模型表现很强,但与 GPT-4V 相比仍有明显差距

  16. 出处:「2.4 Experiments」第 2809 段(text/13-ch02-04-2-4-experiments.txt:2809,搜「dynamic resolution」)。原文:动态分辨率对 OCR 相关任务有用,但在科学图表理解与多学科问答上反而略有下降。