写在前面:最近看了《GAN实战》,由于本人忘性大,所以仅是笔记而已,方便回忆,如果能帮助大家就更好了。
一种能够生成全高清的具有照片级真实感图像的前沿技术,一经ICLR2018提出就引起了轰动。
本章涉及的四个创新点:
高分辨率层的渐进式增长和平滑
渐进式增长:训练过程从几个低分辨率的卷积层发展到多个高分辨率的层,线训练早期的层,再引入更高分辨率的层。
平滑:引入这些层时,不是立即跳到该分辨率,而是通过参数(介于0-1之间,从0到1线性缩放)平滑的增加高分辨率的新层。
小批量标准差(仅应用鉴别器)
为了生成图片的某一类内丰富多样,Karras创造了一种方法,使鉴别器可以鉴别所获取的样本足够多样。这种方法本质上是为鉴别器计算了一个而外的标量统计量。这个统计量是生成器生成的或来自真实数据的小批量中所有像素的偏差。
(1)4D->3D:计算批次中所有图像和所有通道(高、宽、颜色)的标准偏差,然后得到关于每个像素和每个通道的标准偏差的一个图像
(2)3D->2D:对所有通道的标准差取均值,得到像素的一个特征图或标准差矩阵,但是颜色通道折叠了
(3)2D->标量:对前一个矩阵内所有像素的标准偏差取均值,以获得一个标量值。
均衡学习率
确保将所有权重归一化为
在一定范围内,
,对于常数c对每一层是不一样的,取值取决于权重矩阵的形状。p.s.书上都说这是什么黑魔法,我觉得也是,看不懂啊??
像素级特征归一化(仅用于生成器)
像素级归一化将在输入被送到在一层之前在每一层获得一个激活幅度。
对每个特征图执行:
(1)在位置(x,y)上获取该特征图(fm)的像素值。
(2)为每个(x,y)构造一个向量,其中
(3)将步骤2中定义的每个向量归一化到单位标准值,称之为
。
(4)将原来的张量形状传递到下一层。
上述公式是步骤2中构造的每一个像素的归一化 。