河曲智叟 发表于 2024-9-18 10:17:13

论文阅读: SigLit | SigLip |Sigmoid Loss for Language Image Pre-Traini

论文所在:https://arxiv.org/pdf/2303.15343
项目所在:https://github.com/google-research/big_vision
发表时间:2023年3月27日
https://i-blog.csdnimg.cn/direct/b90f2fe733834aacb9c8cc5cb0fc6699.png
我们提出了一种用于语言图像预练习(SigLIP)的简单成对 Sigmoid 丧失。与使用 softmax 归一化的尺度对比学习差别,sigmoid 丧失仅对图像-文本对进行操纵,而且不需要对归一化的成对相似性进行全局视图。 sigmoid 丧失同时允许进一步扩大批量大小,同时在较小的批量大小下也能表现更好。结合Locked-image Tuning,我们仅用四个 TPUv4 芯片练习了一个 SigLiT 模型,该模型在两天内实现了84.5% ImageNet 零样本精度。批量大小与loss的分离,进一步使我们能够研究示例与对以及负与正比率的影响。最后,我们将batchsize推向极限,达到 100 万,而且发现增长批量大小的收益会减少,而更合理的批量大小 32 k 就足够。
1、Introduction

使用网络上的图像文本对的弱监视进行对比预练习正在成为获取通用盘算机视觉主干的首选方法,慢慢取代大型标志多类数据集上的预练习。高级头脑是使用配对数据同时学习图像和文本的对齐表示空间。开创性的工作 CLIP 和 ALIGN 建立了这种方法在大规模范围内的可行性,而且在其成功之后,许多大型图像文本数据集开始私下可用 和公开。预练习此类模型的尺度方法利用图像文本对比目标。它对齐图像并用于匹配(正)图像-文本对的文本嵌入,同时确保不相关(负)图像-文本对在嵌入空间中不相似。这是通过批量级基于 softmax 的对比丧失来实现的,应用两次以尺度化所有图像、然后所有文本的成对相似度分数。 softmax 的简单实现在数值上是不稳定的;通常通过在应用 softmax 之前减去最大输入值来稳定它,这需要再次遍历整个批次。
在本文中,我们提出了一个更简单的替换方案:Sigmoid 丧失。它不需要跨整个批次进行任何操纵,因此大大简化了分布式丧失的实现并进步了效率。此外,它在概念上将批量大小与使命的定义分离。我们将所提出的 sigmoid 丧失与多个设置中的尺度softmax 丧失进行了比力。特殊是,我们研究了基于sigmoid 的丧失,其中有两个图像文本学习的方法:CLIP 和 LiT ,我们分别称为 sigmoid 语言图像预练习(SigLIP)和sigmoid LiT(SigLiT)。我们发现,当批量大小小于16 k 时,sigmoid 丧失的表现显着优于 softmax 丧失。随着train批量大小的增长,差距就会缩小。紧张的是,sigmoid 丧失是对称的,只需要一次转达,而且典型的实现比 softmax 丧失需要更少的内存。这使得能够成功练习批量大小为 100 万的 SigLiT 模型。然而,我们发现,无论是 softmax 还是 sigmoid,性能都会随着批量大小的增长而饱和。好消息是,合理的批量大小(即 32 k)足以进行图像文本预练习。这一结论也实用于 100 多种语言的多语言 SigLIP train。
在表 1 中,我们提出了图像文本预练习的设置,需要适量的 TPUv4 芯片进行练习。 SigLiT 的效率令人惊讶,仅一天之内,在四个芯片上就达到了ImageNet 上 79.7% 的zero-shot精度。 SigLIP 从头开始练习,使用 32 个 TPUv4 芯片在 5 天内达到 73.4% 的zero-shot精度。这与 FLIP 和 CLIP 等之前的工作相比毫不逊色,后者在 256 个TPUv3 核心上分别需要大约 5 天和 10 天。当在SigLIP 中对预练习的视觉主干进行微调时(如表 1 所示),我们发现禁用预练习主干上的权重衰减会带来更好的结果(详细信息请拜见图 4)。我们希望我们的工作能够为使新兴的语言图像预练习范畴更轻易使用铺平蹊径。
https://i-blog.csdnimg.cn/direct/d32963588c2b470ead3f2f347b3fbe8d.png#pic_center
这里可以发现基于sigmoid的练习方式收敛更快,同时SigLiT比SigLIP结果更好。
2、Related Work

