Page 141 - 《软件学报》2021年第12期
P. 141
张健 等:基于实值 RBM 的深度生成网络研究 3805
成模型,不需要推理.此外,当生成器和判别器在某些额外的条件 y 的约束下,可以将 GAN 扩展到条件模型:条件
生成对抗网络(conditional generative adversarial net,简称 CGAN).其中,y 可以是任何类型的辅助信息,例如类标
签或来自其他模态的数据.可以通过将 y 作为附加输入传递给判别器和生成器来执行该条件 [14] .CGAN 的目标
函数可以用公式(7)表示:
min max ( , )VD G = E xp [log ( | )]D x y + E z ~ z p [log(1 D− ( ( | )))]G z y (7)
G D ~ data
图 2 是一个典型的 CGAN 的网络结构.
Discriminator
x y
Generator
z y
Fig.2 Structure of a CGAN
图 2 CGAN 的结构图
作为一个 CGAN 模型,其输入的条件 y 是非常重要的.模型可以根据条件 y 所包含的信息完成特定的任务,
不仅可以将 CGAN 用于监督和半监督任务,本文还使用深度特征作为条件输入,从而增强模型在图像生成任务
中的有效性.
2 基于附加单元的受限玻尔兹曼机及其深度神经网络扩展
2.1 基于附加单元的受限玻尔兹曼机
首先,我们通过直观的方式分析二值单元在 RBM 特征表达方面存在的不足.为了方便表述,假设模型有一
个隐藏层单元,且只考虑单个样本的情形.根据模型的独立性假设,在此基础上,可以很方便地推广到多样本多
隐藏层单元的情形.二值 RBM 不能有效地建模实值数据,是因为对实值数据二值化的过程中,数据中一些重要
的相关性信息可能会丢失.为了建模实值数据,传统的 Gaussian-binary RBM 假设其可见层单元的条件概率服从
高斯分布,其隐藏层单元为二值的.基于极大似然估计,目标函数可以表示为 L = log ( )px = log ∑ p ( , )x h ,其中,h
i i
是二值单元.基于二值隐藏层单元 h,可见层单元的条件概率 p(x|h)可以表示为两种形式:p(x|h=0)和 p(x|h=1).因
此,RBM 可见层单元的边缘概率可以进一步分解为 p(x)=p(x|h=0)p(h=0)+p(x|h=1)p(h=1),其中,p(x|h=0)和
p(x|h=1)为高斯分布.基于二值的隐藏层单元,可见层单元的边缘分布可以看作是 p(x|h=0)和 p(x|h=1)的加权和.
这个过程可以表示为图 3 的形式.
如果一个分布的密度函数 p(y)可以写成 ()py = ∑ p ( )y ,当 i→∞且 p(y i )是高斯分布的时候,p(y)可以用于拟
i i
合任何连续分布函数.然而在传统的实值 RBM 中,图 3 中 p(x|h=0)和 p(x|h=1)的组合(两个高斯分布的加权和)
很难拟合一个复杂数据分布;而当 RBM的隐藏层单元也是实值单元时,可见层单元的边缘概率可以看作是无数
高斯分布的加权和 ()px = ∫ px
( | ) ( )dh p h h ,理论上可以拟合一个复杂连续的数据分布.因此,本文将 RBM 的隐藏
层单元由二值单元拓展为实值单元.然而,高斯分布形式的激活函数在 BP 算法中具有较高的计算复杂度且不稳
定,因此我们假设可见层单元和隐藏层单元服从截断高斯分布,并由此近似神经网络中的 ReLU 激活函数.为了