前言
本文是笔者在阅读完论文《Noisy Correspondence Learning with Meta Similarity Correction》后的一些笔记概括以帮助理解,包含了个人想法,如有谬误,欢迎指正。更多细节请见原文。
论文链接:https://ieeexplore.ieee.org/document/10204064
CVPR2023 基于元相似性校正的噪声对应学习
一、研究背景
在跨模态任务中,由于多模态的数据更难以手动标注,许多任务都倾向于使用在互联网收集共发生数据的数据集,因此引入了数据的噪声对应(对齐误差)问题。
二、研究动机
NIPS 2021的NCR方法首先研究了这一问题,该方法基于DNNs的记忆效果,导致在高噪声比下性能较差。为了解决这一问题,我们提出了一个元相似度校正网络(MSCN),旨在为主网的噪声特征提供可靠的相似度评分。同时,我们进一步提出了一种元知识引导的数据净化策略,以去除可能存在错误对应关系的样本。
三、相关工作
元学习的目标是在比传统学习更高级的水平上学习,比如学习更新规则,找到容易微调的参数,或者适应新任务。最近,有研究使用元学习来寻找对噪声标签具有鲁棒性的模型参数。例如,在常规训练之前优化了元目标,使模型不会对噪声过拟合;使用元过程自动为训练样本分配权重。MLC提出了一种以元方式训练的标签校正网络,它可以为带噪声的训练数据生成可靠的标签。
这篇文章的思路跟MLC类似:将样本中图文是否匹配的判别工作视为一个单独的二分类任务,使用可训练的MSCN模型进行训练,由此得到更可靠的相似性判别分数。
四、解决方案
1、元数据构建
原始数据集会被划分为正元数据集和训练集,正元样本从正元数据及中提取,负元样本从训练集中的提取,并人为构建不匹配的负元样本对。值得注意的是,元数据集的大小远小于训练集大小。
2、元网络结构
元网络一个简洁的2层MLP,输入主网络的特征,输出[0,1]的相似性作为匹配概率。
3、训练流程
a) 第一阶段:输入训练集对主网络(SGRAG)进行训练,使模型具备基本的表征能力;
b) 第二阶段:输入元数据训练元网络,使元网络具备对样本匹配与否的判别能力;
c) 第三阶段:结合元网络对整个网络进行正式训练。
4、优化目标
正式训练阶段的损失函数设计如下:
a)
F
w
F_w
Fw是主网络的特征提取器;
b) V θ V_\theta Vθ是元网络的相似性判别器;
c) γ \gamma γ是相似性间隔,控制对模型输出的正负样本相似度之间的差值的容忍程度;对于这一点,个人理解:考虑 γ = 0 \gamma=0 γ=0的情形,对于第一项,如果 I i I_i Ii和 T i T_i Ti的相似性等于 I i I_i Ii和 T i − T_i^- Ti−(最难负文本)的相似性,第二项同理,那么损失函数值为0,相当于优化目标容许这种情况存在,没有做出惩罚。但是从模型优化的角度这是不合理的,会导致模型无法正确区分匹配的正样本和最难的负样本,因此需要加入 γ \gamma γ对此情形做出惩罚, γ \gamma γ的值越大,越要求模型对正样本输出的相似度高于最难负样本。
d) 整体是经典的双模态对比学习范式。
模型鲁棒学习的能力体现在对
γ
\gamma
γ的自适应调整上。
s
i
s_i
si是元网络对当前样本输出的归一化相似性(为了保证可计算,实际上是归到了
[
10
e
−
4
,
1
−
10
e
−
4
]
[10e-4,1-10e-4]
[10e−4,1−10e−4]),当预测接近1的时候
γ
\gamma
γ接近0,认为该样本大概率干净,放宽模型预测的正样本相似度和负样本之间的差值要求;当预测接近0的时候
γ
\gamma
γ最大,认为该样本大概率存在匹配噪声,对模型预测的正负样本之间相似性的差值从严处理,加大惩罚力度。
5、元网络的判别
由于三元损失的性质,即使采用MSCN得到的理想的相似分数,也会对噪声对产生正损失(原文:it remains to producepositive loss for the noisy pairs),从而导致模型与噪声拟合。为了解决这个问题,在训练时只使用干净的样本作为训练数据。对样本干净与否的判别,NCR采用的策略是利用DNNs的记忆效应,使用GMM拟合训练初期的损失进行判定。本文用混合模型拟合更直接的元网络相似性(个人理解:因为在元网络有效的前提下,对干净和噪声数据输出的相似性天然具备分布差异)。但是由于该相似性具备高度倾斜的特性,所以使用更适应这种类分布的BMM(Beta Mixture Model)。