Contrastive learning with the sigmoid loss 之前的一项工作针对无监视降维使命提出了类似的 sigmoid 丧失 ;在对比图像文本学习范畴,绝大多数工作依靠于所推广的基于softmax的InfoNCE丧失。在监视分类中,Sigmoid 丧失已被证明比 softmax 丧失稍微更有效和更稳健 。
Contrastive language-image pre-training 自从 CLIP 和 ALIGN 将 softmax 对比学习 应用到大规模图像文本数据集以来,对比语言图像预练习变得盛行起来。两种模型在零样本迁徙使命(包括分类和检索)上都表现良好。后续工作表明,对比学习得到的预练习模型可以为微调、线性回归、对象检测、语义分割和视频使命提供良好的表示。
Generative language-image pre-training 除了softmax对比预练习之外,还提出了各种替换方案。 GIT 、SimVLM 和LEMON 使用生成文本解码器成功地预练习模型相反,CoCa 将这样的解码器添加到鉴别性CLIP/ALIGN 设置中,从而将两种方法的优缺点结合到一个非常强大的模型中。 BLIP 进一步提出了CapFilt,它使用生成解码器来创建更好的caption,并使用模型的鉴别部分来过滤对。语言-图像预练习是一个非常活跃的范畴,surveys 很快就过时了。
Efficient language-image pre-training 另一方面,很少有工作尝试使语言图像预练习更加高效。 LiT 和 FLIP 是值得注意的尝试,前者需要预先练习和locked的backbone,后者通过随机丢弃视觉标志来牺牲质量。 BASIC 和 LAION 着眼于缩放批量大小,但通过使用数百个芯片分别只能达到 16 k 和 160 k,而且前者还混合在大型私有分类数据集中 。最近的 Lion 优化器 声称能够降低练习本钱以达到类似的质量。
3、Method

在本节中,我们首先回首广泛使用的基于 softmax 的对比丧失。然后我们先容成对 sigmoid 丧失并讨论其有效实现。
给定一个小批量                                 B                         =                                 (                                       I                               1                                    ,                                       T                               1                                    )                            ,                            (                                       I                               2                                    ,                                       T                               2                                    )                            ,                            .                            。                                       B = {(I_1 , T_1 ), (I_2 , T_2), . 。}                  B=(I1​,T1​),(I2​,T2​),.。对于图像-文本对,对比学习目标鼓励匹配对                                 (                                 I                            i                                  ,                                 T                            i                                  )                              (I_i , T_i )                  (Ii​,Ti​)的嵌入相互对齐,同时将不匹配对                                 (                                 I                            i                                  ,                                 T                                       j                               ≠                               i                                          )                              (I_i , T_{j{\neq}i} )                  (Ii​,Tj=i​)的嵌入推开。出于实际目标,假设对于所有图像 i,与差别图像 j 关联的文本与 i 不相关,反之亦然。这种假设通常是有噪声的且不完美的。
基于图像-文本对,可以发现正例只有N个,而负例有N*(N-1)个,存在严峻的loss不均衡状态
3.1. Softmax loss for language image pre-training

当使用 softmax 丧失来形式化该目标时,图像模型 f(·) 和文本模型 g(·) 被练习为最小化以下目标,,
https://i-blog.csdnimg.cn/direct/9bbf1dfa89dc42ccbf2801d6b5086769.png
由于 softmax丧失的不对称性,softmax函数需要盘算两次:image->text softmax ; text-> image softmax
3.2 Sigmoid loss for language image pre-training

