苹果发布首份人工智能报告(全文):瞄准AI视觉

其中,xi是e ith合成训练图像,X是相应的精炼图像。第一部分是真实性成本,即向合成图像中增加真实性的成本。第二部分则代表着通过最小化合成图像精炼图像的差异保存注释信息的成本。在下面的章节中,我们会展开这个公式,并提供优化θ的算法。

2.1对抗性损失

为了向合成图像中添加真实性,我们需要在合成图形和真实图像的分部之间建立起联系。在理想情况下,精炼机可能无法将给定的图像分类为真实图像还是高度精炼图像。这就需要使用对抗性的鉴频器,网络Dφ,它可训练分辨图像到底是真实图像还是精炼图像,而φ是鉴别器网络参数。对抗性损失训练refiner networkR,它负责欺骗D网络,令其将精炼图像误认为是真实图像。利用GAN方法,我们建造了2个神经网络参与的极限博弈模型,并升级“精炼器网络”Rθ和鉴别器网络Dφ。接下来,我们更精确地描述这种模型。鉴别器网络通过最大限度地减少以下损失来更新参数:

这相当于两级分类问题产生的交叉熵误差,其中Dφ(.)输入的是合成图像,而1 ? Dφ(.)则是真实图像。至此,我们实现了Dφ作为ConvNet的最后输出层,样本很可能是精炼图像。为了训练这个网络,每个小批量随机抽取的样本都由精炼合成图像和真实图像组成。对于每个yj来说,交叉熵的目标标签损耗层为0,而每个x?i都对应1。然后通过随机梯度下降(SGD)方式,φ会随着小批量梯度损失而升级。在我们的实践中,真实性损失函数使用训练有素的鉴别器网路D如下:

通过最小化减小损失函数,“精炼器网络”的力量促使鉴别器无法分辨出精炼图像就是合成图像。除了产生逼真的图像外,“精炼器网络”应该保存模拟器的注释信息。举例来说,用于评估视线的学习转变不该改变凝视的方向,手部姿势评估不应该改变肘部的位置。这是训练机器学习模型使用配有模拟器注释信息的精炼图像的必要组成部分。为了实现这个目标,我们建议使用自正则化,它可以最大限度地减少合成图像与精炼图像之间的差异。

(算法1)

(图3:局部对抗性损失的图示。鉴别器网络输出wxh概率图。对抗损失函数是局部块上的交叉熵损失的总和。)

因此在我们的执行中,整体精炼损失函数(1)为:

(4)在||.||1是L1常模时,我们将Rθ作为一个完全卷积的神经网络,而无需跃进或池化。在像素级别上修改合成图像,而不是整体地修改图像内容。例如在完全连接地编码器网络中便会如此,保留全局结构合注释。我们通过交替地最小化LR(θ) 和LD(φ)来学习精化器和鉴别器参数。在更新Rθ的参数时,我们保持φ固定不变,而在更新Dφ时,则要保持θ不变。我们在算法1中描述了整个训练过程。

(图4:使用精细图像历史示意图。相关信息请参阅文本描述。)

2.2本地对抗损失

精炼网络另一个关键要求是,它应该学习模拟实际图像特性,而不引入任何伪影。当我们训练强鉴别器网络时,精炼网络倾向于过度强调某些图像特征以欺骗当前鉴别器网络,导致偏差和产生伪影。关键是任何我们从精化图像中采样的本地补丁都应该具有与真实图像相类似的统计。由此我们可以定制本地鉴别器网络对本地图像补丁进行分类,而不是定义全局鉴别器网络。

这不仅限制了接受域,还因此限制了鉴别器器网络的容量,并且为每个图像提供更多样本以供学习鉴别器网络。同时由于每个图像由多个实际损失值,它还改善了精炼网络的训练。