FILIP: Fine-grained Interactive Language-Image Pre-Training
这是一份写给"完全没接触过 AI"的读者的精读笔记。语言尽量像聊天,公式全部翻译成人话。
一句话讲什么(TL;DR)
CLIP 是"整张图配整句话"看个大概像不像;FILIP 让图里的每一小块(patch)和句子里的每个词各自去对面找最像的伙伴,模型因此学会"狗在左下角、草地在右边"这种细节——而且只改了对比损失,没牺牲 CLIP 那种"能离线预存特征、检索超快"的效率。
所以这一节是想说:FILIP 在保持 CLIP 双塔高效率的前提下,把"图-文"的匹配从"整体对整体"升级成"小块对词"的细粒度对齐。
这是个什么场景
你有没有用文字搜过图片?比如输入"一只趴在沙发上的橘猫",系统给你找出最匹配的照片。这背后是一类叫**视觉-语言预训练(VLP)**的模型在工作,最有名的是 CLIP。
CLIP 的做法很聪明:它用海量"图片 + 配文"训练两个编码器(一个把图变成一串数字、一个把文字变成一串数字),让配对的图和文在数字空间里靠得近、不配对的离得远。这叫对比学习。训练完,你给它任何图和任何句子,它都能算出"这俩有多配"。
但 CLIP 有个粗糙的地方:它把整张图压成一个向量、整句话压成一个向量,然后只比这两个"总结向量"像不像。类比:
就像两个人相亲,只交换了一句"我大概是个爱运动的乐观青年"的自我总结,然后判断合不合适——细节全丢了。
这样一来,CLIP 学到的更多是"图里大概有什么",而不是"狗具体在哪个角落、草地在图的哪一边"。对于需要定位、细粒度理解的任务(比如区分很像的飞机型号、分辨图里物体的空间关系),这种"整体对整体"就不够用了。
那能不能让"图的每一小块"和"句子的每个词"都互相比一遍呢?其实早有人试过,但方法很笨重:要么先用物体检测器把图切成一个个框(慢、且受检测器质量限制),要么把图块和词全塞进一个大模型里用交叉注意力互相看(表达力强,但推理时每查一次都要把图和文一起重新算一遍,慢到没法用于大规模检索)。
FILIP 想要的是"鱼和熊掌兼得":既有细粒度的小块对词对齐,又保留 CLIP 那种"图和文各算各的、可以离线预存、检索飞快"的双塔效率。
所以这一节是想说:CLIP 高效但只看整体太粗,细粒度方法准但太慢;FILIP 想在不牺牲效率的前提下拿到细粒度对齐。

