当前位置:   article > 正文

1.3渐近式增长生成对抗网络(PGGAN)

pggan

1.导入数据库

  1. import tensorflow as tf
  2. from tensorflow import keras as K

2.高分辨率层渐近式平滑增长(第一个创新点)

       专业的术语,就是训练过程正在从几个低分辨率的卷积层发展到多个高分辨率层,先训练早期的层,再引入更高分辨率的层,但是即便一次增加一个层,也会给训练带来巨大的影响。PGGAN所做的就是平滑地增加这些层,以给系统适用更高的分辨率的时间

       但不是立即跳到该分辨率,而是在通过参数a平滑地增加高分辨率的新层

 

         如图所示,训练了足够迭代次数的16*16分辨率后,在生成器中G(G代表是生成器,D是鉴别器)引入了另一个转置卷积,在鉴定器中引入了另一个卷积,生成32*32层有两条路径:(1-a)乘以最近邻插值增加尺度的层,(a)乘以额外的转置卷积的输出层,二者进行拼接

  1. def upscale_layer(layer, upscale_factor):
  2. '''
  3. 按因子 (int) 放大层(张量),其中
  4. 张量是 [组,高度,宽度,通道]
  5. '''
  6. height, width = layer.get_shape()[1:3]
  7. size = (upscale_factor * height, upscale_factor * width)
  8. upscaled_layer = tf.image.resize_nearest_neighbor(layer, size)
  9. return upscaled_layer
  10. def smoothly_merge_last_layer(list_o
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/600481
推荐阅读
相关标签
  

闽ICP备14008679号