CNN基礎 - 畳み込み・プーリング・重み共有

CNNの基礎を、畳み込み層・プーリング層・全結合層の役割と、重み共有・ストライド・パディングから解説します。

画像認識の王者『CNN』(畳み込みニューラルネット) は、G検定ディープラーニング分野の中核。仕組みを直感的に理解しましょう。

雷門 あかり(普段) 雷門 あかり

CNNって、なんで画像に強いの?

六角 いずみ 先生(笑顔) 六角 いずみ 先生

CNN(畳み込みニューラルネット) は、画像の局所的な特徴を効率的に捉えるように設計されているの。
畳み込み層、プーリング層、全結合層の組合せで構成されるわ。

白銀 エマ(普段) 白銀 エマ

畳み込み層(Convolution Layer) は、小さなフィルタ(カーネル) を画像上でスライドさせ、局所的な特徴 (エッジ、角など) を抽出するの。

紫藤 ゆら(笑顔) 紫藤 ゆら

窓を動かしながら特徴を見つけていくんですねぇ!

六角 いずみ 先生(普段) 六角 いずみ 先生

フィルタの動きにはストライド(スライド幅) とパディング(端の埋め) というハイパーパラメータがあるわ。

白銀 エマ(普段) 白銀 エマ

重要な概念が重み共有(Weight Sharing)。
同じフィルタを画像全体に適用するので、位置に依存しない特徴学習ができるの。
パラメータ数も大幅に削減されるわ。

雷門 あかり(びっくり) 雷門 あかり

位置が変わっても同じフィルタで見つけられるんだ!

六角 いずみ 先生(笑顔) 六角 いずみ 先生

プーリング層(Pooling Layer) は特徴マップを縮小する操作。
Max Poolingは領域内の最大値、Average Poolingは平均値を取るの。

白銀 エマ(普段) 白銀 エマ

プーリングの役割は『位置ずれへのロバスト性』と『計算量削減』。
少し位置がズレても同じ特徴を検出できるのよ。

紫藤 ゆら(笑顔) 紫藤 ゆら

画像が少しズレても大丈夫なんですねぇ、便利ですぅ♪

六角 いずみ 先生(普段) 六角 いずみ 先生

最後に全結合層(Fully Connected Layer) で特徴を統合してクラスを予測するのが典型構造ね。

白銀 エマ(普段) 白銀 エマ

CNNの元祖はヤン・ルカンのLeNet(1998)。
手書き数字認識用のネットワークで、現代のCNNの原型よ。

雷門 あかり(笑い) 雷門 あかり

そんな昔からあったんだ、すごっ!

六角 いずみ 先生(笑顔) 六角 いずみ 先生

CNNは画像のほかにも、音声や時系列、自然言語にも応用されているのよ。
次の記事で主要モデルの進化を追っていきましょう。

六角 いずみ 先生(普段) 六角 いずみ 先生

G検定では『CNN=畳み込み層+プーリング層+全結合層』『重み共有』『ストライド・パディング』『LeNet (ルカン, 1998)』を押さえて!

確認クイズ

CNNで同じフィルタを画像全体に適用することでパラメータ数を削減する仕組みはどれか。

  1. ドロップアウト
  2. 重み共有
  3. バッチ正規化
  4. スキップ接続
こたえを見る

正解: 2. 重み共有

重み共有 (Weight Sharing)はCNNの本質的特徴で、同じフィルタを画像全体で使うことでパラメータ数を大幅に削減し、位置非依存の特徴学習を可能にします。

🔖 この記事の関連書籍

Amazonアソシエイトリンクを含みます。他分野は おすすめ書籍ページ へ。