之前的人怎么做的,为什么不够好
方案 A:CLIP / ALIGN(全局对比)。 类比:只交换一句自我总结就判断合不合适。图和文各压成一个向量比相似度。优点:双塔结构,图/文特征能离线预存,检索超快。缺点:丢掉了"小块对词"的细节,定位和细粒度理解弱。
方案 B:物体检测器 + 融合(如 UNITER、Oscar 一类)。 类比:先请一个"框物体的助手"把图里每个东西圈出来,再逐个和文字对。优点:细粒度。缺点:要预先跑检测器、存大量 ROI 特征,管线复杂;零样本能力受"检测器认识多少类"限制。
方案 C:单塔交叉注意力 / 自注意力(如 ViLT、ALBEF 一类)。 类比:把图块和词全倒进一个锅里,让它们互相看个够。优点:细粒度、表达力强。缺点:训练和推理都慢——因为图和文必须成对一起过模型,没法把某一侧的特征提前算好存起来。做检索时,一张图要和每句候选文重新算一遍,规模一大就崩。
核心难题:细粒度(小块对词)和效率(双塔可预存)像跷跷板,按下一头翘起另一头。没人能又细又快。
所以这一节是想说:全局对比快但糙,检测器/交叉注意力细但慢;FILIP 要打破这个"细粒度 vs 效率"的二选一。
这篇论文的新想法
一句类比:想象一场"班级配对"。CLIP 的做法是:甲班选一个班长代表全班、乙班也选一个班长,两个班长握个手看合不合得来。FILIP 的做法是:让甲班每个学生都去乙班找一个最合得来的同学,再让乙班每个学生也去甲班找一个最合得来的,把这些"最佳配对"的融洽度平均一下,作为两个班合不合的分数。 这样细节全都照顾到了,而且——关键——甲乙两班各自的名单还是独立的,可以提前发好,不用每次都把两个班拉到一起重排。
这个"每个成员各找最佳伙伴"的机制,论文叫跨模态延迟交互(cross-modal late interaction)。它的精髓在于:
交互放在最后、只改对比损失。 图和文仍然各自用独立的编码器算出"每个 patch 的向量"和"每个词的向量"(双塔不变,可离线预存)。改动只发生在计算"这张图和这句话有多配"这一步——不再比两个总结向量,而是算token 级的最大相似度。因为交互被推迟到最后一步、且只动损失函数,双塔的高效率被完整保留。
每个 patch 找它最像的词,每个词找它最像的 patch。 对每个图块,在所有词里找相似度最高的那个;对每个词,在所有图块里找最像的那个。然后把这些"最佳配对相似度"取平均,作为图-文相似度。这就是"小块对词"的细粒度对齐。
两个小改动让它比原版更好用。 FILIP 借鉴了文本检索里的 ColBERT,但做了两处关键修正:(a) 扔掉补白(padding)token——句子补白的无意义 token 会误导图块去和它们对齐,去掉后更稳更好;(b) 用平均而非求和——因为每句话的有效词数不同,求和会让长短句的相似度尺度乱掉,平均则稳定。
配一个更干净的大数据集 FILIP300M。 论文自建了 3 亿图文对的数据集,加上公开的 CC3M/CC12M/YFCC 子集,总共约 3.4 亿——比 CLIP 的 4 亿还少,却训出更好的结果,说明细粒度机制本身就在提效率。
所以这一节是想说:FILIP 的新想法是"延迟交互 + token 级最大相似度"——只改对比损失,就让双塔模型学会小块对词的细粒度对齐,同时完整保留离线预存、检索飞快的效率。
它分几步做的(方法)
这一节最详细。FILIP 的系统 = 双塔编码器(图、文各一个)+ 跨模态延迟交互的对比损失 + 一堆让它训得起的效率技巧。逐一拆解,每块按"类比 → 机制(输入→处理→输出)→ 为什么有用"讲。
先看核心机制的示意图:
图片 ─► ViT 图像编码器 ─► [patch_1, patch_2, ..., patch_M] (每个patch一个向量)
文字 ─► Transformer文本编码器 ─► [word_1, word_2, ..., word_N] (每个词一个向量)
延迟交互(token级最大相似度):
对每个 patch_i:在所有 word 里找最像的 → max_j sim(patch_i, word_j)
对每个 word_j:在所有 patch 里找最像的 → max_i sim(word_j, patch_i)
图→文相似度 = 所有 patch 的"最佳匹配相似度"的平均
文→图相似度 = 所有(非补白)word 的"最佳匹配相似度"的平均
对比损失:让配对图文的这个相似度高、不配对的低
1. 双塔编码器:图和文各算各的
类比:两个部门各自写好自己的报告,先不开会。图部门把图切成小块分别描述,文部门把句子拆成词分别描述。
机制(输入→处理→输出):
- 输入:一张 224×224 的图片 + 一句文本(最多 77 个 token,跟 CLIP 一样)。
- 处理:图像用 Vision Transformer(ViT)——把图切成一个个 patch(FILIP-base 用 ViT-B/32,FILIP-large 用 ViT-L/14),每个 patch 过 Transformer 得到一个向量;额外还有个 [CLS] token。文本用 BPE 分词(词表 49408)+ 一个 decoder-only Transformer,每个词一个向量。最后两侧的 token 向量都被线性投影到同一个多模态空间(并降到 256 维,见效率技巧)。
- 输出:图侧一串 patch 向量 [patch_1...patch_M],文侧一串词向量 [word_1...word_N]。
为什么有用:双塔(两个独立编码器)是效率的根本——图特征和文特征可以分别提前算好存起来。做检索时,新查询只需算自己这一侧,再和预存的另一侧比,不用把两边拉到一起重算。这正是 CLIP 快的原因,FILIP 完整继承。
2. 跨模态延迟交互:每个成员找最佳伙伴
类比:前面说的"班级配对"——每个学生去对面班找一个最合得来的,把所有人的最佳融洽度平均。
机制(输入→处理→输出):
- 输入:图侧 patch 向量、文侧词向量。
- 处理:先算每个 patch 和每个词之间的相似度(一张 M×N 的相似度表)。然后:
- 对每个 patch_i,取它这一行的最大值(它最像的那个词的相似度);
- 对每个 word_j,取它这一列的最大值(它最像的那个 patch 的相似度);
- 图→文相似度 = 所有 patch 最大值的平均;文→图相似度 = 所有(非补白)词最大值的平均。
- 输出:一对图-文相似度分数,喂进标准的对比损失(让配对的分高、批次内不配对的分低)。
公式的人话翻译:论文的核心公式就是"token-wise maximum similarity 再平均"。翻译成大白话:"对每个小块/每个词,都只看它在对面最合得来的那一个,然后把这些最佳匹配的融洽度平均起来当作总分。" 为什么用"最大"而不是"平均所有配对"?因为一个图块通常只对应句子里一两个词(比如"狗"这个块只该和"狗"这个词强关联),把它和句子里所有词平均反而会稀释信号。取最大 = 只认最相关的那个伙伴。
为什么有用:这一步就是细粒度的来源。它逼模型学会"图里哪一块对应文里哪个词",从而获得定位能力。而且它只作用在"算相似度"这最后一步,前面的编码完全独立——所以细粒度和双塔效率同时拿到了。
3. 两处关键修正:扔补白、用平均
类比:借了别人的配对规则,但发现两个坑要填。
机制(输入→处理→输出):
- 扔掉补白 token:句子长短不一,短句会补一堆无意义的 padding token 凑长度。如果让图块去和这些补白对齐,会被带偏(图块跑去和"空气"配对)。FILIP 在算相似度时排除所有补白 token。
- 用平均代替求和:原始 ColBERT 用"求和"聚合所有最佳匹配。但句子有效词数不同(有的 5 个词、有的 30 个),求和会让长句天然分数高,尺度混乱。FILIP 改成平均,让不同长度的图文可比、训练更稳。
- 输出:更稳定、更准的细粒度对齐。
为什么有用:这两个看似很小的改动,是把"文本检索的 ColBERT 思想"成功搬到"图文"场景的关键工程细节。论文明说去掉补白和改平均都能提升性能、稳定训练。
4. 效率技巧:让"小块对词"训得起
类比:每个学生和对面班每个人都比一遍,人一多计算就爆炸。得想办法瘦身。
机制(输入→处理→输出):
- 输入:大批量的图 patch 和文 token。
- 处理:细粒度交互依赖 token 级表示,批量一大就吃不消内存和通信。FILIP 用三招:(a) 把嵌入维度降到 256;(b) 在分布式训练做节点通信前,把特征从 fp32 降到 fp16 再相乘;(c) 对每张图(每句文)只选相似度最高的 25% token 参与跨节点通信——因为大部分 token 对匹配贡献很小。
- 输出:一个内存/通信可控、能在大批量下训练的细粒度模型。
为什么有用:细粒度交互天生比全局对比贵。这些技巧把成本压下来,让 FILIP 能在大数据、大批量下训练——否则再好的机制也训不出规模效应。训练成本:FILIP-base 用 128 卡约 9 天,FILIP-large 用 192 卡约 24 天。
5. 推理时的巧思:prompt 集成与"it"后缀
类比:给模型出题时,同一个类别换几种说法问,取平均更稳。
机制(输入→处理→输出):
- 做零样本分类时,CLIP 会用多个 prompt 模板(如"a photo of a {label}")取平均。但 FILIP 是 token 级的,不同模板的 token 表示不一样,不能简单平均向量——所以 FILIP 改成按 token 级相似度取平均来集成 prompt。
- 一个有趣发现:在 prompt 末尾加一个带指代词"it"的后缀(如"I like it.")能提升零样本分类——猜测是"it"也能对齐到目标物体的图块,强化了细粒度对齐。
- 输出:更好的零样本表现。
为什么有用:这些是把细粒度模型用好的实操技巧,说明 FILIP 的细粒度性质需要配套的推理方式才能发挥。
所以这一节是想说:FILIP 用双塔保效率、用 token 级最大相似度做细粒度对齐、用扔补白+平均两处修正把机制做对、用降维/fp16/选25%token 三招把它训得起,再用 token 级 prompt 集成把它用得好。核心巧思是"延迟交互"——只动最后的相似度计算,就同时拿到细粒度和效率。
下图概括本篇在「关键数字」节前的核心结果脉络(便于对照后文表格):
【FILIP: Fine-grained Interactive Lan… · 关键结果概览】
设定 / 数据 方法要点 主结果
│ │ │
▼ ▼ ▼
训练 ──► 方法核心 ──► …
评测 ──► 主指标提升 ──► ↑ 论文主结论
(对照下方表格中的原文数字与消融)

