畳み込みニューラルネットワーク
CNNは畳み込み処理を用いたニューラルネットワークの総称である。convolutionの種類、Conv kernelのサイズと層の関係、特殊なモジュールの有無などにより様々なサブタイプ(変種)が存在する。
ここでは第 l {\displaystyle l} 層 L l {\displaystyle L_{l}} を畳み込み C l + 1 {\displaystyle C_{l+1}} で変換して次の層 L l + 1 {\displaystyle L_{l+1}} を得る(例: 入力層 L 0 {\displaystyle L_{0}} に C 1 {\displaystyle C_{1}} を作用させて中間層 L 1 {\displaystyle L_{1}} を得る)。ここで C l {\displaystyle C_{l}} はカーネルサイズ k l {\displaystyle k_{l}} 、ストライド s l {\displaystyle s_{l}} をもつとする。出力層 L N {\displaystyle L_{N}} から見た L l {\displaystyle L_{l}} における受容野を R F l {\displaystyle RF_{l}} としたとき、次の式が成立する(図参照)。
R F l − 1 = ( R F l − 1 ) s l + k l {\displaystyle RF_{l-1}=\left(RF_{l}-1\right)s_{l}+k_{l}}
よって R F N = 1 {\displaystyle RF_{N}=1} を初期条件としてこの式を入力層受容野 R F 0 {\displaystyle RF_{0}} まで再帰することで受容野を計算できる。