该方法联合优化两个网络,通过随机梯度上升(stochastic gradient ascend)法更新并获得最大对数似然。也就是说,优化 (6) 中模型预测值与离散的真实值标签之间的交叉熵损失
然后其成本函数为:
其中 lse(·)是 softmax 分母的对数和的指数运算符(log-sum-exp operator),1 [k] 表示一个 K 维 one-hot 指示符向量的第 k 维度设置为 1。 然而,当在实验中使用成本函数时,训练的模型往往忽略调节网络。因此,范式包括一个新的损失项,用于衡量调节网络中预测值和真实值之间的交叉熵,表示为: 从而得到新公式:
除了定义训练的范式,为了控制样本分布的密度,我们引入额外的温度参数(temperature parameter),从而得到了贪婪解码机制(greedy decoding mechanism):总是选择概率最大的像素值和合适的 softmax 中的样本。因此,分布 P 被调整为:
随着所有理论准备工作的完成,本文进入实施阶段。实验在 TensorFlow 框架下完成,使用 8 个带有 SGD 更新的 GPU。对于调节网络,我们建立了前馈卷积神经网络。它使用从一系列 ResNet 块得到的 8×8 RGB 图像和转置卷积层,同时每层保持 32 个通道。最后一层使用 1×1 卷积将信道增加到 256×3,并且使用所得到结果、通过 softmax 算子预测超过 256 个可能子像素值的多项分布。 对于现有网络,通常为像素 CNN,实验使用了每层有 32 个通道的 20 个选通 PixelCNN 层。 结果和评估 为了验证所提框架的性能,本文选择了两类对象:人脸和卧室场景。所有训练图像均来自 CelebA 数据集和 LSUN 卧室数据集。为了满足网络输入的要求,作者还对每个数据集进行了必要的预处理:裁剪 CelebA 数据集的名人脸和 LSUN 卧室数据集的中心图像。此外他们还通过双三次插值(bicubic interpolation)将两个数据集得到的图像大小调整为 32×32,进而为 8×8,构成训练和评估阶段的输出和输入对。 训练后,将递归模型与两个基准网络进行比较:像素独立的 L2 回归(「回归」)和最近邻搜索(「NN」)。视觉效果如下图所示: 观测不同方法之间的结果,能看出 NN 方法可以给出清晰的图像,但是与真实情况的差距相当大,回归模型给出了一个粗略的草图,像素递归超分辨率方法的效果似乎处于两个基准方法之间。它捕获了一些详细的信息,但没有比其他方法好很多。 另外不同的温度参数下,结果略有不同如下图所示:
为了测量性能,我们使用 pSNR 和 MS-SSIM(表 1)量化了训练模型对真实情况的预测精度,除传统测量之外,结果还涉及人类识别研究。
表 1:顶部:在裁切过的 CelebA 测试数据集上,从 8×8 放大到 32×32 后的测试结果。底部:LSUN 卧室。pSNR、SSIM 和 MS-SSIM 测量了样本和 ground truth 之间的图像相似度。Consistency(一致性)表示输入低分辨率图像和下采样样本之间在 [0,1] 尺度上的均方误差(MSE)。% Fooled 表示了在一个众包研究中,算法样本骗过一个人类的常见程度;50% 表示造成了完美的混淆。 (责任编辑:本港台直播) |