马尔可夫判别器(PatchGAN)
马尔可夫判别器的区别:
1.基于CNN的分类模型有很多种,很多网络都是在最后引入了一个全连接层,然后将判别的结果输出。
2.马尔可夫判别器是由卷积层构成,最后输出一个n*n的矩阵,最后取输出矩阵的均值作为True/False的输出。
3.事实上,输出矩阵中的每个数据代表着原图中一个感受野,对应了原图的一片(patch),这样的GAN称PatchGAN.
在图像风格迁移领域中——风格迁移分为两部分
第一:内容部分是指生成图像和原图像在内容(语义)上的相似性
第二:纹理部分是指生成图像和目标图像在文理商的相似性。
感受域计算
每一层感受域的计算公式为:
input_size = (output_size-1)*k_stride+k_size
1.感受域:输出节点(输出网络中的每个节点)对输入网络的感受野的范围(可以从输出网络大小反推感受野的大小)
2.input_size:为输出结点感受域的大小
3.k_stride:卷积核的移动步长
4.k_size:输入输出之间卷积核的大小
example——以之前分析的CycleGAN代码中的马尔可夫判别器为例:
1.last_conv输出(k_stride=1),假设其中一个节点,即output_size=1,计算得到CK4的大小(input_size)为4;
2.同理,假设CK4_size = 4,则CK3_size = (4-1)*2+4=10
3.同理,CK2_size = (10-1)*2+4=22;
4.同理,CK1_size = (22-1)*2+4=46;
同理,input的感受域大小为94