コンピュータービジョンへの応用のため、畳み込みニューラルネットワーク(CNN)を研究しています。私はすでに標準のフィードフォワードニューラルネットワークに精通しているので、ここの一部の人々がCNNを理解するための追加のステップを手伝ってくれることを望んでいます。CNNについて私が考えることは次のとおりです。
- 従来のフィードフォワードNNでは、各要素が「入力レイヤー」でNNに入力する特徴ベクトルで構成されるトレーニングデータがあるため、画像認識では、各ピクセルを1つの入力にすることができます。これらは私たちの特徴ベクトルです。または、他の(おそらく小さい)特徴ベクトルを手動で作成することもできます。
- CNNの利点は、画像の歪みと位置により不変な、より強力な特徴ベクトルを生成できることです。次の図に示すように(このチュートリアルから)、CNNは機能マップを生成し、それが標準のニューラルネットワークに送られます(実際、これは巨大な前処理ステップです)。
- これらの「より良い」機能を得る方法は、畳み込みとサブサンプリングを交互に行うことです。サブサンプリングの仕組みを理解しています。各機能マップについて、ピクセルのサブセットを取得するか、ピクセルの値を平均化できます。
しかし、私が主に混乱しているのは、畳み込みステップの仕組みです。私は確率理論(2つのランダム変数の合計の密度)からの畳み込みに精通していますが、CNNでどのように機能し、なぜ効果的ですか?
私の質問はこれに似ていますが、特に、最初の畳み込みステップが機能する理由がわかりません。