Instance normalization 论文阅读笔记

09 IN: The Missing Ingredient for Fast Stylization

主要应用于风格迁移

风格迁移的历程
Gatys:

使用Gram矩阵作为风格的数学表示,图片的style可以表示为特征图上的Gram矩阵
G [ i , j ] = ∑ x h ∑ y w F i [ x , y ] ∗ F j [ x , y ] G[i,j]=\sum_{x}^{h}\sum_{y}^{w}{F_i[x,y]*F_j[x,y]} G[i,j]=xhywFi[x,y]Fj[x,y]
其中i和j是channel的下表,x和y是空间坐标。Gram矩阵的本质上就是算各个channel之间的相关性,即哪些channel倾向于同时激活,哪些channel倾向于此消彼长

Gram矩阵就是每一层滤波后的feature map, 后将其转置并相乘得到的矩阵,如下图所示。其实就是不同滤波器滤波结果feature map两两之间的相关性。譬如说,(如下图)某一层中有一个滤波器专门检测尖尖的塔顶这样的东西,另一个滤波器专门检测黑色。又有一个滤波器负责检测圆圆的东西,又有一个滤波器用来检测金黄色。对梵高的原图做Gram矩阵,谁的相关性会比较大呢?如上图所示,“尖尖的”和“黑色”总是一起出现的,它们的相关性比较高。而“圆圆的”和“金黄色”都是一起出现的,他们的相关性比较高。因此在风格转移的时候,其实也在风景图里去寻找这种“匹配”,将尖尖的渲染为黑色,将圆圆的渲染为金黄色。如果我们承认“图像的艺术风格就是其基本形状与色彩的组合方式” ,这样一个假设,那么Gram矩阵能够表征艺术风格就是理所当然的事情了

是用迭代optimization的方法来构建图片的:输入的是一张随机噪音构成的底图,通过计算Style Loss和Content Loss,迭代更新底图。比较费时

Ulyanov

提出用前馈神经网络来替代optimization的过程

generate in a single pass

把BN换成IN:生成图像的质量提高了。在训练和测试的时候都用IN

发现:使用越多的training example来训练generator g,生成的图像的表现反而越差

尤其是在边界部分,因为每次卷积前的0 padding操作。即使是使用了更为复杂的padding操作,也没能解决这个问题

目前Ulyanov的最好结果是只是用了小部分的训练图片以及早停得到的

按理来说,风格迁移的的结果不应该受到content image的对比度的影响(因为我要的只是它的内容而已啊)。但事实上,之前的方法是会受到对比度的影响的。所以generator应该抛弃掉content image里包含的对比度信息。

ith channel, tth image in a batch

在这里插入图片描述

其实做出的改进仅仅就是把网络里的BN换成了IN

在这里插入图片描述

为什么BN效果不好,IN的效果好?

图像风格迁移这种任务很注重每个像素,每个pixel都很重要,像BN这种把每个batch里面的样本都做归一化的话,单个图片里的像素的信息就会丢掉,因为BN考虑了一个batch里所有图片的内容,造成每个样本自己独特细节的丢失。(图像风格化中生成结果主要依赖于这个图像实例本身,所以如果把一个batch都考虑进来反而不妥)

自己独特细节的丢失。(图像风格化中生成结果主要依赖于这个图像实例本身,所以如果把一个batch都考虑进来反而不妥)

IN则是适用于这种对单个pixel要求很高的场景(例如风格迁移、GAN等),一次归一化只考虑一张图片的一个通道,这样就可以加速收敛的同时保证每个图像实例之间的独立

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值