畳み込みニューラルネットワーク(CNN)
畳み込みニューラルネットワーク(CNN)がコンピューター・ビジョンにどのような革命をもたらし、ヘルスケアや自動運転車などのAIにどのようなパワーを与えているかをご覧ください。
畳み込みニューラルネットワーク(CNN)は、画像のような格子状のトポロジーを持つデータの処理に非常に有効な、特殊なタイプのニューラルネットワーク(NN)である。人間の視覚野にヒントを得たCNNは、入力データから特徴の空間階層を自動的かつ適応的に学習する。このため、CNNは現代のコンピュータ・ビジョン(CV)タスクのほとんどにおいて基礎となるアーキテクチャとなっており、画像分類から物体検出まで、あらゆる分野で最先端の成果を上げている。
CNNの仕事ぶり
ある層のすべてのニューロンが次の層のすべてのニューロンに接続されている標準的なニューラルネットワークとは異なり、CNNは畳み込みと呼ばれる特別な数学的演算を使用する。これにより、ネットワークはピクセル間の空間的関係を保持したまま、局所的な受容野で特徴を学習することができる。
典型的なCNNアーキテクチャは、いくつかの重要なレイヤーから構成されている:
- 畳み込み層:フィルター(カーネル)が入力画像上をスライドし、特徴マップを生成する。これらのマップは、エッジ、コーナー、テクスチャなどのパターンを強調する。これらのフィルターのサイズと検出するパターンは、モデルのトレーニング中に学習される。
- 活性化レイヤー:各畳み込みの後、ReLUのような活性化関数を適用して非線形性を導入し、モデルがより複雑なパターンを学習できるようにする。
- プーリング(ダウンサンプリング)レイヤ:このレイヤーは特徴マップの空間次元(幅と高さ)を縮小し、計算負荷を減らし、検出された特徴を位置や向きの変化に対してよりロバストにするのに役立つ。このトピックに関する古典的な論文に、ImageNet Classification with Deep Convolutional Neural Networksがある。
- 完全接続層:いくつかの畳み込み層とプーリング層の後、高レベルの特徴は平坦化され、学習された特徴に基づいて分類を実行する完全接続層に渡される。
Cnnと他のアーキテクチャの比較
CNNは深層学習モデルの一種であるが、他のアーキテクチャとは大きく異なる。
- ニューラルネットワーク(NN):標準的なNNは入力データを平面ベクトルとして扱い、空間情報をすべて失う。CNNはこの情報を保持するため、画像解析に理想的である。
- ヴィジョン・トランスフォーマー(ViTs):空間的な局所性に強い帰納的バイアスを持つCNNとは異なる、 ViTs 画像をパッチのシーケンスとして扱い 自戒 グローバルな関係を学習するメカニズム。ViTは訓練に多くのデータを必要とすることが多いが、長期的な文脈が重要なタスクを得意とする。最新のモデルの多くは RT-DETRを組み合わせたハイブリッド・アプローチを使用する。
backbone
トランスフォーマー detection head
.
実世界での応用
CNNは、数え切れないほどの実世界アプリケーションの原動力となっている:
ツールとフレームワーク
CNNの開発と導入は、強力なツールとフレームワークによってサポートされている: