Improved Textured Networks: Maximizing quality and diversity in Feed-Forward Stylization and Texture Synthesis
https://arxiv.org/abs/1701.02096v1
本文最主要的贡献有两点: 1. 引入instance normalization 代替 batch normalization 2. 通过使得生产器从Julesz ensemble无偏采样来增加texture 的多样性.
一、背景知识
texture synthesis中generator目标是:
将 I.I.d. noise vector $z~N(0,I) 映射成 图像x, x = g(z)$, 记 生成图像x分布为$q(x)$, 真实目标texture 的分布为p(x); 那么生成器的目标应该是使得q(x)无限逼近p(x).
这里有一个问题:在训练generator的过程中我们的目标函数:p(x)没有一个具体的形式.
二、uniformly sample the Julesz ensemble:
1. Julesz 的发现:
视觉系统通过不同 image filters 的 average response 来区分不同的texture.
2. 什么是Julesz ensemble?
定义:
设$x$为image, $ x: \Omega /rightArrow R^3 $, \Omega = {1,...,H} x {1,...W} $.
设$ F_l $为滤波器, $F_l: \chi x \Omega \rightArrow R, l = 1,...,L, F_l(x,u)表示F_l在图像x,u$处的响应.
Loss function定义为: $L(x) = \sum_{l=1}^{L}(\mu_l(x) - \hat{\mu}_l)^2$.
对于图像x. Julesz ensemble是满足$ \tau_\epsilon = {x \in \chi: L(x) \leq \epsilon$的x的集合.
Julesz ensemble 的分布为: $p(x) = \frac{e^{-L(x)/T}}{\int e^{-L(y)/T}dy}.
这使得$p(x)$具有具体的分布形式.
3. KL散度(Kullback-Leibler divergence):用来衡量两个概率分布之间的偏离度记作:$D_{KL}(P||Q)$在实际应用中P常代表数据真实分布,Q代表理论模型对P分布的近似. 可以通过最小化KL散度来使得Q逼近P.
对于连续变量:
$$D_{KL}(P||Q) = \int_{-\infty}^{\infty} p(x) log \frac{p(x)}{q(x)} dx$$
对于离散变量
$$D_{KL}(P||Q) = \sum_i p(i) log \frac{P(i)}{Q(i)} .$$
三、instance normalization/constract normalization
batch normalization: 全局
instance normaliztion: 局部