你也可以在 TensorBoard 上查看 Tensorflow 图像,以及损掉函数。
- tensorboard--logdir ./logs

TensorBoard 损掉可视化图像。在练习过程中及时更新。

DCGAN 收集的TensorBoard可视化
第三步:找到用于图像补全最好的伪图像
1.应用 DCGAN 进行图像补全
既然我们已经有了辨别器 D(x) 和生成器 G(z),我们怎么把它用在图像补全上呢?在这章我要介绍的是 RaymondYeh 和 Chen Chen 等人的一篇论文,“基于感知和语境损掉的图像语义修补(Semantic Image Inpainting with Perceptual andContextual Losses)”。论文在2016年7月26号宣布于 arXiv 上。
- Lcontextual(z)=||M⊙G(z)−M⊙y||Lcontextual(z)=||M⊙G(z)−M⊙y||
对于某个图片y进行图像补全,一个有事理然则弗成行的筹划是,对于缺掉的像素,最大年夜化D(y)。结不雅既不是数据分布(pdatapdata),也不是生成分布(pgpg)。我们期望的是,将y投影到生成分布上。

(a): 生成分布的 y 的幻想重建(蓝色曲面)。(b):测验测验经由过程对 D(y) 最大年夜化来重建 y 的一个掉败的例子。图像来自图像修复论文
2.[ML-Heavy] 到 pgpg 的投影的损掉函数
为了给投影一个合理的定义,我们先为图像补全定义一些符号。我们应用一个二值掩码 M(mask), 也就是只有0、1两个值。值为1表示图像这部分我们想要保存,值为0表示这部分我们须要补全。如今我们可以定义,在给定了二值掩码M之后若何对y进行补全。将y中的元素和M中的元素相乘。两个矩阵对应地位元素相乘也叫做 Hadamard 积,用 M⊙yM⊙y 表示。M⊙yM⊙y 表示图像的原始部分。

二值掩码图例
接下来,假设我们已经找到了一个 z^z^, 可以生成一个对缺掉值进行重构的合理的G(z^)G(z^)。补全的像素 (1−M)⊙G(z^)(1−M)⊙G(z^) 可以加到原始像素上,获得重构的图像:
- xreconstructed=M⊙y+(1−M)⊙G(z^)xreconstructed=M⊙y+(1−M)⊙G(z^)
如今我们要做的工作,就是找到一个适于补全图像的 G(z^)G(z^)。为了找到 z^z^ ,我们回想一下文┞仿开首提到的 语境 和 感知,将它们作为DCGANs的高低文。为此,我们定义了对于随便率性z∼pzz∼pz的损掉函数。损掉函数越小,解释 z^z^ 越合适。
语境损掉:为了获得和输入图像雷同的高低文,须要确保y已知像素对应地位的G(z)G(z)尽可能类似。所以,当 G(z) 的输出和 y 已知地位图像不类似的时刻,须要对 G(z) 进行处罚。为此,我们用 G(z) 减去 y 中对应地位的像素,然后获得它们不类似的程度:
个中||x||1=∑i|xi|||x||1=∑i|xi|是某个向量x的l1l1 范数。l2l2 范数也是可取的,然则论文指出,实践注解l1l1 范数效不雅更好。
幻想情况下,已知部分的 y 和 G(z) 的像素是相等的。也就是对于已知地位的像素i, ||M⊙G(z)i−M⊙yi||=0||M⊙G(z)i−M⊙yi||=0 , Lcontextual(z)=0Lcontextual(z)=0 。
感知损掉:为了重建一个看起来真实的图像,须要确保判别器剖断图像看起来是真实的。为此,我们进行和练习 DCGAN 中雷同的步调。
- Lperceptual(z)=log(1−D(G(z)))Lperceptual(z)=log(1−D(G(z)))
最后,将语境损掉和感知损掉组合起来,就可以找到 z^z^ 了;
- L(z)=Lcontextual(z)+λLperceptual(z)z^=argminzL(z)L(z)=Lcontextual(z)+λLperceptual(z)z^=argminzL(z)
个中 λλ 是超参数,用来控制比拟于感知损掉,语境损掉重要的程度。(我用的是默认的λ=0.1λ=0.1,并没有对这个值进行深刻研究。)然后如前所述,应用 G(z) 来重建y中缺掉的部分。
- Lcontextual(z)=||M⊙G(z)−M⊙y||Lcontextual(z)=||M⊙G(z)−M⊙y||
这一章给出了我对于 Taehoon Kim 的 carpedm20/DCGAN-tensorflow 代码的修改,用于图像补全。
- self.mask =tf.placeholder(tf.float32, [None] + self.image_shape, name='mask')
推荐阅读
一、背景本案其实是采取了两种不合的算法对于结不雅进行猜测,我们先来看看随机丛林这一分支。我们经由过程将数据集拆分,百分之八十的数据练习模型,百分之二十的数据猜测。最终模型的出>>>详细阅读
地址:http://www.17bianji.com/lsqh/35350.html
1/2 1

网友点评
精彩导读
科技快报
品牌展示