我们提出基于 sigmoid 的丧失独立处理每个图像文本对,有效地将学习问题转化为所有对组合数据集上的尺度二元分类,并为匹配对提供正标签(                                             I                            i                                  ,                                 T                            i                                       I_i ,T_i                  Ii​,Ti​)和所有其他对的负标签                                 (                                 I                            i                                  ,                                 T                                       j                               ≠                               i                                          )                              (I_i , T_{j{\neq}i} )                  (Ii​,Tj=i​)。它的定义如下:
https://i-blog.csdnimg.cn/direct/ba6c13e933574b8aad14656d9a7816e9.png
其中                                              z                                       i                               ,                               j                                                 z_{i,j}                  zi,j​是给定图像和文本输入的标签,假如它们配对则等于 1,否则等于 1。在化过程中,来自许多负面因素的严峻不平衡在丧失中占主导职位,导致大量的初始优化步骤试图纠正这种偏差。
为了缓解loss不均衡,我们引入了一个额外的可学习偏差项 b ,类似于温度 t。我们将 t 和 b 分别初始化为 log 10 和- 10。这确保练习开始时大抵靠近先前的练习,而且不需要大量的过度校正。算法1 提出了用于语言图像预练习的 sigmoid 丧失的伪代码实现。
这里提出对sigmoid函数进行修改,制止loss不均衡;基于可学习参数对x进行缩放,并设置可学习参数b作为偏置项
3.3. Efficient “chunked” implementation

对比练习通常利用数据并行性。 在D个装备之间拆分数据时盘算丧失需要收集所有具有昂贵全收集的嵌入,更紧张的是,内存密集型|B| × |B|成对相似性矩阵。
然而,sigmoid 丧失特殊适合内存高效、快速和数值稳定的实现,以改善这两个问题。将每个装备批量大小表示为 b = |B|/D ,丧失重新表述为:
https://i-blog.csdnimg.cn/direct/abe4825c8c794560bc4309fd3615e2ff.png#pic_center
这对于 sigmoid 丧失来说特殊简单,因为每一对都是丧失中的独立项。图 1 阐明了这一点。换句话说,我们首先盘算对应于正对和 b−1 负对的丧失分量。然后我们跨装备排列表示,因此每个装备从其相邻装备中获取负值(和 B 的下一次迭代)。然后盘算该块的丧失(总和 C)。这是在每个装备中独立完成的,以便每个装备盘算相对于其当地批次b 的丧失。然后可以简单地将所有装备的损耗相加(总和 A)。单独的团体排列(对于总和 B)很快(事实上,D 团体排列通常比 D 装备之间的两次全聚集更快),而且任何给定时刻的内存本钱都从                                    ∣                         B                                 ∣                            2                                       |B|^2                  ∣B∣2 降低至                                             b                            2                                       b^2                  b2 (对于总和 C)。通常 b 是常数,如缩放|B|这是通过增长加速器的数量来实现的。由于与批量大小成二次方,普通丧失盘算很快成为扩展的瓶颈。这种分块方法可以在相对较少的装备上进行批量大小超过 100 万的练习.
https://i-blog.csdnimg.cn/direct/2269842ebd3747e0858560411589f0cf.png
这里提出对跨装备的数据进行装备间的roll操纵,在数据移动一次后盘算一次loss,可以有限的装备中扩大模型练习时的batchsize
4. Results

在本节中,我们将在各种批量大小下评估所提出的SigLiT 和 SigLIP 模型。我们讨论使用 SigLiT 和SigLIP配置,通过少量加速器芯片可以实现什么。我们还扼要讨论了批量大小对多语言图像预练习的影响。我们消除了大批量稳定性修改和引入的学习偏差项的紧张性,并提出了一项关于 sigmoid 丧失中正负对比率影响的研究。最后,我们探索 SigLIP 的数据噪声稳健性。为了验证我们的模型,我们报告了 ImageNet 数据集 上的零样本传输结果和 XM3600 数据集上 36 种语言的零样本检索结果 。我们所有的实行默认使用ScalingViT-Adafactor 优化器 。
4.1. SigLiT: Scaling batch size to the limit

