GENERATING HIGH FIDELITY IMAGES WITH SUBSCALE PIXEL NETWORKS AND MULTIDIMENSIONAL UPSCALING

最近越来越多的文章在做生成high fidelity图片,比如bigGAN和glow。这篇文章用autoregressive模型生成high fidelity图片。

autoregressive(AR)

autoregressive指生成新的值依赖自身之前生成的值,比如lstm生成序列。

PixelCNN

PixelCNN是标准的autoregressive(AR) model,其从上到下,从左到右,一个通道一个通道地生成 H × W H\times W H×W的图像
在这里插入图片描述
其中 x < x_< x<表示之前生成的值, P ( x h , w , c ∣ x < ) P(x_{h,w,c}|x_<) P(xh,w,cx<)用深度网络建模。该方法通过将像素的联合分布建模成一系列条件概率,可以计算tractable的likelihood。
另外,该方法把像素的连续值当做离散值处理,假设服从multinomial distribution,用softmax建模。

值的生成顺序

即使是一个值一个值的生成,但生成值的顺序可以有不同,如图3所示。
GENERATING HIGH FIDELITY IMAGES WITH SUBSCALE PIXEL NETWORKS AND MULTIDIMENSIONAL UPSCALING_第1张图片
图(3d)所示,是subscale ordering:
在这里插入图片描述
图(3d)中,{1,2,3,4}是一个slice,{2,6,7,8}也是一个slice,scaling factor S = 2 S=2 S=2

  1. SIZE UPSCALING
    每个slice对应一个解码器。因为slice比图片小,所以叫upscaling。
  2. DEPTH UPSCALING
    在深度方向上,同样有upscaling的操作。第一步先生成d1 bits:
    在这里插入图片描述
    第二步生成d2 bits:
    在这里插入图片描述
    公式为了简单,使用的是传统的顺序,实际可以是subscale ordering。

Subscale Pixel Network (SPN)

给定一个 H × W × 3 × D H × W × 3 × D H×W×3×D的图像。为什么这里是 H × W × 3 × D H × W × 3 × D H×W×3×D而不是 H × W × 3 H × W × 3 H×W×3,因为autoregressive的图像生成模型把连续值当做离散值处理,假设服从multinomial distribution,用softmax建模。D也就是连续数值的位(bits)数。
选择一个scaling factor S S S,将有 S 2 S^2 S2 H / S × W / S × 3 × D H/S × W/S × 3 × D H/S×W/S×3×D的slice。
SPN有两个部分:embedding part和decoder。
GENERATING HIGH FIDELITY IMAGES WITH SUBSCALE PIXEL NETWORKS AND MULTIDIMENSIONAL UPSCALING_第2张图片

learning

用SGD最大化likelihood。

你可能感兴趣的:(GENERATING HIGH FIDELITY IMAGES WITH SUBSCALE PIXEL NETWORKS AND MULTIDIMENSIONAL UPSCALING)