1 概述
在讀計算機視覺的相關論文時,經常會看到平移不變性這個詞,本文將介紹卷積神經網絡中的平移不變性是什么,以及為什么具有平移不變性。
2 什么是平移不變性
2.1 不變性
不變性意味着即使目標的外觀發生了某種變化,但是你依然可以把它識別出來。
這對圖像分類來說是一種很好的特性,因為我們希望圖像中目標無論是被平移,被旋轉,還是被縮放,甚至是不同的光照條件、視角,都可以被成功地識別出來。
所以上面的描述就對應着各種不變性:
- 平移不變性:Translation Invariance
- 旋轉/視角不變性:Ratation/Viewpoint Invariance
- 尺度不變性:Size Invariance
- 光照不變性:Illumination Invariance
2.2 平移不變性/平移同變性
在歐幾里得幾何中,平移是一種幾何變換,表示把一幅圖像或一個空間中的每一個點在相同方向移動相同距離。比如對圖像分類任務來說,圖像中的目標不管被移動到圖片的哪個位置,得到的結果(標簽)應該是相同的,這就是卷積神經網絡中的平移不變性。
平移不變性意味着系統產生完全相同的響應(輸出),不管它的輸入是如何平移的 。
平移同變性(translation equivariance)意味着系統在不同位置的工作原理相同,但它的響應隨着目標位置的變化而變化 。比如,實例分割任務,就需要平移同變性,目標如果被平移了,那么輸出的實例掩碼也應該相應地變化。
最近看的FCIS這篇文章中提到,一個像素在某一個實例中可能是前景,但是在相鄰的一個實例中可能就是背景了,也就是說,同一個像素在不同的相對位置,具有不同的語義,對應着不同的響應,這說的也是平移同變性。
3 為什么卷積神經網絡具有平移不變性
簡單地說,卷積+最大池化約等於平移不變性。
卷積:簡單地說,圖像經過平移,相應的特征圖上的表達也是平移的。
下圖只是一個為了說明這個問題的例子。輸入圖像的左下角有一個人臉,經過卷積,人臉的特征(眼睛,鼻子)也位於特征圖的左下角。

假如人臉特征在圖像的左上角,那么卷積后對應的特征也在特征圖的左上角。

在神經網絡中,卷積被定義為不同位置的特征檢測器,也就意味着,無論目標出現在圖像中的哪個位置,它都會檢測到同樣的這些特征,輸出同樣的響應。比如人臉被移動到了圖像左下角,卷積核直到移動到左下角的位置才會檢測到它的特征。
池化:比如最大池化,它返回感受野中的最大值,如果最大值被移動了,但是仍然在這個感受野中,那么池化層也仍然會輸出相同的最大值。這就有點平移不變的意思了。
所以這兩種操作共同提供了一些平移不變性,即使圖像被平移,卷積保證仍然能檢測到它的特征,池化則盡可能地保持一致的表達。