DenoiseRep
DenoiseRep: Denoising Model for Representation Learning[1]
论文引用[1]:作者是来自北交大的Zhengrui Xu等人。论文引用[1]:Xu, Zhengrui et al. “DenoiseRep: Denoising Model for Representation Learning.” Neural Information Processing Systems (2024).
Time
Key Words
- denoising layer
总结
- denosing model被证明是一个很强的生成model,但是很少用来做discriminative tasks。representation learning再discriminative tasks中是重要的。本文中,作者提出了新的Denoising model用于representation learning,通过联合feature extraction和denoising来提高feature discrimination,DenoiseRep将backbone中的每个embedding layer 视为一个denoising layer,处理cascaded embedding layers,就像step-by-step denoising features一样。这个框架统一了feature extraction和denoising,前者progressively将low-lelel的features嵌入到high-level,后者step-by-step 对feautures进行denoising。之后,DenoiseRep融合feature extraction和denoising layers的参数,理论上表明了融合之前和之后的等效性,使得feature denoising 是computation-free的,使得feature denoising无需额外计算。DenoiseRep是一个label-free的算法,提高了features,但也和label互补。
DDPM或者Diffusion model已被证明是一个powerful generative model,generative models能够产生vivid samples,通过对data \(P(X,Y)\) 的联合分布进行建模,\(X\) 是sample, \(Y\) 是condition,Diffusion models通过给数据增加高斯噪声,训练一个denoising model来预测噪声。Diffusion models能够生成多种和rich samples,例如Stable Diffusion, DALL系列,然而,它在discriminative models上的应用还没有被大量的explored,不同于生成模型,discriminative models(判别式模型) 通过对数据 \(P(X|Y)\) 的边缘分布进行建模,预测data labels,\(Y\) 可以是多种labels,例如image tags for classification。当前,有一些方法是基于diffusion models的,例如, DiffusionDeet 是一个新的object detection框架,将object detection建模为一个denoising diffusion过程,从noised boxes到object boxes,将object detection描述为一个generative denoising 过程,相比于之前的detectors,表现比较好。DiffSeg用于分割,是一个无监督的zero-shot sample segmentation方法,引入了一个简单高效的iterative merging process,来测量KL 散度之间的attention maps,将它们融合成一个高效的segmentation mask,提出的方法不需要训练来提取任何image的高质量的segmentation。 这些方法是针对特定任务精心设计的,需要特定的数据结构,例如, DiffusionDet 用noise boxes,DiffSeg用noise segmentation,在本文中,作者用了一个更general的conception,denoising model是如何提高representation learning的,作者将ReID作为一个benchmark tasks,ReID旨在匹配不同camera下的行人,需要更identity-discriminative feature。一个直接的方式是将denoising 过程用在backbone的final feature,降低最后一层的noise,使得feature 更加具有区分性,然而,这种方式是需要大量计算的,因为denoising layer需要处理前一层的输出,考虑到backbone包含cascaded embedding layers,作者提出了一个新的perspective:将每个embedding layer视为一个denoising layer,使得能够处理cascaded lyaers,就像逐步进行denoising layer一样。这个方法将backbone变成了一系列的denoising layers,每个在不同的feature extraction level上工作,主要的问题来自于denoising layer要求输出和输入features的存在于同一个feature space,然而,典型的backbone中, layers逐步地将features从一个low level map到一个high level,意味着feature space逐层变化,和denoising layer的要求是冲突的。
为了解决上述的困难,高效地将Denoising process用于提高判别式任务,作者提出了Denoising model用于Representation learning(DenoiseRep): 首先,利用一个训练好的backbone,然后在接下来的所有步骤中固定它,这个step是一个free launch,因为能够容易地获得公开的backbone,给定一个backbone和image,得到很多features,接下来,在这些特征上训练denoising layers,denoising layers的权重是随机初始化的,它们的权重不是共享的,训练过程和DDPM一样,唯一的区别是DDPM中的denoising layer采取动态的 \(t \in [1,T]\),作者的denoising layers采取固定的 \(n \in [1,N]\), \(n\) 是layer index,\(T\) 是denoise times, \(N\) 是backbone layer的数量。最后,考虑到N个denoising layer消耗额外的执行latency,作者提出了一个新的feature extraction和feature fusion的方法,算法将额外的denoising layers的参数融合到现有的embedding layers,使得联合feature extraction和denoising,不需要额外的计算成本,作者也理论上证明了参数融合之前和之后的等价,作者的贡献如下:
- 提出了DenoiseRep,将denoising process集成到判别式任务中,将backbone的N个cascaded embedding layers视为T次 denoising layers,这个idea联合了feature extraction和denoising。
- 提出的denoiseRep将去噪层的参数融合到对应的embedding layers中,证明了它们的等价性。
生成式的models在估计class probabilities之前学习输入的分布,一个generative model通过学习输入数据的概率分布学习数据的生成过程,然后产生新的data samples,这个生成模型首先估计类别的条件密度 \(P(x|y=k)\) 和先验类别 \(P(y=k)\),\(P(x)\) 时从过全概率公式得到,因此建模每个数据类型的概率分布,生成模型通过建模数据分布来生成新的samples,例如GANs和VAEs,都是经典的生成模型,通过学习数据分布的潜在表征,来生成真实samples,最近的研究聚焦于用diffusion models用于generative tasks,diffusion model首次在2015年被提出来,旨在消除连续应用到训练图像中的高斯噪声,DDPM在2020年提出来。
判别式模型学习条件分布 \(P(y|x)\), \(x\) 是数据,\(y\) 时task-specific features,例如,分类任务将data映射到tags
一个常见的discriminative taks的架构包含一个vision backbone,来提取discriminative features(ResNet)和task-specific head,很明显,visino backbone是representation learning的central,文本中,将feature extraction和feature denoising集成到单个vision backbone中。
作者采用扩散建模方法,通过 T 个步骤对含噪特征进行去噪,以获得干净的特征,在一开始,用backbone输出的feature outputs作为data samples用于diffusion training,通过连续地加噪声和通过网络学习得到noisy samples,在推理阶段,对output features执行T-step denoising,来得到cleaner features,提高features的expressiveness。
提出的方法会造成额外的推理延迟,这是由于denoising layers的recursive calling造成的,为了解决这个问题,作者提出来将feature denoising layer的参数融合到backbone中现有的embedding layers的参数,核心的idea是将每个transformer encoder block的linear layer扩展为两个branches,一个是用于原始的embedding layer,另一个是额外的denoising layer,在训练阶段,冻结embedding layers,只训练denoising layers;推理的时候,融合embedding和denoising layers的预训练参数,将两个branches融合到一个branch,不需要额外的推理时间。
\(Fig.1^{[1]}\)