关键数字(What works)
数字来自论文正文与表格。数字本身不重要,重要的是它们指出细粒度对齐到底带来了什么。评价主要看零样本图像分类(不训练直接分类的准确率)和图文检索。
数字 1:ImageNet 零样本 77.1%,且用更少数据
| 模型 | 图像编码器 | 12 数据集平均 top-1 | ImageNet 零样本 top-1 |
|---|---|---|---|
| CLIP-ViT-B/32 | ViT-B/32 | 65.3 | 63.2 |
| FILIP-base | ViT-B/32 | 70.9(+5.6) | 68.8 |
| CLIP-ViT-L/14 | ViT-L/14 | 75.3 | 75.3 |
| FILIP-large | ViT-L/14 | 78.3(+3.0) | 77.1 |
含义:在 12 个数据集平均上,FILIP-base 比同规模 CLIP 高 5.6 分、FILIP-large 高 3.0 分;ImageNet 零样本 FILIP-large 达 77.1%。而且——FILIP 用的训练数据(约 340M)比 CLIP(400M)还少,说明细粒度机制本身在提数据效率。
数字 2:细粒度数据集提升最猛——飞机分类 +30%
| 数据集 | 提升幅度 | 为什么 |
|---|---|---|
| Aircrafts(飞机型号) | 两个 FILIP 平均比 CLIP 高约 30% | 区分很像的飞机型号靠的是局部细节(机翼、发动机),正是"小块对词"擅长的 |
| Flowers102 | FILIP-large 90.1 vs CLIP 78.7 | 花的细粒度纹理差异 |
| ImageNet(最大数据集) | FILIP 超过 CLIP | 细粒度对齐在大规模上依然有效 |
含义:细粒度对齐在"需要看局部细节区分近似类别"的任务上收益最大——这直接印证了"小块对词"的价值。
数字 3:零样本检索超过用更大数据训练的 ALIGN
| 任务 | 结果 |
|---|---|
| Flickr30K / MSCOCO 图文检索 | FILIP 在几乎所有指标上达到 SOTA(仅 Flickr30K 零样本 文→图 略逊为竞争性水平) |
| MSCOCO 零样本 图→文 R@1 | FILIP 比 ALIGN 高 2.7%(而 ALIGN 用的训练数据大得多) |
含义:FILIP 在检索上不仅赢过同类,还赢过用大得多的数据训练的 ALIGN——细粒度对齐的表达力换来了数据效率。
数字 4:训练成本
| 模型 | 硬件 | 时长 | 数据量 |
|---|---|---|---|
| FILIP-base(ViT-B/32) | 128 卡 | ~9 天 | ~340M 图文对 |
| FILIP-large(ViT-L/14) | 192 卡 | ~24 天 | ~340M 图文对 |
含义:这是工业级预训练的规模,学术复现门槛较高,但相较 CLIP 数据量更省。
所以这一节是想说:数字讲了三件事——细粒度对齐让零样本分类整体提升(ImageNet 77.1%)、在细粒度任务上收益最大(飞机 +30%)、检索上用更少数据超过更大模型。
实验结果说明了什么
上一节列数字,这一节回答这些实验解决了哪些科学问题。
问题一:细粒度对齐到底有没有用,还是只是听起来高级?
有用,而且在"最需要它"的地方最明显。整体平均提升 3–5.6 分已经说明问题,但更有说服力的是细粒度数据集——飞机型号分类提升约 30%、花卉分类大涨。这些任务的共同点是"要靠局部细节区分很像的类别",正是"小块对词"擅长的。CLIP 把整图压成一个 [CLS] 向量,局部细节被平均掉了;FILIP 直接让目标物体的图块和类别词对齐,所以更准。这是对"细粒度机制有效"的直接因果证据。
问题二:能不能既要细粒度、又不牺牲双塔的检索效率?
能,这是 FILIP 最核心的贡献。以前细粒度方法(交叉注意力)必须把图文成对过模型,没法预存特征,检索时要 N×M 次重算,规模一大就废。FILIP 把交互推迟到"算相似度"这最后一步,前面的编码完全独立——所以图特征、文特征都能离线预存,检索时只算查询侧。它拿到了细粒度,却保住了 CLIP 的效率。这证明"细粒度"和"效率"不是必然矛盾,关键在于把交互放在哪一步。
问题三:数据是不是越多越好?还是机制更重要?
FILIP 给了一个反直觉的答案:机制比堆数据更划算。它用约 340M 数据(比 CLIP 的 400M 少)却全面超过 CLIP,检索上甚至超过用更大数据的 ALIGN。这说明"更聪明的对齐目标"能部分替代"更多的数据"——细粒度信号让每个样本被更充分地利用了。
问题四:那两个"小改动"(扔补白、用平均)真的重要吗?
论文明说这两处修正都能提升性能、稳定训练。它们看似微不足道,实则是把"文本检索的 ColBERT 思想"成功迁移到图文场景的关键。这提醒我们:把一个好想法从 A 领域搬到 B 领域,魔鬼常常在这些工程细节里——补白 token 会污染对齐、求和会破坏尺度,不处理就前功尽弃。
问题五:模型真的学到"哪块图对应哪个词"了吗?
论文的词-图块对齐可视化给了肯定回答:模型能把类别词准确定位到图中对应的物体区域,展现出"promising localization ability(有前景的定位能力)"。这说明细粒度对齐不只是数字上好看,模型内部确实建立了 patch↔word 的语义对应——这也是它可解释性强于 CLIP 的地方。
所以这一节是想说:实验证明了细粒度对齐有效(尤其细粒度任务)、细粒度与效率可兼得(延迟交互)、好机制能省数据、以及模型确实学到了可视化的定位能力。
你应该懂的几个新词
视觉-语言预训练(VLP, Vision-Language Pre-training):用海量"图 + 配文"训练一个能理解图文关系的模型。CLIP、ALIGN、FILIP 都属于这类。
对比学习(Contrastive Learning):让"配对的样本"在数字空间里靠近、"不配对的"远离的训练方式。CLIP/FILIP 的核心目标。
双塔 / 单塔(Dual-stream / Single-stream):双塔是图、文各用一个独立编码器(可离线预存特征、检索快);单塔是把图文拼一起过一个模型(表达强但慢)。FILIP 是双塔。
token / patch:token 是模型处理的最小单位。文本的 token 是词(或子词),图像的 token 是把图切成的一个个小方块(patch)。
延迟交互(Late Interaction):把跨模态的交互推迟到最后"算相似度"这一步,前面编码保持独立。这是 FILIP 兼顾细粒度和效率的关键,源自文本检索的 ColBERT。
token 级最大相似度(Token-wise Maximum Similarity):对每个图块,只取它和对面最像的那个词的相似度;反之亦然。再平均得到图文总相似度。
ViT(Vision Transformer):把图切成 patch、当成序列用 Transformer 处理的图像模型。FILIP 的图像编码器。
零样本(Zero-shot):不为某个具体任务专门训练,直接拿预训练模型去做。FILIP 的 ImageNet 零样本分类就是没在 ImageNet 上训过就直接分类。
图文检索(Image-Text Retrieval):用图搜文或用文搜图,用 R@1/R@5/R@10(前 1/5/10 个结果里有没有正确答案)衡量。
prompt 集成(Prompt Ensemble):同一个类别用多个模板问,综合结果更稳。FILIP 因为是 token 级,改成按 token 相似度集成。
所以这一节是想说:这十来个词是理解任何"图文预训练"论文的基础,先和"班级配对"这个类比挂上钩。
它有什么搞不定的
FILIP 很漂亮,但也有边界(部分论文明说,部分为基于机制的推断,已标注):
细粒度交互仍比全局对比贵(论文明说):token 级最大相似度依赖两侧的所有 token 表示,内存/通信/计算成本高,批量一大就吃不消。论文得靠降维到 256、fp16、只选 25% token 三招才训得起——这些技巧本身是对成本的妥协。
检索时存储与计算比 CLIP 重(推断):虽然保留了"可离线预存"的双塔优势,但预存的是每个 token 的向量(而非 CLIP 那样每图一个向量),存储量和相似度计算量都比全局对比大。规模极大时仍有压力。
依赖工程细节,迁移不"免费"(论文明说):扔补白、用平均这两处不做就会掉性能、训练不稳。说明这套机制对实现细节敏感,直接照搬 ColBERT 不行。
训练成本高(论文数据):FILIP-large 用 192 卡训约 24 天。虽然数据量比 CLIP 少,但细粒度交互的算力开销让整体训练门槛依然很高,非大机构难复现。
仍是"理解"模型,不生成(推断):FILIP 和 CLIP 一样是判别式的图文对齐模型,只能判断"图文配不配"、做检索和零样本分类,不能生成文字描述或图像。要做"看图说话"还得接生成式框架(如 BLIP-2、LLaVA 那条线)。
所以这一节是想说:FILIP 解了"细粒度 vs 效率"的矛盾,但没消除细粒度带来的成本,也不改变它"判别不生成"的定位。
它和别的几篇是什么关系
直接对手/前辈 CLIP、ALIGN(本仓库有 CLIP 笔记):FILIP 是 CLIP 的"细粒度升级版"——同样双塔、同样对比学习,但把"整体对整体"换成"小块对词"。它证明只改对比损失就能显著超过 CLIP,且更省数据。
思想来源 ColBERT(文本检索):跨模态延迟交互直接借鉴了 ColBERT 的"token 级最大相似度 + 延迟交互",FILIP 的贡献是把它成功搬到图文,并做了扔补白/用平均两处关键适配。
对照 单塔细粒度方法(ViLT、ALBEF、UNITER 等):这些用交叉/自注意力做细粒度,准但慢、不可预存。FILIP 用延迟交互拿到相近的细粒度却保住了双塔效率——是"细粒度阵营"里对检索最友好的一支。
和 SigLIP、EVA-CLIP 等 CLIP 后续(本仓库有相关笔记):这些主要在损失(sigmoid)、数据、规模上改进 CLIP,多数仍是全局对齐。FILIP 走的是"改交互粒度"这条正交的路,思路可以和它们组合。
下游影响:细粒度对齐 + 定位能力的思路,影响了后续需要"图文精细对应"的工作(开放词汇检测、指代分割等)。
所以这一节是想说:FILIP 是 CLIP 的细粒度分支,把 ColBERT 的延迟交互引入图文,是"既要细又要快"这条路线的代表作。
和本导读的关系
本笔记对应导读 Ch08: CLIP 与对比学习。
Ch08 讲的是视觉-语言对齐的地基——CLIP 如何用对比学习把图和文拉到同一个空间。FILIP 正是这条线上的一个重要"支路创新":它不改变 CLIP 的双塔+对比大框架,而是把对齐的粒度从"整图对整句"细化到"小块对词"。理解 FILIP,能让你更深刻地看清 CLIP 的局限(全局池化丢细节)以及后续改进的方向空间。
读完本笔记,建议按导读 Ch08 的路线继续:先确保理解 CLIP(FILIP 的基座和对手),再看 SigLIP / EVA-CLIP(在损失和规模上改进 CLIP 的另一条路),对照就能看出"改交互粒度"(FILIP)和"改损失/规模"(SigLIP/EVA-CLIP)是两条正交的进化路径。
从知识图谱角度,本笔记往下连接 Ch09(BLIP-2 / LLaVA)——那一章讲的是"生成式"图文模型,而 FILIP/CLIP 是"判别式"对齐模型,两者互补:对齐模型提供强视觉表征,生成模型在其上做"看图说话"。理解 FILIP 的细粒度对齐,有助于理解为什么后续 VLM 越来越重视"细粒度视觉特征"。
所以这一节是想说:本笔记是导读 Ch08"CLIP 与对比学习"的细粒度支路,读完可沿 CLIP → SigLIP/EVA-CLIP 对照,把图文对齐的进化路径看全。
思考题
以下问题用来检验你是否真正理解了论文核心。每题附折叠提示,建议先自己想 30 秒。
Q1:FILIP 为什么能"既细粒度又高效",而单塔交叉注意力方法做不到?关键差别在哪一步?
提示
关键在于交互发生在哪一步。交叉注意力把图文在编码阶段就深度交融,所以必须成对一起过模型,没法把任一侧的特征提前算好——检索时要 N×M 次重算。FILIP 的"延迟交互"把图文交互推迟到最后"算相似度"这一步,前面的编码完全独立,所以图/文特征能离线预存,检索只算查询侧。细粒度来自最后一步的 token 级比对,效率来自前面的双塔独立编码。
Q2:为什么用"token 级最大相似度"而不是"所有图块-词配对的平均相似度"?
提示
因为一个图块通常只对应句子里的一两个词("狗"这个块只该和"狗"这个词强关联)。如果把它和句子里所有词的相似度平均,大量无关词会稀释掉那个真正相关的信号。取最大值 = 每个图块只认它最合得来的那个词,保留了最强的对应关系。这正是"细粒度"的来源——它在建模"谁对应谁",而不是"整体平均像不像"。
Q3:FILIP 用了比 CLIP 更少的数据(340M vs 400M)却效果更好。这说明了什么?
提示
说明"更好的对齐目标"能部分替代"更多的数据"。细粒度的 token 级信号让每个图文对被更充分地利用——模型不只学到"整体像不像",还学到"哪块对哪词",从同一个样本里榨出更多监督信号。这提醒我们:提升不一定要靠堆数据,改进机制/目标同样有效,有时更划算。
Q4:论文强调"扔掉补白 token"和"用平均代替求和"两处修正。为什么这两个看似很小的改动很重要?
提示
补白 token 是短句凑长度用的无意义符号,如果让图块去和它们对齐,图块会跑去和"空气"配对,污染细粒度对齐。求和聚合会让有效词多的长句天然分数高(尺度混乱),平均则让长短句可比、训练稳定。这两处是把文本检索的 ColBERT 思想成功搬到图文场景的关键工程细节——不处理就学不好。魔鬼在细节里。
Q5:为什么 FILIP 在飞机型号分类上比 CLIP 高约 30%,而在某些粗粒度任务上优势没这么大?
提示
因为区分很像的飞机型号靠的是局部细节(机翼形状、发动机数量),这正是"小块对词"擅长的——FILIP 能把"某型号"这个词对齐到图里的关键局部区域。而 CLIP 把整图压成一个 [CLS] 向量,局部细节被平均掉了,区分近似类别就吃力。粗粒度任务(比如区分猫和汽车)靠整体就够,细粒度机制的边际收益自然小。
Q6:FILIP 保留了"可离线预存特征"的优势,但它预存的东西和 CLIP 有何不同?这带来什么代价?
提示
CLIP 每张图/每句文只预存一个总结向量。FILIP 因为要做 token 级比对,得预存每个 token(每个 patch/每个词)的向量。好处是保住了"查询时不用重算对面"的效率;代价是存储量大得多、相似度计算也从"两个向量点积"变成"两组 token 的最大相似度聚合",计算更重。规模极大时这是实际压力,也是论文要用降维/选25%token 等技巧的原因。
Q7:FILIP 和 LLaVA/BLIP-2 有什么本质区别?如果你要做"看图写一段描述",该用哪个?
提示
本质区别:FILIP 是判别式对齐模型——只能判断"图文配不配"、做检索和零样本分类,不能生成文字。LLaVA/BLIP-2 是生成式模型——能看图输出一段话。要"看图写描述"必须用后者。但两者互补:FILIP/CLIP 这类对齐模型常被用作生成式 VLM 的视觉编码器,提供强视觉表征,生成模型在其上做语言输出。
所以这一节是想说:能答这 7 题,说明你抓住了 FILIP 的设计逻辑——延迟交互兼顾细粒度与效率、最大相似度建模精确对应、以及"改机制省数据"的启示。
一些好奇心问答(FAQ)
Q1:FILIP 和 CLIP 到底差在哪一行代码?
概念上差在"算图文相似度"这一步。CLIP 是两个总结向量点积;FILIP 是把两侧所有 token 算出相似度表,对每个 token 取最大、再平均。编码器结构基本一样(双塔),改的主要是对比损失里相似度的算法。所以论文说"只改对比损失"。
Q2:"延迟交互"里的"延迟"是什么意思?
指跨模态的交互被推迟到流程最后。图和文各自独立编码(不交互),直到最后算相似度时才让两侧的 token 互相比对。对比之下,交叉注意力是"早交互"——编码阶段就交融。延迟交互是 FILIP 兼顾效率的关键。
Q3:为什么加"I like it."这种后缀能提升分类?
论文猜测是"it"这个指代词也能对齐到图里目标物体的图块,从而强化了细粒度的图块-词对齐。这是个经验发现,也侧面说明 FILIP 确实在做 token 级的对应——连一个指代词都能找到它的图块伙伴。
Q4:FILIP300M 是什么?为什么要自建数据集?
是论文自建的 3 亿图文对数据集,从互联网收集并做了图像/文本过滤(去掉太小的图、非英文、重复文本等)。加上公开的 CC3M/CC12M/YFCC 子集共约 340M。自建是因为大规模高质量图文对是这类预训练的前提,公开数据当时不够大或不够干净。
Q5:FILIP 能做物体检测/分割吗?
它本身是分类/检索模型,但它的词-图块对齐能力(定位)为开放词汇检测、指代分割等任务提供了基础思路。论文展示了定位可视化,后续工作沿这个方向做了扩展。
Q6:训练这么贵,普通人能用吗?
预训练很贵(百卡级、数十天),普通人训不动。但可以用发布的预训练模型做下游(零样本分类、检索、微调),这部分成本低很多。这和 CLIP 的使用模式一样。
Q7:之后该看什么?
想理解基座看 CLIP;想看 CLIP 的其他改进方向看 SigLIP / EVA-CLIP;想看图文从"对齐"走向"生成"看 BLIP-2 / LLaVA;想理解延迟交互的源头看文本检索的 ColBERT。
所以这一节是想说:实操问题(和 CLIP 的差异、延迟交互含义、数据集、能不能检测、能不能自己用)作者和后续社区都有清晰答案。
如果你想再深入
按"基座 → 思想源头 → 对照 → 下游"排序:
- 基座/对手:CLIP(Radford et al. 2021) — FILIP 的地基和主要对比对象。读它理解双塔对比学习的原始形态。本仓库有 CLIP 笔记。
- 思想源头:ColBERT(Khattab & Zaharia 2020) — 文本检索里的"延迟交互 + token 级最大相似度",FILIP 把它搬到图文。
- 对照(细粒度单塔):ALBEF / ViLT — 用交叉/自注意力做细粒度的另一条路,对照能看出延迟交互在效率上的优势。
- 对照(CLIP 其他改进):SigLIP / EVA-CLIP — 在损失和规模上改进 CLIP,和 FILIP 的"改粒度"是正交路径。本仓库有相关笔记。
- 下游/延伸:BLIP-2 / LLaVA — 从判别式对齐走向生成式"看图说话",理解 FILIP 在整个 VLM 版图里的位置。
所以这一节是想说:把 CLIP + ColBERT + FILIP 连起来读,就能看到"全局对齐 → 延迟交互 → 细粒度图文对齐"这条清晰的技术脉络。
原文信息
BibTeX
@inproceedings{yao2022filip,
title = {{FILIP}: Fine-grained Interactive Language-Image Pre-Training},
author = {Yao, Lewei and Huang, Runhui and Hou, Lu and Lu, Guansong and Niu, Minzhe and Xu, Hang and Liang, Xiaodan and Li, Zhenguo and Jiang, Xin and Xu, Chunjing},
booktitle = {International Conference on Learning Representations (ICLR)},
year = {2022}
}
链接
- arXiv:arxiv.org/abs/2111.07783
- 发表:ICLR 2022
所以这一节是想说:这是华为诺亚方舟实验室 Yao et al. 2021 年提出、2022 年发表于 ICLR 的工作,是"细粒度图文对齐"方向的代表作。
最后一个画面
想象你在图库里搜"戴红帽子的小孩在放风筝"。
用 CLIP,它把你的整句话压成一个"总结向量",再去和每张图的"总结向量"比——它大概能找到"有小孩、有风筝"的图,但"红帽子"这个细节容易被平均掉。
用 FILIP,"红""帽子""风筝""小孩"这些词会各自去图里找最像的那一小块,"红帽子"这个词精准地锁定图里那顶帽子的区域。于是它不仅找到有小孩放风筝的图,还能把"红帽子"这个细节对上号。
同样是"图文配对",一个看整体、一个看每一小块——而 FILIP 证明了:看细节,不一定要变慢。
所以最后一节是想说:FILIP 的价值在于它优雅地打破了"细粒度 vs 效率"的二选一——只改对比损失里的相似度算法,就让机器学会了"图的每一小块对应文的哪个词",还保住了检索飞快的双塔效率。
◼
引用本笔记 / Cite this note
@online{eai_filip_2026,
title = {(readable note) FILIP: Fine-grained Interactive Language-Image Pre-Training},
author = {Xun, Jason},
year = {2026},
note = {Note on a 2022 paper},
howpublished = {\url{https://estelledc.github.io/embodied-ai-reading-station/papers/filip/}},
organization = {Embodied AI: Zero to One}
}
All 202 papers (full index)
- 1. LLaVA: Visual Instruction Tuning
- 2. 3DShape2VecSet: 3D Shape Representation for Diffusion Models
- 3. SayCan: Do As I Can, Not As I Say
- 4. OpenVLA: An Open-Source Vision-Language-Action Model
- 5. VLAS: VLA Model With Speech Instructions
- 6. MLA: Multisensory Language-Action Model
- 7. Cosmos Policy: Fine-Tuning Video Models for Visuomotor Control
- 8. CartoRadar: RF-Based 3D SLAM Rivaling Vision Approaches
- 9. mmCLIP: Boosting mmWave-based Zero-shot HAR via Signal-Text Alignment
- 10. mmNorm: Non-Line-of-Sight 3D Object Reconstruction via mmWave Surface Normal Estimation
- 11. Proactive Hearing Assistants that Isolate Egocentric Conversations
- 12. NeuralAids: Wireless Hearables With Programmable Speech AI Accelerators
- 13. Creating speech zones with self-distributing acoustic swarms
- 14. Conv-TasNet: Surpassing Ideal Time-Frequency Magnitude Masking for Speech Separation
- 15. SoundStream: An End-to-End Neural Audio Codec
- 16. AudioLM
- 17. Conformer
- 18. Dual-path RNN
- 19. EnCodec
- 20. Meta-StyleSpeech
- 21. MusicLM
- 22. Robust Speech Recognition via Large-Scale Weak Supervision
- 23. SeamlessM4T
- 24. Stable Audio
- 25. Universal Source Separation with Weakly Labelled Data
- 26. Meta-World: A Benchmark and Evaluation for Multi-Task and Meta Reinforcement Learning
- 27. RLBench: The Robot Learning Benchmark & Learning Environment
- 28. robosuite: A Modular Simulation Framework and Benchmark for Robot Learning
- 30. CALVIN
- 31. LIBERO
- 32. RH20T
- 33. What Matters in Learning from Offline Human Demonstrations for Robot Manipulation
- 34. DROID
- 35. Open X-Embodiment
- 36. RoboCasa
- 37. SimplerEnv
- 38. Diffusion Policy: Visuomotor Policy Learning via Action Diffusion
- 39. 3D Diffusion Policy: Generalizable Visuomotor Policy Learning via Simple 3D Representations
- 40. Consistency Policy: Accelerated Visuomotor Policies via Consistency Distillation
- 41. EquiBot: SIM(3)-Equivariant Diffusion Policy
- 42. DiT-Policy
- 43. Diffusion Policy Policy Optimization (DPPO)
- 44. Affordance-based Robot Manipulation with Flow Matching
- 45. FlowPolicy: 3D Flow-based Policy via Consistency Flow Matching
- 46. FAST: Efficient Action Tokenization for VLA
- 47. π₀: A Vision-Language-Action Flow Model for General Robot Control
- 48. pi_0.5: VLA with Open-World Generalization
- 49. A Reduction of Imitation Learning and Structured Prediction to No-Regret Online Learning
- 50. Generative Adversarial Imitation Learning
- 51. Learning Fine-Grained Bimanual Manipulation with Low-Cost Hardware (ACT/ALOHA)
- 52. AnyTeleop
- 53. Behavior Transformers: Cloning k Modes with One Stone
- 54. Implicit Behavioral Cloning
- 55. RoboCat
- 56. ALOHA 2
- 58. HumanPlus
- 59. Generalizable Humanoid Manipulation with 3D Diffusion Policies (iDP3)
- 60. Mobile ALOHA
- 61. SmolVLA
- 62. Universal Manipulation Interface
- 63. Behavior Generation with Latent Actions (VQ-BeT)
- 64. ImageBind: One Embedding Space To Bind Them All
- 65. Connecting Touch and Vision via Cross-Modal Prediction
- 66. AnyMAL: An Efficient and Scalable Any-Modality Augmented Language Model
- 67. AudioPaLM
- 68. FROMAGe: Grounding LLMs to Images
- 69. OneLLM
- 70. X-VLM: Multi-Grained Vision Language Pre-Training
- 71. Tactile Beyond Pixels (Sparsh-X)
- 72. Sparsh: Self-supervised Touch Representations
- 73. Tactile-VLA
- 74. TLA: Tactile-Language-Action
- 75. Code as Policies: Language Model Programs for Embodied Control
- 76. Inner Monologue: Embodied Reasoning through Planning with Language Models
- 77. LLM+P: Empowering LLMs with Optimal Planning
- 78. PaLM-E: An Embodied Multimodal Language Model
- 79. ProgPrompt
- 80. ChatGPT for Robotics
- 81. GenSim
- 82. RoboFlamingo
- 83. Tree-Planner
- 84. VoxPoser
- 85. See Through Smoke: Robust Indoor Mapping with Low-cost mmWave Radar
- 86. Can WiFi Estimate Person Pose?
- 87. 3DRIMR: 3D Reconstruction and Imaging via mmWave Radar based on Deep Learning
- 88. milliEgo: Single-chip mmWave Radar Aided Egomotion Estimation via Deep Sensor Fusion
- 89. High Resolution Point Clouds from mmWave Radar
- 90. RadarSLAM: Radar based Large-Scale SLAM in All Weathers
- 91. Through-Wall Pose Imaging in Real-Time with a Many-to-Many Encoder/Decoder Paradigm
- 92. RFMask: A Simple Baseline for Human Silhouette Segmentation with Radio Signals
- 93. RFPose-OT: RF-Based 3D Human Pose Estimation via Optimal Transport Theory
- 94. Argus: Multi-View Egocentric Human Mesh Reconstruction Based on Stripped-Down Wearable mmWave Add-on
- 95. Diffusion Model is a Good Pose Estimator from 3D RF-Vision
- 96. Enabling Visual Recognition at Radio Frequency (PanoRadar)
- 97. Wave-Former: Through-Occlusion 3D Reconstruction via Wireless Shape Completion
- 98. Habitat: A Platform for Embodied AI Research
- 99. Isaac Gym: High Performance GPU-Based Physics Simulation For Robot Learning
- 101. Habitat 2.0
- 102. ManiSkill
- 103. ProcTHOR
- 104. SAPIEN: A SimulAted Part-based Interactive ENvironment
- 105. BEHAVIOR-1K
- 106. BridgeData V2
- 106. Habitat 3.0
- 107. Isaac Lab
- 108. DexMV
- 108. MuJoCo Playground
- 109. DexCap
- 109. RT-1: Robotics Transformer for Real-World Control at Scale
- 110. 3D Diffusion Policy (DP3)
- 111. Octo: An Open-Source Generalist Robot Policy
- 112. RT-2: Vision-Language-Action Models Transfer Web Knowledge to Robotic Control
- 113. RT-Trajectory: Robotic Task Generalization via Hindsight Trajectory Sketches
- 114. 3D-VLA
- 116. GR-2: Generative Video-Language-Action Model
- 117. DexVLA
- 117. OpenHelix
- 118. Cosmos World Foundation Model
- 118. OpenVLA-OFT
- 119. RDT-1B: Diffusion Foundation Model for Bimanual Manipulation
- 120. RoboMamba
- 121. SpatialVLA
- 122. TinyVLA
- 123. TraceVLA: Visual Trace Prompting
- 124. Learning Transferable Visual Models From Natural Language Supervision
- 125. Flamingo: a Visual Language Model for Few-Shot Learning
- 126. BLIP-2: Bootstrapping Language-Image Pre-training with Frozen Image Encoders and Large Language Models
- 127. BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation
- 128. DeepSeek-VL: Towards Real-World Vision-Language Understanding
- 129. EVA-CLIP: Improved Training Techniques for CLIP at Scale
- 130. FILIP: Fine-grained Interactive Language-Image Pre-Training
- 131. Florence-2: Advancing a Unified Representation for a Variety of Vision Tasks
- 132. InternVL: Scaling up Vision Foundation Models and Aligning for Generic Visual-Linguistic Tasks
- 133. Improved Baselines with Visual Instruction Tuning
- 134. OBELICS
- 135. Qwen-VL: A Versatile Vision-Language Model for Understanding, Localization, Text Reading, and Beyond
- 136. Sigmoid Loss for Language Image Pre-Training
- 137. What matters when building vision-language models?
- 138. Expanding Performance Boundaries of Open-Source Multimodal Models with Model, Data, and Test-Time Scaling
- 139. The Llama 3 Herd of Models
- 140. LLaVA-NeXT-Interleave
- 141. LLaVA-OneVision: Easy Visual Task Transfer
- 142. Long-CLIP: Unlocking the Long-Text Capability of CLIP
- 143. Pixtral 12B
- 144. Dream to Control: Learning Behaviors by Latent Imagination
- 145. World Models
- 146. DayDreamer
- 147. Mastering Atari with Discrete World Models
- 148. Dreamer V3: Mastering Diverse Domains through World Models
- 149. Transformers are Sample-Efficient World Models
- 150. TWM: Transformer-based World Models
- 151. 1X World Model Challenge
- 153. GAIA-1
- 154. Genie: Generative Interactive Environments
- 155. Navigation World Models
- 156. UniSim
- 157. LeRobot: An Open-Source Library for End-to-End Robot Learning
- 158. CogACT: A Foundational Vision-Language-Action Model for Synergizing Cognition and Action in Robotic Manipulation
- 159. Universal Actions for Enhanced Embodied Foundation Models
- 160. LoHoVLA: A Unified Vision-Language-Action Model for Long-Horizon Embodied Tasks
- 161. AutoRT: Embodied Foundation Models for Large Scale Orchestration of Robotic Agents
- 162. EO-1: Interleaved Vision-Text-Action Pretraining for General Robot Control
- 163. Qwen-VLA: Unifying Vision-Language-Action Modeling across Tasks, Environments, and Robot Embodiments
- 164. RealMirror: A Comprehensive, Open-Source Vision-Language-Action Platform for Embodied AI
- 165. LLaDA-VLA: Vision Language Diffusion Action Models
- 166. Discrete Diffusion VLA: Bringing Discrete Diffusion to Action Decoding in Vision-Language-Action Policies
- 167. Vlaser: Vision-Language-Action Model with Synergistic Embodied Reasoning
- 168. X-VLA: Soft-Prompted Transformer as Scalable Cross-Embodiment Vision-Language-Action Model
- 169. Embodiment Transfer Learning for Vision-Language-Action Models
- 170. HiMoE-VLA: Hierarchical Mixture-of-Experts for Generalist Vision-Language-Action Policies
- 171. Green-VLA: Staged Vision-Language-Action Model for Generalist Robots
- 172. AC^2-VLA: Action-Context-Aware Adaptive Computation in Vision-Language-Action Models for Efficient Robotic Manipulation
- 173. MoS-VLA: A Vision-Language-Action Model with One-Shot Skill Adaptation
- 174. Asynchronous Fast-Slow Vision-Language-Action Policies for Whole-Body Robotic Manipulation
- 175. VLA-Forget: Vision-Language-Action Unlearning for Embodied Foundation Models
- 176. Membership Inference Attacks on Vision-Language-Action Models
- 177. A Survey on Efficient Vision-Language-Action Models
- 178. Survey of Vision-Language-Action Models for Embodied Manipulation
- 179. Embodied AI with Foundation Models for Mobile Service Robots: A Systematic Review
- 180. Toward Embodied AGI: A Review of Embodied AI and the Road Ahead
- 181. RoboNeuron: A Middle-Layer Infrastructure for Agent-Driven Orchestration in Embodied AI
- 182. Embodied Navigation Foundation Model
- 183. MiMo-Embodied: X-Embodied Foundation Model Technical Report
- 184. Open-H-Embodiment: A Large-Scale Dataset for Enabling Foundation Models in Medical Robotics
- 185. AlanaVLM: A Multimodal Embodied AI Foundation Model for Egocentric Video Understanding
- 186. 3D Generation for Embodied AI and Robotic Simulation: A Survey
- 187. DISCO: Language-Guided Manipulation with Diffusion Policies and Constrained Inpainting
- 188. Time-Unified Diffusion Policy with Action Discrimination for Robotic Manipulation
- 189. Learning Diffusion Policy from Primitive Skills for Robot Manipulation
- 190. Trace-Focused Diffusion Policy for Multi-Modal Action Disambiguation in Long-Horizon Robotic Manipulation
- 191. Gaze2Act: Gaze-Conditioned Vision-Language-Action Policies for Interactive Robot Manipulation
- 192. LACY: A Vision-Language Model-based Language-Action Cycle for Self-Improving Robotic Manipulation
- 193. villa-X: Enhancing Latent Action Modeling in Vision-Language-Action Models
- 194. InstructVLA: Vision-Language-Action Instruction Tuning from Understanding to Manipulation
- 195. Discrete Policy: Learning Disentangled Action Space for Multi-Task Robotic Manipulation
- 196. Towards Generalizable Vision-Language Robotic Manipulation: A Benchmark and LLM-guided 3D Policy
- 197. A Survey of Language-Conditioned Robot Manipulation
- 198. SafeEmbodAI: a Safety Framework for Mobile Robots in Embodied AI Systems
- 199. The Essential Role of Causality in Foundation World Models for Embodied AI
- 200. A call for embodied AI
- 201. Toward General-Purpose Robots via Foundation Models: A Survey and Meta-Analysis
- 202. What Breaks Embodied AI Security: LLM Vulnerabilities, CPS Flaws, or Something Else?