在读计算机视觉的相关论文时,常常会看到平移不变性这个词,本文将介绍卷积神经网络中的平移不变性是什么,以及为何具备平移不变性。网络
不变性意味着即便目标的外观发生了某种变化,可是你依然能够把它识别出来。ui
这对图像分类来讲是一种很好的特性,由于咱们但愿图像中目标不管是被平移,被旋转,仍是被缩放,甚至是不一样的光照条件、视角,均可以被成功地识别出来。3d
因此上面的描述就对应着各类不变性:blog
在欧几里得几何中,平移是一种几何变换,表示把一幅图像或一个空间中的每个点在相同方向移动相同距离。好比对图像分类任务来讲,图像中的目标无论被移动到图片的哪一个位置,获得的结果(标签)应该是相同的,这就是卷积神经网络中的平移不变性。图片
平移不变性意味着系统产生彻底相同的响应(输出),无论它的输入是如何平移的 。io
平移同变性(translation equivariance)意味着系统在不一样位置的工做原理相同,但它的响应随着目标位置的变化而变化 。好比,实例分割任务,就须要平移同变性,目标若是被平移了,那么输出的实例掩码也应该相应地变化。原理
最近看的FCIS这篇文章中提到,一个像素在某一个实例中多是前景,可是在相邻的一个实例中可能就是背景了,也就是说,同一个像素在不一样的相对位置,具备不一样的语义,对应着不一样的响应,这说的也是平移同变性。神经网络
简单地说,卷积+最大池化约等于平移不变性。im
卷积:简单地说,图像通过平移,相应的特征图上的表达也是平移的。d3
下图只是一个为了说明这个问题的例子。输入图像的左下角有一我的脸,通过卷积,人脸的特征(眼睛,鼻子)也位于特征图的左下角。
假如人脸特征在图像的左上角,那么卷积后对应的特征也在特征图的左上角。
在神经网络中,卷积被定义为不一样位置的特征检测器,也就意味着,不管目标出如今图像中的哪一个位置,它都会检测到一样的这些特征,输出一样的响应。好比人脸被移动到了图像左下角,卷积核直到移动到左下角的位置才会检测到它的特征。
池化:好比最大池化,它返回感觉野中的最大值,若是最大值被移动了,可是仍然在这个感觉野中,那么池化层也仍然会输出相同的最大值。这就有点平移不变的意思了。
因此这两种操做共同提供了一些平移不变性,即便图像被平移,卷积保证仍然能检测到它的特征,池化则尽量地保持一致的表达。