按照,我们使用 ViT-g 视觉模型对图像使用相同的预盘算嵌入,并使用 LiT 图像文本数据集 使用相同的超参数从头开始练习根本大小的文本塔。
我们对从 512 到 1 M 的各种批量大小进行了研究,展示了批量大小对对比学习的影响。结果如图2(左)所示。当批量大小小于 16 k 时,sigmoid 丧失大幅优于 softmax 丧失。随着批量大小的增长,我们观察到 softmax 丧失很快就会迎头赶上,而且在批量大小足够大的情况下,其性能大概略低于 sigmoid丧失。总的来说,我们建议对大批量大小也使用SigLIP 配置,因为它简单、节流盘算且实现简单、内存高效。
https://i-blog.csdnimg.cn/direct/4b46deed6521441a8b96408b90945e59.png
人们同等以为,对比学习受益于大batchsize,而大多数现有研究都停留在 64 k 批量大小 。我们成功练习了 100 万批大小的 SigLiT 模型,以探索对比学习的极限。令我们惊讶的是,性能在 32 k批量大小时达到饱和,进一步扩大批量大小只会带来稍微的提升,而且模型在256 k 批量大小。我们最好的 SigLiT ,在 ImageNet 上实现了 84.7% 的零样本传输精度,而原始 LiT 论文报告了使用 10 倍大的 g 大小文本模型时的得分稍高一些,为 85.2%。图 3 显示了差别批量大小的练习持续时间的影响。它表明,当练习足够长的时间时,大的 262 k 批量大小显着优于较小的 8 k 批量大小。请注意,对于较短的练习持续时间,大批量会导致更新步骤的绝对数量较少,因此需要更多时间来加速。
这里主要表明batchsize超过32k后,收益已经很不显着了。SIgLiT比原始的LiT的文本模型小许多,但精度险些靠近
4.2. SigLIP: Sigmoid loss is beneficial for languageimage pre-training

我们仅使用英文图像和文本对在 WebLI 数据集 上预练习 SigLIP 模型。我们使用 CLIP (WebLI) 来表示在 WebLI 上使用尺度 softmax 丧失预练习的CLIP 基线。我们使用中等大小的模型:B/16 ViT 用于图像嵌入,B 大小的transformer用于文本嵌入。输入图像的大小调解为 224×224 分辨率。文本由在English C4 数据集 上练习的 32 k 词汇句子分词器 进行标志,最多保存 16 个文本标志。图 2 中图显示了SigLIP 结果,batchsize小于 32 k 时,SigLIP 优于CLIP (WebLI) 基线。另一方面,sigmoid 丧失的内存效率可以实现更大的批量大小。比方,对于四个TPU-v4 芯片,我们可以使用 Base SigLIP 获得 4096的批量大小,但使用相应的 CLIP 模型只能获得 2048的批量大小。这两个优点共同证明了 sigmoid 丧失对于固定资源的语言图像预练习的显着长处,这将在 4.5节中讨论。
随着批量大小的增长,Sigmoid 丧失和 Softmax 丧失之间的差距缩小。 SigLIP 在批量大小为 32 k 时表现最佳,而 softmax 丧失需要 98 k 才气获得最佳性能,而且仍然没有优于基于 sigmoid 。进一步扩展,更大的批量大小(比方 307 k)会侵害这两种丧失。
相比于softmax,sigmoid显著的降低了大batchsize对练习的影响,sigmoid以32k batchsize为峰值,而sofamax的峰值为98k,且结果也不如sigmoid
4.3. mSigLIP: Multi-lingual pre-training

我们通过保存 WebLI 数据集中的所有 100 种语言来进一步扩大练习数据 。对于多语言数据,通常需要使用更大的国际词汇量。我们首先验证两个标志器的影响:一个具有 32 k 个标志的小型多语言词汇表 ,以及一个具有 250 k 个标志的大型多语言词汇表 。我们针对 9 亿个总样本练习了 B 大小的 ViT 和文本模型,并观察到使用更大词汇量时略高于 1% 的改进。
然而,对于非常大的词汇量来说,标志嵌入会变得巨大。按照尺度设置,我们需要存储一个 N × W令牌嵌入查找表来练习多语言模型,其中 N 是上面提到的词汇量大小,W 是文本模型的嵌入维度。为了节流内存,我们建议使用"瓶颈"令牌嵌入。我们使用N × K 嵌入矩阵和附加的 K × W 投影,其中瓶颈 K比 W 小得多。在我们的实行中,我们观察到使用具有瓶颈的大型多语言词汇可以像使用小型多语言词汇一样有效地扩大规模。详细来说,通过为 W = 768 的Base 架构启用大小 K = 96 的瓶颈,与使用完整的250k 词汇相比,我们在 ImageNet 零样本传输上仅看到约 0.5% 的质量下降。
随着内存的改进,我们针对差别批量大小练习mSigLIP 模型,统共看到了 300 亿个示例。表 2 和图 2(右图)显示告终果。我们期望大批量能够改善多语言预练习,其中模型在单个小批量中将来自同一语言的更多示例视为硬负例。然而,我们没有观察到批量大小大于 32 k 的显着改进。 32 k 的批量大小也足以满足多语言设置。在 XM3600 跨模态检索使命中,我们发现超过 32 k 批量大小会导致平均结果更差,而在 ImageNet 零样本传输上则保持稳定。mSigLIP 在 XM3600 文本到图像检索使命上设置了新的最先辈技能,仅使用根本尺寸模型。我们的最佳结果是 34.9%,比之前报告的使用更大的 40 亿 ViT-e模型的尺度 LiT 模型 的结果 28.5% 高出6% 以上。我们在第 4.6 节中进一步扩大了 mSigLIP 练习的规模。
https://i-blog.csdnimg.cn/direct/3158bd7341e049d083a9ed320cf1d1bb.png#pic_center
这里展示了多言语模式下,最佳batchsize还是32k
4.4. SigLiT with four TPU-v4 chips

