Kaggle学术活动中,对比表示学习的目标是学习一个嵌入空间,其中相似的样本对彼此靠近,而不同的样本对相距很远。对比学习可以应用于有监督和无监督设置。在处理无监督数据时,对比学习是自监督学习中最强大的方法之一。
对比学习损失函数在早期版本的对比学习损失函数中,只涉及一个正样本和一个负样本。最近训练目标的趋势是在一批中包含多个正负对。
对比损失对比损失(Chopra et al. 2005)是以对比方式用于深度度量学习的最早训练目标之一。
给定输入样本列表,每个都有对应的标签之中的类。我们想学习一个函数编码嵌入向量中,使得来自同一类的示例具有相似的嵌入,而来自不同类的样本具有非常不同的嵌入。
因此对比损失需要一对输入当它们来自同一类时最小化嵌入距离,否则最大化距离。
Triplet LossTriplet loss最初是在 FaceNet ( Schroff et al. 2015 ) 论文中提出的,用于学习同一个人在不同姿势和角度的人脸识别。
给定一个锚输入,我们选择一个正样本和一个负样本。Triplet Lss最小化锚输入与正样本之间的距离,并最大化锚输入与负样本的距离:
NCE噪声对比估计NCE是一种估计统计模型参数的方法,由Gutmann 在2010年提出。其想法是运行逻辑回归以区分目标数据和噪声。
其中为目标样本,为噪音样本。
InfoNCEInfoNCE使用分类交叉熵损失来识别一组不相关的噪声样本中的正样本。InfoNCE 损失优化了正确分类正样本的负对数概率:
对比学习关键点数据增强给定一个训练样本,可使用数据增强技术来创建自身的噪声版本,以作为正样本输入损失。正确的数据增强设置非常重要,它可以不修改语义的情况下引入样本的非本质变化,从而鼓励模型学习样本的核心语义。
例如,SimCLR中的实验表明,随机裁剪和随机颜色失真的组合是图像菲比学习的关键数据增强方法。
大 Batch Size在训练期间Batch Size设置的很大是许多对比学习方法(例如SimCLR、CLIP)成功的另一个关键因素。
只有当批大小足够大时,损失函数才能覆盖足够多样化的负样本集合,具有足够的挑战性,使模型能够学习有意义的表示来区分不同的示例。
Hard Negative ExampleHard Negative Example应该具有与锚样本不同的标签,但具有非常接近锚嵌入的嵌入特征。通过访问监督数据集中的真实标签,很容易识别特定于任务的硬否定。
Vision: Image Embedding基本图像增强有很多方法可以修改图像,同时保留其语义。我们可以使用以下任何一种扩充或多个操作的组合。
随机裁剪随机颜色失真随机高斯模糊随机颜色抖动随机水平翻转随机灰度转换AutoAugmentRandAugmentUDAMixupCutMixParallel AugmentationSimCLR计算同一样本的不同数据增强下的对比损失,使用InfoNCE搭配大Batch Size进行训练。
Language: Sentence Embedding基础的文本数据增强EDA定义了一组简单但功能强大的文本增强操作。给定一个句子,EDA 随机选择并应用四个简单操作之一:
同义词替换(SR)随机插入(RI)随机交换(RS)随机删除(RD)SimCSE使用Dropout噪声从一个句子来从无监督数据中学习。SimCSE将Dropout视为文本序列的数据增强。一个样本被简单地输入编码器两次,构成了一个正样本对,而其他批内样本被视为负对。
Sentence-BERTSBERT (Sentence-BERT) 使用孪生网络学习句子嵌入,通过嵌入对之间的余弦相似度来估计句子相似度。
每月滚动开赛,想要获取备赛计划
欢迎扫码联系我们,还能【免费领取】相关真题及解析!
© 2024. All Rights Reserved. 沪ICP备2023009024号-1