generated at
CNN
「行列とベクトルの掛け算」の代わりに、空間フィルタの処理もやるニューラルネットワーク
「小さいベクトルをスカラーに変換」するフィルタを、大きいベクトル(元画像)の色々な部分(カーネル)に対してやることで、大きいベクトル(元画像)をちょっと小さくしたベクトルを得る
みたいな感じかなblu3mo
この動作、確かに「畳み込み」って感じ
これをやることで、画像の中で必要な特徴を抽出する / いらない情報を排除する
その抽出方法も当然訓練される
あと、畳み込みの後にプーリングという処理もやることが多い
これは、シンプルに画像の解像度を下げる処理

輪郭検知のとこで説明した空間フィルタ、が鍵
フィルタを、自動で学習するのがCNN
複数のフィルタを自動で作り出す、そのカーネルの数がConvolutional Layerの数
あるフィルタは、犬の耳を検出できる物かもしれない
別のフィルタは、犬の目を検出するかも

間にpooling layerってのも挟むことがある
情報をできるだけ保ったまま、サイズを小さくするためのもの
平均とる手法や、最大値取る手法などがある
最大値のやつが、画像検知には向いてる(特徴のある部分を強調するから)

CNNは、画像のdepthを増やして、widthとheightを減らしていく処理
最初のlayerはdepthは3(rgbの場合)、だからwidthとheightの方が圧倒的に大きい
Conv Layerがdepthを増やす、Pooling layerがwidthとheightを減らす