对于许多从业者来说,紧张的问题通常是"可以用有限的资源练习么?"我们在本节中探索 SigLiT模型的使用,仅使用四个 TPU-v4 芯片,因为内存效率 sigmoid 丧失是合适的对于这个应用场景。
我们遵循与 4.1 节相同的设置。我们使用公开的ViT-AugReg-B/8 模型作为冻结 ( ) 视觉塔,并预先盘算嵌入来加速练习 。文本模型是一个大型Transformer,但深度仅为 12 层(而不是 24 层)。它使用 LION 优化器进行练习,具有解耦权重衰减                                    1                         ×                         1                                 0                                       −                               7                                                 1× 10^{-7}                  1×10−7,学习率线性预热超过 6.5k 步,直至峰值                                    1                         ×                         1                                 0                                       −                               4                                                 1× 10^{-4}                  1×10−4,然后进行余弦衰减至0. 我们统共练习了65000 步,批量大小为 32k,这使得练习时间不到一天。表 1 显示了在四个芯片上练习模型一天的结果,实现了79.7% 0-shot ImageNet 分类准确率;在这种有限的资源体制下非常有竞争力。使用 ViT-g/14 模型作为视觉塔和大型文本塔,我们可以在两天内涵四个芯片上以20 k 批量大小进行 107 k 个步骤的练习。这进一步将0-shot ImageNet 分类准确率提升至 84.5%。
https://i-blog.csdnimg.cn/direct/6730ec995b7440e9bfd2c4da64d0d8aa.jpeg#pic_center
4.5. SigLIP with a small amount of TPU-v4 chips

一样平常来说,从头开始练习 CLIP 模型需要大量资源,而使用 SigLIP 可以用更少的芯片来练习更大的练习批量。在本节中,我们将探索使用预练习权重有效练习 SigLIP 模型的方法。我们使用预练习的权重来初始化图像模型来加速预练习,使用公共且未锁定的ViT-AugReg-B/16 模型来初始化我们的视觉塔,并在与 SigLIP 使用的相同 WebLI 英语数据上进行微调。在所有实行中,我们对预练习的图像塔应用 0.1的学习率乘数,以使其适合微调。
图 4 显示了未锁定的微调结果以及从头开始随机初始化的基线。我们使用 16 个 TPU-v4 芯片,并以 16k 批量大小练习 2.4 B 示例。我们发现,微调设置在开箱即用时表现不佳;这与之前的工作同等,其中调解图像模型降低了视觉表示质量。 ImageNet10-shot 线性分类证明了这一点,在图 4 中,经过微调的设置仅比从头开始的基线好一点。
https://i-blog.csdnimg.cn/direct/f83c070a9ffb4411a364d2ef4c2f62c7.png#pic_center
我们假设应用于预练习权重的默认权重衰减会降低其有效性。受中不使用权重衰减的微调方法的开导,我们还建议在 SigLIP 练习的预练习权重上禁用权重衰减。因此,权重衰减仅实用于文本模型中随机初始化的权重。这个简单的修改显着改善了SigLIP 结果。图 4 显示,通过我们改进的方法,SigLIP 在 ImageNet 上达到 71% 的 0-shot 准确率,使用 16k 批量大小,在 16 个芯片上练习三天。我们还在表 1 的底行中展示了从头开始的结果:使用 32 个 TPUv4 芯片仅两天,SigLIP 就实现了72.1% 的 0-shot 准确率。这显着降低了练习本钱,比方与 中报告的 CLIP(大约 2500 个 TPUv3天,占 72.6%)相比。
4.6. Scaling up SigLIP and mSigLIP

