不变性
- 平移不变性(Translation Invariance)
- 旋转不变性(Ratation Invariance)
- 尺度不变性(Size Invariance)
- 光照不变性(Illumination Invariance)
- 仿射不变性(Affine Invariance)
- 投影不变性(Projected Invariance)
不变性:指的是即使目标外观发生了某种变化(平移、旋转、尺度缩放、光照变化等),依然可以将它识别出来。不变性对于图像分类来说是一种很好的特性,因为我们希望图像中的目标无论是发生平移、旋转、缩放,还是在不同的光照条件或视角下,都可以被成功地识别出来。
平移不变性(Translation Invariance)
卷积神经网络具有平移不变性。具体而言,图像发生平移,经过卷积网络后得到的相应特征图上的表达也是平移的。如果输入图像的左上角有一个人脸,经过卷积后,人脸的特征会位于特征图的左上角;此时将人脸位置平移到了图像的右上角,则经过卷积后,人脸的特征也会位于特征图的右上角。
在欧几里得几何中,平移是一种几何变换,表示把一幅图像或一个空间中的每一个点在相同方向移动相同距离。比如对图像分类任务来说,图像中的目标不管被移动到哪个位置,得到的结果(标签)应该是相同的,这就是卷积神经网络中的平移不变性。
平移不变性意味着系统产生完全相同的响应(输出),不管它的输入是如何平移的。平移等变性(translation equivariance)意味着系统在不同位置的工作原理相同,但它的响应随着目标位置的变化而变化 。比如,实例分割任务,就需要平移等变性,目标如果被平移了,那么输出的实例掩码也应该相应地变化。
有人认为CNN中的平移不变性是由卷积层和全连接层共同作用导致的。
旋转不变性(Ratation Invariance)
CNN不具有旋转不变性。
对于上面这幅图来说,小白和小黑看到的并不是一个东西。
小白:我的一个特征左边是三角形,右边是圆形,上面是菱形,下面是正方形。
小黑:我的一个特征左边是正方形,右边是菱形,上面是三角形,下面是圆形。
于是小黑和小白就认为他们看到的并不是同一个图片,但事实上他们看的确实是同一幅图像。于是我们就说这种特征不具有旋转不变性。
对于上面这幅图来说,小白和小黑看到的就是一个东西。
小白:我的一个特征西边是三角形,东边是圆形,北边是菱形,南边是正方形。
小黑:我也有一个特征西边是三角形,东边是圆形,北边是菱形,南边是正方形。
这时候两个特征的描述就一致了,即拥有了旋转不变性。所以只要对特征定义方向,然后在同一个方向上进行特征描述就可以实现旋转不变性。
尺度不变性(Size Invariance)
CNN不具有尺度不变性。
对于上面这幅图来说,小白和小黑看到的并不是同一个东西。
小白:我的一个特征东边5个像素的地方有个圆形。
小黑:我的一个特征东边7个像素的地方有个圆形。
这就是尺度变化造成的特征不匹配,为了实现尺度不变性,就需要给特征加上尺度(缩放)因子,那么在进行特征描述的时候,将尺度统一就可以实现尺度不变性了。
所谓的旋转不变性和尺度不变性,就是我们在描述一个特征之前,将两张图像都变换到同一个方向和同一个尺度上,然后再在这个统一标准上来描述这个特征。同样的,如果在描述一个特征之前,将图像变换到同一个仿射尺度或者投影尺度上,那么就可以实现仿射不变性和投影不变性。