• stylegan笔记(网络结构,基础模型等)progan


    一、progan,https://zhuanlan.zhihu.com/p/93748098

    stylegan的前身是progan,Progressive Growing of GANs for Improved Quality, Stability, and Variation

    ProGAN 最大的贡献在于提出了一种新的训练方式,即,我们不要一上来就学那么难的高清图像生成,这样会让 Generator 直接崩掉,而是从低清开始学起,学好了再提升分辨率学更高分辨率下的图片生成。

    从4x4到8x8一直提升到1024x1024,循序渐进,即能有效且稳定地训练出一个高质量的高分辨率生成器模型。

    在某清晰度阶段训练好后,如何提升模型输出的分辨率后继续训练呢,下面是模型的整体结构,4-8-16-32-64-128-256-512-1024,无论是生成器还是判别器,在某清晰阶段训练好后,只要各加上三层(表格中从上往下加),接着训练就好啦~

     

    更具体地说,一开始的 4x4 分辨率阶段的训练结束后,接下来的训练循环进行以下两步:

    1. 加入新层,提升分辨率训练,使新层 fade in,旧层 fade out。
    2. 新层完全加入,正常训练。

     二、stylegan

    (1)第一个是Mapping network,即下图 (b)中的左部分,由隐藏变量 z 生成 中间隐藏变量 w的过程,这个 w 就是用来控制生成图像的style,即风格,为什么要多此一举将 z 变成 w 呢,后面会详细讲到。

    (2)第二个是Synthesis network,它的作用是生成图像,创新之处在于给每一层子网络都喂了 A 和 B,A 是由 w 转换得到的仿射变换,用于控制生成图像的风格,B 是转换后的随机噪声,用于丰富生成图像的细节,即每个卷积层都能根据输入的A来调整"style",通过B来调整细节。

    (3)整个网络结构还是保持了 PG-GAN (progressive growing GAN) 的结构。

    左侧是progan的网络结构,右侧是stylegan的

    层和分辨率越低,它所影响的特征就越粗糙。简要将这些特征分为三种类型:

    1、粗糙的——分辨率不超过82,影响姿势、一般发型、面部形状等;
    2、中等的——分辨率为162至322,影响更精细的面部特征、发型、眼睛的睁开或是闭合等;
    3、高质的——分辨率为642到10242,影响颜色(眼睛、头发和皮肤)和微观特征;

    三、stylegan---第一部分,mapping network

    1.添加 Mapping Network 的目标将输入向量编码转为中间向量,并且中间向量后续会传给生成网络得到 18 个控制向量,使得该控制向量的不同元素能够控制不同的视觉特征。

    2.为何要加 Mapping Network 呢?因为如果不加这个 Mapping Network 的话,后续得到的 18个控制向量之间会存在特征纠缠的现象——比如说我们想调节 8*8 分辨率上的控制向量

    (假 设它能控制人脸生成的角度),但是我们会发现 32*32 分辨率上的控制内容(譬如肤色)也被改变了,这个就叫做特征纠缠。所以 Mapping Network 的作用就是为输入向量的特征解缠提供一条学习的通路。

    3.为何 Mapping Network 能够学习到特征解缠呢?简单来说,如果仅使用输入向量来控制视觉特征,能力是非常有限的,因此它必须遵循训练数据的概率密度

    例如,如果黑头发的人的图像在数据集中更常见,那么更多的输入值将会被映射到该特征上。因此,该模型无法将部分输入(向量中的元素)映射到特征上,这就会造成特征纠缠。

    然而,通过使用另一个神经网络,该模型可以生成一个不必遵循训练数据分布的向量,并且可以减少特征之间的相关性。(没看懂)



  • 相关阅读:
    1204整理
    JDBC(与Orcale的连接)(转)
    Listener监听器详解(转)
    Filter过滤器详解(转)
    第十二章 存货
    会计基础 第一章 总论 部分复习题目
    会计基础 第一章 总论
    星座备考之狮子座如何复习会计从业资格考试
    会计基础第八章内容2
    何以解养老之忧
  • 原文地址:https://www.cnblogs.com/h694879357/p/16166919.html
Copyright © 2020-2023  润新知