在本节中,我们通过"过度练习"模型来扩展 SigLIP。我们在表 3 中展示了使用 ViT-B、ViT-L 或So-400m 作为视觉编码器以及相同大小的文本编码器(分别为 B、L 和 So-400m)的结果。按照第 4.2 节中描述的方法,我们针对批量大小为 32 k 的 400 亿个示例练习这两个模型,但使用 (256/16) 2 = 256 个图像块和64 个文本标志(而不是 16 个)。为了获得差别分辨率的SigLIP 模型,我们在目标分辨率下练习了 50 亿个样本,学习率降低了 100 倍,而且没有权重衰减。在表 3中,我们报告了 ImageNet 、ObjectNet 、ImageNet-v2 、ImageNet ReaL 和零样本图像到文本 (Iâ) 的零样天职类结果T)检索,MSCOCO 上的文本到图像(IâT)检索结果。
https://i-blog.csdnimg.cn/direct/c519d1e2f5b74e2d84bf23c6429ef8d5.png#pic_center
这里对比400M视觉编码器的SigLIP模型,可以发现还是略差与SigLiT g/14模型
我们还以同样的方式扩展了多语言 mSigLIP ViT-B 模型。我们在 XM3600 基准测试上报告了 36 种语言的图像文本检索结果 。放大的 mSigLIP ViT-B 模型在根本模型中实现了最先辈的 42.6% 图像检索召回率@1 和54.1% 文本检索召回率@1。这稍微优于中的大型模型,获得了 42.96% 的图像检索召回率@1。详细结果见附录表 9 和图 8,标志为 *32 k。
https://i-blog.csdnimg.cn/direct/9cbeb77c43c348f6abfc1d6b13c41660.png#pic_center
https://i-blog.csdnimg.cn/direct/b9f50c20c9d84371a2cb34bf882fa5ed.png#pic_center
4.7. Stabilizing large-batch training

当我们转向大batchsize时,使用 Transformer 进行的语言图像预练习变得越来越不稳定,纵然使用适度大小的模型(比方根本大小)也是如此。这些不稳定的原因是梯度范数,它转化为权重的大幅变化,大概会破坏练习过程的稳定性,见图 5。我们观察到,将 Adam 和AdaFactor 中的                                              β                            2                                       β_2                  β2​ 从默认值 0.999 减少到0.95()足以稳定练习。直观上,这可以更快地从梯度峰值中恢复。我们为所有实行选择设置 β2 = 0.95。
https://i-blog.csdnimg.cn/direct/7aa95d1916414e8c9e9909122b03a88b.png#pic_center
这里主要分享了调解学习率优化器中的                                                    β                               2                                          β_2                     β2​参数来是loss稳定
4.8. Negative ratio in sigmoid loss

当将视角从 softmax 的"选择正确的类"视图转移到 sigmoid 的"评估这一对"视图时,出现的一个问题是正对与负对的不平衡。对于批量大小|B|,批量包含|B|正对,但                                 ∣                         B                                 ∣                            2                                  ∗                         ∣                         B                         ∣                              |B|^2 * |B|                  ∣B∣2∗∣B∣负面例子。在 16 k 的适度批量大小中,实际上只有 16 k 个正样本有 268 M 个负样本。同时,由于 sigmoid 丧失分解为每个示例丧失的总和,因此我们可以进行受控实行来研究小批量组合和显示的结果访问过的例子的贡献。我们在 SigLiT 设置中以批量大小 16 k 进行 900 M 步骤进行实行,并通过屏蔽掉(即忽略)足够的负面示例来改变批次的组成,以达到目标"正:负"比率,详细有如下方法:
Random:随机选择负对进行屏蔽。
Hard:保存最难的负对(最高丧失)。
Easy:保存最简单的负对(丧失最低)。
Hard + matching total pairs seen:在练习固定步数时屏蔽示例确实会减少练习期间看到的对总数。因此,在匹配对设置中,我们随练习步骤数增长掩蔽比,以保持看到的对数恒定。
图 6 显示了各种掩蔽策略的结果。随机删除负数以重新平衡确实会降低性能。保存最简单的例子根本不起作用,而保存最难的否定则险些有效保持质量,这表明,正如可以预料的那样,许多消极方面的学习都来自于更难的例子。为了匹配所看到的总对,在最难的示例上进行更长时间的练习,性能略有进步,这进一步证实了这一点。
https://i-blog.csdnimg.cn/direct/91826060dfbf4e1cb2c82fbe10eace16.png#pic_center
这里阐明了,基于样本选择的,差别loss均衡策略对练习结果的影响,可以发现动态hard样本结果最佳
4.9. Bias term in sigmoid loss

