对比学习方法(3)——BYOL

BYOL(Bootstrap Your Own Latent)是一种无监督对比学习方法,旨在通过学习增强表示的自监督学习来训练神经网络。与传统的对比学习方法(如SimCLR、MoCo等)不同,BYOL不依赖于负样本对比的负对,而是通过一种创新的设计,利用两个网络(在线网络和目标网络)的交互来学习表示。这种设计简化了训练过程,同时避免了对大量负样本的需求

1. BYOL的核心框架

BYOL的核心结构包括两个主要组件:

  • 在线网络(Online Network):负责学习任务,它包含一个编码器、一个映射头和一个预测器
  • 目标网络(Target Network):它的结构与在线网络相同,但参数更新方式不同。

算法具体流程如下:

  1. 输入增强:给定一个样本 x x x,通过随机数据增强生成两个不同的视图 x 1 x_1 x1​ 和 x 2 x_2 x2​。
  2. 特征提取
    • 在线网络的编码器对 x 1 x_1 x1​ 进行特征提取,生成嵌入表示 z 1 z_1 z1​,然后通过映射头得到映射表示 q 1 q_1 q1​。
    • 目标网络的编码器对 x 2 x_2 x2​ 进行特征提取,生成嵌入表示 z 2 z_2 z2​,再通过映射头生成映射表示 y 2 y_2 y2​。
  3. 预测:在线网络中的预测器 g ( ⋅ ) g(\cdot) g() q 1 q_1 q1​ 转化为预测表示 p 1 p_1 p1​。
  4. 一致性目标:BYOL的目标是使 p 1 p_1 p1​ 和 y 2 y_2 y2​ 的表示尽可能相似(通过计算相似性损失)。同样地,反向操作对 x 2 x_2 x2​ 和 x 1 x_1 x1​ 也计算相似性损失,即 x 2 x_2 x2 输入到在线网络, x 1 x_1 x1 输入到目标网络。

2. 参数更新

BYOL采用不同的策略来更新在线网络和目标网络的参数。

在线网络 通过 反向传播 优化标准梯度下降来更新。

目标网络 通过 指数移动平均EMA)更新,其参数是在线网络参数的指数加权平均值。公式如下: θ target ← τ θ target + ( 1 − τ ) θ online \theta_{\text{target}} \leftarrow \tau \theta_{\text{target}} + (1 - \tau) \theta_{\text{online}} θtargetτθtarget+(1τ)θonline 其中, τ \tau τ 是一个平滑系数,通常设为接近于 1 1 1 的值(如 0.99 0.99 0.99)。这种设计确保了目标网络的参数变化更平滑,提供一个稳定的对齐目标

3. 损失函数

BYOL使用 余弦相似度损失 来衡量两个表示之间的相似性。假设 p 1 p_1 p1​ 和 y 2 y_2 y2​ 是经过归一化的向量,损失函数定义为: L ( p 1 , y 2 ) = − p 1 ⋅ y 2 ∥ p 1 ∥ ∥ y 2 ∥ . \mathcal{L}(p_1, y_2) = -\frac{p_1 \cdot y_2}{\|p_1\| \|y_2\|}. L(p1,y2)=p1∥∥y2p1y2. 总的损失是从两个视图的对称损失之和: L total = L ( p 1 , y 2 ) + L ( p 2 , y 1 ) . \mathcal{L}_{\text{total}} = \mathcal{L}(p_1, y_2) + \mathcal{L}(p_2, y_1). Ltotal=L(p1,y2)+L(p2,y1).

4. 特点和优势

  • 无需负样本:BYOL摆脱了对比学习中依赖负样本的需求,简化了实现难度,并避免了负样本选择不当可能导致的优化问题。
  • 训练稳定性:通过目标网络的EMA更新机制,BYOL在训练过程中表现出极大的稳定性。
  • 泛化性强:BYOL能学习到高质量的表征,适用于下游任务(如分类、检测)的迁移学习。
  • 避免崩塌问题:理论上,直接优化BYOL的目标可能导致模型学到恒定表示(即崩塌)。然而,BYOL的设计(包括对称视图损失目标网络EMA更新)在实践中有效避免了这种问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值