マイノート

いろいろ勉強したことをまとめていきます

MENU

畳込みニューラルネットの処理メモ

畳込みニューラルネットワークの各処理をよく忘れるのでメモ

以下の画像の各処理を説明していく

f:id:ttt242242:20170320171712j:plain

入力画像。今回は(32,32)を想定

②畳込み

(3,3)のフィルタを用いて畳込みを行う。

畳後の出力(特徴量マップ)のサイズは以下の式で計算できる。

\begin{equation} (W-2(H/2),W-2(H/2)) \end{equation}

で計算できる。

(W,W)は入力画像のサイズ、(H,H)はフィルタのサイズ

今回の場合の出力のサイズは

\begin{equation} (32-2(3/2),32-2(3/2)) \\ = (30,30) \end{equation}

になる。ちなみにH/2の小数点以下は切り捨てる。

③パディング

様々な理由で、画像の大きさを調整する。

今回は入力サイズと同じになるように出力の特徴量マップの外枠を付け加え、

(32,32)サイズにする。

④プーリング

⑤畳込み、プーリングを任意の回数繰り返す

⑥最終的な出力を平坦化(flatten)する

平坦化する。つまり、2次元配列を普通の全結合のニューラルネットに流し込めるように1次元配列に変換する。

あとは普通のニューラルネットと同じ処理

上記の内容をスライドで

Cnn from com t

参考

深層学習 (機械学習プロフェッショナルシリーズ)

深層学習 (機械学習プロフェッショナルシリーズ)