我们使用批量大小为 8 k 的 Base 架构消除了丧失函数中的偏差项,并使用 SigLIP 设置对 900M 个示例进行了练习。 ImageNet 、Oxford-iiit pet 和 Cifar100 报告了零样本传输结果。表 4 列出了 sigmoid 丧失中包含和不包含偏差项的结果。
https://i-blog.csdnimg.cn/direct/3d970954232640aea32c3e2795bb06d8.png#pic_center
通过 a-10 初始化启用偏差项可以持续进步所有使命的性能。这是因为偏差项确保练习开始时靠近先验值,从而防止早期优化中出现严峻的过度校正。相反,随机选择的偏差项初始化,比方表 4 中的 0 初始化,无法办理过度校正问题,导致结果显着更差。当使用较小的温度 t 初始化时,这种结果尤其显着。我们将偏置和温度初始化设置为 b = - 10 和 t =log10(因此 t = 10)作为所有实行的默认值。
这里通过系列实行证明3.2中实行超参数设置的合理性
4.10. Label noise robustness

先前的工作证明,当使用 sigmoid 丧失进行分类模型时,针对标签噪声的鲁棒性得到了进步 。面对盛行的大规模图像文本数据集众所周知的噪声性质,这个属性在这里特殊有用。为了针对 SigLIP 进行研究,我们针对 36 亿个可见示例,以批量大小 16384练习 M/16 图像模型以及 M 文本模型。我们使用以下方法之一破坏练习数据:


[*]图像:以概率p,用均匀随机噪声替换图像。
[*]文本:以概率 p,用新的随机采样标志序列替换标志化文本,最多可达某个(采样)序列长度。
[*]批次对齐:随机打乱批次中 p% 的次序。
[*]图像和文本:以概率 p 分别应用两者。
[*]图像、文本和batch:除了 (4),还打乱了对齐的分数 p。
图 7 显示了差别损坏大概性的结果。使用 sigmoid丧失练习的模型对于各种添加的噪声越来越稳健。
https://i-blog.csdnimg.cn/direct/4ad50bd042a64667892a7487220d3751.png
这里表明sigmoid练习出来的模型稳定性更高,同时表明复合状态的的数据调解鲁棒性最好
5. Conclusion

我们对两个使用 sigmoid 丧失的语言图像预练习实例进行了研究:SigLiT 和 SigLIP。我们的结果表明,sigmoid 丧失比 softmax 基线表现更好,特殊是对于小批量练习。这种丧失函数的内存效率也更高,它允许更大的练习批量大小,而不需要额外的资源。我们对对比学习中的批量大小进行了彻底的研究。令人惊讶的是,我们发现相对适中的 32 k 批量大小可以产生近乎最佳的性能。为了更好地理解 sigmoid 丧失中引入的偏差项、对数据噪声的鲁棒性以及sigmoid 丧失中正负对比率的影响,我们进行了进一步的研究。我们希望这项工作能够利用有限的资源促进语言图像预练习研究。
致谢。我们感谢 Daniel Keysers、Ilya Tolstikhin、Olivier Bousquet 和 Michael Tschannen 对本文提出的宝贵反馈和讨论。我们感谢 Joan Puigcerver、JosipDjolonga 和 Black Hechtman 对分块对比丧失的有效实现进行的讨论。我们感谢 Kaiming He 和 Xinlei Chen 对β 2 的讨论以稳定练习。我们还要感谢 Ross Wightman在本文第一个版本的伪代码中发现了一个错误,感谢Boris Dayma 和 Krzysztof Maziarz 在第二个和第三个版本中发现了导致 t 与 t 混淆的拼写错误。我们感谢Google Deepmind 团队提供了支持性的研究情况。我们使用大视觉代码库 进行该项目中的所有实行。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 论文阅读: SigLit | SigLip |Sigmoid Loss for Language Image Pre-Traini