畳み込みニューラルネットワーク
畳み込みニューラルネットワーク(たたみこみニューラルネットワーク、英: Convolutional neural network、略称: CNNまたはConvNet)は層間を共通重みの局所結合で繋いだニューラルネットワークの総称・クラスである。機械学習、特に画像や動画認識に広く使われる。
CNNは、その重み(行列の)共有構造と並進不変特性に基づいて、シフト不変(shift invariant)あるいは位置不変(space invariant)人工ニューラルネットワーク(SIANN)とも呼ばれている。
一般的な畳み込み処理は以下のように定式化される。 C o u t j {\displaystyle C_{\mathrm {out} _{j}}} はj番目の出力チャネルを、 ⋆ {\displaystyle \star } は相互相関関数を意味する。
o u t p u t ( C o u t j ) = b i a s ( C o u t j ) + ∑ k = 1 C i n w e i g h t ( C o u t j , k ) ⋆ i n p u t ( k ) {\displaystyle \mathrm {output} (C_{\mathrm {out} _{j}})=\mathrm {bias} (C_{\mathrm {out} _{j}})+\sum _{k=1}^{C_{\mathrm {in} }}\mathrm {weight} (C_{\mathrm {out} _{j}},k)\star \mathrm {input} (k)}