TransferLoss
VGGLoss
VGGLoss 是提取 VGG 的不同的层学到的图片的特征,之后通过对比这些不同层的特征来计算两个图片的相似度,计算相似度的功能如下:
\[l_{vgg}(x, y) = ||f_\phi(x) - f_\phi(y)||^{2}_2\]StyleLoss
StyleLoss 和 VGGLoss 相似,不同的是计算相似的时候是使用的 Gram 矩阵,直观上的差别就是,VGGLoss 是不同的层的结果之间的相减求平方,而 Style Loss 是两个特征要先乘自己的转置之后再做类似 VGGLoss 的操作。
\[l_{style}(x, y) = ||G(f_\phi(x)) - G(f_\phi(y))||^{2}_2\]SSIMLoss & MSELoss
常用的 MSELoss 针对色彩的敏感度比模糊度高,为了让图片生成更好的清晰的图片,可以用 SSIMLoss 来替代 MSE Loss。具体的公式和解释可以看这个文章。直接能用的源码在这里。
VGGLoss 和 StyleLoss 的代码实现
1 |
|