[论文阅读] Variational Adversarial Active Learning

论文地址:https://arxiv.org/abs/1904.00370
代码:https://github.com/sinhasam/vaal
发表于:ICCV’19

Abstract

主动学习的目的是通过对最有代表性的查询进行采样,由专家进行标注,从而开发出高效标签的算法。我们描述了一种基于池的半监督主动学习算法,它以对抗的方式隐式地学习了这种采样机制。与传统的主动学习算法不同,我们的方法是与任务无关的,也就是说,它不依赖于我们试图获取标注数据的任务的性能。我们的方法使用变分自编码器(VAE)和训练好的对抗网络来学习潜在空间,以区分未标注和标注的数据。VAE和对抗网络之间的最大最小博弈是这样进行的:VAE试图欺骗对抗网络去预测,所有的数据点都来自已标注池;对抗网络则学习如何区分潜在空间中的不相似性。我们在各种图像分类和语义分割基准数据集上广泛评估了我们的方法,并在CIFAR10/100、Caltech-256、ImageNet、Cityscapes和BDD100K上建立了新的SOTA。我们的结果表明,我们的对抗性方法在大规模环境中学习了一个有效的低维潜在空间,并提供了一个计算效率高的采样方法。

I. Motivation

本文的出发点严格来讲可以理解如下。之前的很多方法,其uncertainty都是基于模型的,也就是说我们得先有个分割/分类等模型去计算一个预测结果,然后从结果的好坏去分析相应的被预测样本的价值。而本文的uncertainty是基于数据本身的,也就是说并非基于预测结果本身去分析,而是直接基于样本自身的特征去处理。

核心思想:利用VAE对已标注的数据和未标注的数据进行编码。因此,对于一个未标注的数据,如果其编码向量与潜在空间中向量的差异足够大,那么我们就认为该样本是有价值的。

而对于样本的选择,是通过一个对抗网络来实现的,该对抗网络被用来区分一个样本是已标注还是未标注。因此实际上上文的VAE还有一个额外的任务,即他的编码要让判别器难以区分已经标注还是没有标注。

本文的最大特点就是没有去利用公式来显式地去定义不确定性。此外,也研究了噪声标注鲁棒性的问题。接下来,将分析VAAL的详细流程。

II. Architecture

在这里插入图片描述

III. Transductive representation learning

本文所用的VAE为Wasserstein Autoencoder,其目标函数可以表示如下: L V A E t r d = E [ log ⁡ p θ ( x L ∣ z L ) ] − β D K L ( q ϕ ( z L ∣ x L ) ∥ p ( z ) ) + E [ log ⁡ p θ ( x U ∣ z U ) ] − β D K L ( q ϕ ( z U ∣ x U ) ∥ p ( z ) ) \begin{aligned} \mathcal{L}_{\mathrm{VAE}}^{t r d}=& \mathbb{E}\left[\log p_{\theta}\left(x_{L} \mid z_{L}\right)\right]-\beta \mathrm{D}_{\mathrm{KL}}\left(q_{\phi}\left(z_{L} \mid x_{L}\right) \| p(z)\right) \\ &+\mathbb{E}\left[\log p_{\theta}\left(x_{U} \mid z_{U}\right)\right]-\beta \mathrm{D}_{\mathrm{KL}}\left(q_{\phi}\left(z_{U} \mid x_{U}\right) \| p(z)\right) \end{aligned} LVAEtrd=E[logpθ(xLzL)]βDKL(qϕ(zLxL)p(z))+E[logpθ(xUzU)]βDKL(qϕ(zUxU)p(z)) 其中 q ϕ q_{\phi} qϕ p θ p_{\theta} pθ分别表示encoder与decoder, β \beta β为优化问题的拉格朗日参数。

抛开公式不谈,由于本文VAE是同时学了已标注池与未标注池的信息,因此可以补充到已标注池中所缺失的表征。

IV. Adversarial representation learning

由于VAE学到的特征既包含已标注图像的也包含未标注图像的,因此,我们就得想办法去找出里面那些属于未标注图像的特征来。

对于VAE而言,其在同一潜在空间里有两个概率分布:
q ϕ ( z L ∣ x L ) q_{\phi}\left(z_{L} \mid x_{L}\right) qϕ(zLxL) q ϕ ( z U ∣ x U ) q_{\phi}\left(z_{U} \mid x_{U}\right) qϕ(zUxU)

