QiuQiu

I-JEPA 精读

  1. 摘要

(提出问题与方法)

在不依赖人为设计的多视图数据增强(见Research - Data Augementation)的情况下,通过自监督学习获得具有较强语义信息的图像表示。

latent space 中每个维度具体代表什么,不需要人工预先定义;但这个空间最终保留了什么信息,非常重要。

I‑JEPA 的逻辑是:

可见图片区域→预测缺失区域的 latent representation\text{可见图片区域} \rightarrow \text{预测缺失区域的 latent representation}

它不需要人工规定:

这些含义由训练自动形成。因此“latent 各维如何解释”确实不重要。

但它必须确保 latent:

(learning highly semantic image representations without relying on hand-crafted data-augmentations.)

(子问题, 什么是数据增强, 什么图片语义)

方法的attribute (我理解采用类rust的解释框架):

动机? 动机是什么

已有路线的问题:

路线一:invariance-based 方法

  1. 例如 SimCLR、DINO、iBOT:

x1=Augment⁡1(x),x2=Augment⁡2(x)x_1=\operatorname{Augment}_1(x),\qquad x_2=\operatorname{Augment}_2(x)

然后要求:

f(x1)≈f(x2)f(x_1)\approx f(x_2)

问题是:

路线二:生成式方法

例如 MAE:

visible patches→reconstruct masked pixels\text{visible patches} \rightarrow \text{reconstruct masked pixels}

问题是像素包含大量难以预测、但语义上不重要的细节:

为了重建这些像素,模型可能把大量能力用于低层细节。

I‑JEPA 的选择

I‑JEPA 试图取两者之间的一条路线:

不使用增强来规定 invariance\text{不使用增强来规定 invariance}

同时:

不预测原始像素,而是预测抽象 representation\text{不预测原始像素,而是预测抽象 representation}

因此可以把动机写成:

现有 invariance-based 方法依赖人为设计的数据增强,而生成式方法需要预测大量语义无关的像素细节。I‑JEPA 希望直接在 representation space 中预测缺失区域,从而在减少人工先验的同时,学习更高层的语义表示。

struct IJEPA {

task: SelfSupervisedRepresentationLearning,

input: Image,

context: VisibleImagePatches,

target: EMAEncoderRepresentations,

context_encoder: VisionTransformer,

target_encoder: VisionTransformer,

predictor: LightweightVisionTransformer,

prediction_space: RepresentationSpace,

loss: L2Distance,

generation: false,

handcrafted_view_augmentation: false,

}

更直观地说:

可见区域→context encodercontext representations→predictor被遮挡区域的 predicted representations\boxed{ \text{可见区域} \xrightarrow{\text{context encoder}} \text{context representations} \xrightarrow{\text{predictor}} \text{被遮挡区域的 predicted representations} }

目标则来自:

完整图像→target encodertarget representations\boxed{ \text{完整图像} \xrightarrow{\text{target encoder}} \text{target representations} }

然后比较:

L=∥z^target​−ztarget​∥22​

非生成式

正确,但最好写得更精确:

I‑JEPA 是非生成式预测方法:它预测被遮挡区域的 representation,而不重建该区域的像素。

因此它不是:

x^target≈xtarget\hat x_{\text{target}}\approx x_{\text{target}}

而是:

z^target≈ztarget\hat z_{\text{target}}\approx z_{\text{target}}

采用 masking strategy

可以进一步写成:

使用 multi-block masking strategy 构造预测任务:从一张图中选择一个 context block,并选择多个 target blocks,要求模型根据 context representations 预测 target representations。

要注意:target encoder 先处理完整图像,之后才从输出 representation 中选出 target blocks。并不是先把 target 输入遮掉,再分别编码它们。

sufficiently informative context block

这里的意思是:

context 必须保留足够多且空间分布足够广的图像信息,使模型有可能推断被遮挡区域的语义。

论文的默认设计是:

例如,要预测狗的头:

因此 informative 不是一个额外网络模块,而是对 context masking 策略的要求:

I(Zcontext;Ztarget)必须足够大I(Z_{\text{context}};Z_{\text{target}}) \quad\text{必须足够大}

直觉上就是 context 与 target 之间必须存在可学习的关系。