Two at Once: Enhancing Learning and Generalization Capacities via IBN-Net阅读笔记
Paper:https://arxiv.org/abs/1807.09441
Code:https://github.com/XingangPan/IBN-Net
文章摘要:卷积神经网络(CNNs)在许多计算机视觉问题上取得了巨大的成功。与现有为提高某一场景的性能设计的CNN不同,论文的IBN-Net显著增强了CNN的建模能力,并且具有较强的泛化能力,可以不经过netuning即可在另一场景取得不错结果。IBN-Net集成了IN(实例规范化)和BN(批处理规范化)作为构建块,并可以封装到当前先进的深度CNN中,以提高其性能。本论文主要有三个贡献。1):通过对IN和BN进行深入研究,论文发现IN学习的特征不受外观变化的影响,如颜色、样式和虚拟/现实;而BN对于保存内容相关信息至关重要。2):IBN-Net可以集成到当前高级的深层CNN中,如DenseNet、ResNet和SENet等,并且不增加计算成本的情况下持续改进他们的性能。3):当把训练好的模型应用到新的场景时,即使不使用目标领域的数据,IBN-Net也取得了不错的结果。综上所述,论文通过对IN和BN的深入研究,通过利用IN学习的特征不受外观变化的影响和BN可以保存特征的内容的性质,将IN和BN组合成IBN block,并且可以将其集成到当前的先进的深度CNNs中,在不增加计算能力和参数量的情况下,实现模型优异的泛化能力。
知识点解析:论文通过实验发现,随着网络深度增加特征的KL散度逐渐变小,而内容散度逐渐变大。即网络浅层学习到的特征主要是外观特征,深层主要学习内容信息。而IN是常应用于风格转换中,消除外观变化对学习到的特征的影响。根据先验知识,常规的外边变化,如颜色、光照等,可以通过BN或增加数据来消除影响,而当外观方差复杂且未知时,如图像样式多样和虚拟/现实等,最近的研究显示上述变化可以被编码在特征图的像素值中,需要设计固定的结构以消除其影响。在先前的工作中,IN已经展现了消除这种外观差异的潜力。虽然IN可以消除外观变化,但是会影响特征内容信息。
根据以上观察,论文将IN和BN进行组合成IBN block,使得提取的特征既可以消除外观影响又可以保留特征内容信息。但是为了不损害特征内容信息,论文只在先进网络的浅层集成IBN block。由此得到下图的网络结构:a):因干净的shortcuts对ResNet的训练和优化至关重要。所以只能讲IN添加在residual path。b):为避免失调,将IN放在residual path中的第一个正则化层。c):half IN和BN的设计来源于以上观察。
结果展示:
周郎有话说:IBN block在不增加参数和计算量的情况下,可以轻易的集成到先进的深度CNNs中,并且可以消除外观变化的影响。值得应用尝试。