相应的,GAN的目标函数为: L D = − E [ log ⁡ ( D ( q ϕ ( z L ∣ x L ) ) ) ] − E [ log ⁡ ( 1 − D ( q ϕ ( z U ∣ x U ) ) ) ] \mathcal{L}_{D}=-\mathbb{E}\left[\log \left(D\left(q_{\phi}\left(z_{L} \mid x_{L}\right)\right)\right)\right]-\mathbb{E}\left[\log \left(1-D\left(q_{\phi}\left(z_{U} \mid x_{U}\right)\right)\right)\right] LD=E[log(D(qϕ(zLxL)))]E[log(1D(qϕ(zUxU)))]

最终整个网络的训练流程如下:
在这里插入图片描述
输入 已标注池 ( X L , Y L ) (X_{L},Y_{L}) (XL,YL),未标注池 ( X U ) (X_{U}) (XU),初始化任务模型(分类模型,分割模型等) θ T \theta_{T} θT,变分自编码器
θ V A E \theta_{VAE} θVAE,判别器 θ D \theta_{D} θD
超参数 迭代次数epochs,损失函数参数 λ \lambda λ以及学习率 α \alpha α
对于每个epoch:
step 1 从已标注池中采样 ( x L , y L ) (x_{L},y_{L}) (xL,yL),从未标注池中采样 ( x U ) (x_{U}) (xU)
step 2 计算VAE的训练损失 L V A E t r d \mathcal{L}_{\mathrm{VAE}}^{t r d} LVAEtrd
step 3 计算VAE的对抗损失 L V A E a d v \mathcal{L}_{\mathrm{VAE}}^{a d v} LVAEadv
step 4 加权得到VAE的最终损失 L V A E \mathcal{L}_{\mathrm{VAE}} LVAE,并相应地更新VAE的模型参数
step 5 计算判别器的损失 L D \mathcal{L}_{\mathrm{D}} LD
step 6 更新判别器的模型参数
step 7 训练任务模型T,这一部分详细过程省略

V. Sampling strategies

本文的采样策略如下:
在这里插入图片描述

Others

本文的主动学习策略其实也比较特殊,现在重新复盘一遍:
首先,一开始随机选择10%的图像开始训练,此时记训练的网络为版本1。那么对于版本一,训练会迭代max_iterations次,与一般网络训练过程的差别在于每个iteration除了训练"任务模型"外,还得去训练VAE与判别器。而当迭代结束后,训练得到的"任务模型"其实与直接随机抽取10%的图像训练没有区别,因为VAE与判别器只对下一个网络版本有贡献。利用VAE与判别器内包含的经验,一次性抽取5%的新数据加入训练集,此时开始训练网络版本2。而这里特别关键的一点是,版本2仍然是从预训练VGG开始从头训练的(而非在版本1的基础上继续finetune)。至此一直迭代到选取50%的数据结束。

从这里可以发现,本文的强化学习有点"离线"的味道,即最后选取出的50%数据可以很轻松的迁移至其他模型中,选择的过程只依赖VAE与判别器,而与具体的任务无关。此外也体现了该模型的一个特点,即训练十分耗时——从10%逐步提升5%至50%,相当于顺序训练了9个相同的模型,再考虑训练VAE与判别器的耗时,训练该主动学习框架的所需时间可能高达原有基础网络的10倍。

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
变分推断是一种用于近似求解复杂概率模型后验概率分布的技术。在贝叶斯统计中,我们希望从观测数据推断出最有可能的模型参数。然而,在大多数情况下,由于模型复杂性和计算复杂度的限制,我们很难直接计算后验分布。这时候,变分推断能够通过引入一个简化的概率分布来近似后验分布。 变分推断的基本思想是为原始贝叶斯问题构造一个等价的变分问题,并通过最小化两者之间的差异来求解。具体而言,它假设一个简单的参数化概率分布(即变分分布),并试图通过调整分布参数来使其尽可能接近真实后验。 为了找到最优的变分分布,变分推断利用变分推理和优化方法进行迭代求解。在每次迭代中,它通过最大化变分推理下界来逼近后验分布。这个下界称为证据下界或ELBO(证据下界)。 变分推断的优点在于它可以同时处理大规模和高复杂度的模型,而且能够处理连续和离散变量的混合问题。它还可以灵活地处理缺失数据并处理不同类型数据之间的关联。 然而,变分推断也有其局限性。首先,变分分布选择是一个挑战,如果选择的分布偏离真实后验分布,可能导致近似结果的偏差。其次,变分推断通常需要计算复杂度高且对初始参数值敏感的迭代求解。因此,它可能无法在所有情况下提供最优的近似解。 综上所述,变分推断是一种强大的近似推理方法,可以用于处理复杂概率模型的后验分布。它在计算效率和模型灵活性方面具有一定优势,但同时也存在某些局限性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值