论文摘要
作者提出了一种新的GAN模型,区别于以往的GAN模型,新模型的判别器的目的不再是区分真实样本和判别器生成的样本,而是区分高质量图片样本和低质量的样本,其中高质量的样本就有可能来自生成器。
以往模型的痛点
在普通的GANs模型中,训练进度通常缺乏稳定性,并且生成的图像质量并不总是令人满意的。例如,DCGAN为生成器和鉴别器精心设计了神经体系结构,以缓解这些问题。Progressive GAN通过逐步深化网络生成高分辨率图像。BigGAN 通过改进训练方法(扩大批量大小,并缩短潜在空间)。WGAN和WGANGP试图调整和优化Wasserstein距离以稳定生成过程。SNGAN证明了将Lipschitz连续性引入判别器的必要性和好处。
但是,它们都没有摆脱最初在标准GAN中建立的正负分类问题。现有的GAN模型忽略了生成的样本的质量不相同这一事实。作者认为将高质量的样本与劣质的样本同等对待是不公平的,尤其是当高质量的样本足够接近现实时。
作者认为GAN模型面临的问题已经由原本的正负分类问题(判别器判断是真实样本还是生成器生成的假样本)变成了positive-unlabeled的分类问题。
什么是positive-unlabeled的分类问题?作者认为只要通过适当的训练,生成器生成的样本可以非常接近真实数据,甚至比真实数据更加“真实”。那么这一部分的高质量生成数据就不应该被当成假数据来对待,应该将他们归为未标记数据,未标记数据包括了低质量数据和高质量数据。
GAN模型回顾
众所周知,GAN模型的目标函数:
其中
p
d
a
t
a
p_{data}
pdata指的是真实数据的概率分布,
z
z
z是服从先验概率
p
z
p_z
pz的随机噪声,
D
(
x
)
D(x)
D(x)是判别器D预测
x
x
x为真的概率。
为了防止判别器训练的太好时造成生成器的梯度消失,某些GAN模型如:WGAN和LSGAN将(1)式修改为
PU 分类
首先定义生成器生成的数据集为
x
g
x_g
xg,其中高质量的样本为
x
g
r
x_{gr}
xgr,低质量的样本为
x
g
f
x_{gf}
xgf。我们认为真实数据
x
d
a
t
a
x_{data}
xdata和高质量样本
x
g
r
x_{gr}
xgr都是真实的(
y
g
r
=
y
d
a
t
a
=
1
y_{gr}=y_{data}=1
ygr=ydata=1),同时认为低质量样本
x
g
f
x_{gf}
xgf为假(
y
g
f
=
−
1
y_{gf}=-1
ygf=−1)。
p
g
(
x
)
p_g(x)
pg(x)为
x
g
x_g
xg的边缘密度;
p
g
r
(
x
)
=
p
(
x
∣
1
)
p_{gr}(x) = p(x\mid1)
pgr(x)=p(x∣1)和
p
g
f
(
x
)
=
p
(
x
∣
−
1
)
p_{gf} (x) = p(x \mid-1)
pgf(x)=p(x∣−1)分别为
x
g
r
x_{gr}
xgr和
x
g
f
x_{gf}
xgf的类条件密度。所以
p
g
(
x
)
p_g(x)
pg(x)可以表示为:
其中π是一个未知的先验概率(
x
g
r
x_{gr}
xgr在
x
g
x_g
xg中所占的比例)
为了从
x
g
x_g
xg中区分出
x
g
r
x_{gr}
xgr和
x
g
f
x_{gf}
xgf,我们需要最小化判别器D的误分类率
R
(
D
)
R(D)
R(D),即:
其中
l
(
D
(
x
)
,
1
)
l(D(x),1)
l(D(x),1)是损失函数,用于测量真实标签为t时预
D
(
x
)
D(x)
D(x)的损失。
在我们的定义中,好的样本非常接近于真实的样本,于是就可以用
p
d
a
t
a
p_{data}
pdata代替
p
g
r
p_{gr}
pgr,所以:
类似地,低质量的样本
p
g
f
p_{gf}
pgf可以表达为:
于是可以得到如下等式:
将(4)和(7)结合起来,可以得到新的目标函数:
为了防止(8)等式右边的第二第三项为负值而导致过拟合,将(8)改写为:
生成器的目标函数:
到这里为止,我们已经实现了对生成器生成数据进行不同的处理。
附上算法流程图:
PU 分类的普适性
PU分类还有一点比较牛批,就是这种分类方法可以灵活地适用于其他的GAN模型,包括之前提及的SpectualGAN,LSGAN和WGAN等。
使用PU分类的GAN模型的目标函数为:
结合使用不同的GAN模型时,(11)中的
f
1
f1
f1和
f
2
f2
f2为特定模型中对应的损失函数。
理论分析
理论一
对于固定的生成器G,最优判别器D为:
其中
p
g
f
(
x
)
p_gf(x)
pgf(x)为生成器生成的低质量样本的概率分布
理论二
最佳判别器已经确定,则生成器的优化目标是最小化:
结论
当且仅当 p g f = p g = p d a t a p_{gf} = p_g =p_{data} pgf=pg=pdata时,才能实现上述的整体目标函数 V ( G , D ) V(G,D) V(G,D)
实验
使用的数据集:MNIST , FMNIST ,CIFAR-10 , CAT , and LSUN-bedroom
选择了标准GAN (SGAN), LSGAN,WGAN-GP 和 HingeGAN作为参考,将PU标准的方法与这些模型结合起来并进行比较
表一显示的是FID 分数,可以看到使用了PU方法的模型的表现比相对应的基础模型的表现更好。
使用PUSGAN生成高分辨率的图片。
评估先验概率 π π π的影响
蓝线:
π
π
π初始化为0.1,每次迭代平滑增长直至0.7
粉线:
π
π
π初始化为0.3,每10000次迭代增加0.1直至0.7
灰线:
π
π
π固定为0.3
红线:
π
π
π固定为0.5
黑色虚线:没有使用PU标准的GAN,用来对比