畳み込みニューラルネットワーク (G検定)

畳み込みニューラルネットワーク

1. 定義と概要

畳み込みニューラルネットワーク(CNN、Convolutional Neural Network)とは、画像のような格子状のデータを扱うために考案されたニューラルネットワークの一種です。畳み込み層(フィルタを使って画像の特徴を抽出する層)とプーリング層(畳み込み層が作った特徴マップのサイズを一定のルールで縮小する層)を交互に重ねます。最後に全結合層(前の層のすべてのユニットと次の層のすべてのユニットをつなぎ、最終的な分類判断を行う層)で判断を下す構造を持ちます。

畳み込み層では、フィルタ(カーネル。画像から特徴を読み取るための小さな数値の組み合わせ)を画像に当てることで、特徴マップ(フィルタを当てた結果できあがる、特徴を表すデータ)と呼ばれるデータを作り出し、その重みは学習によって自動調整されます。どこに注目すれば見分けがつくのかを、データを見ながらモデル自身が調整していく形です。

従来は人間があらかじめ特徴量設計(画像のどの特徴に注目するかを決めるルール作りの作業)を行っていましたが、CNNはこの工程を不要にした点が最大の特徴です。この仕組みにより、画像分類や物体検出(画像の中から特定の物体の位置と種類を見つけ出す処理)に広く用いられています。

従来の全結合型のニューラルネットワーク(入力層・中間層・出力層のすべてのユニットを結合する構造)で画像を扱う場合、画像データを1列に並べ替えてから入力する必要があり、縦横の位置関係という空間的な情報が失われます。加えて、全ユニットを結合するため学習すべきパラメータ(モデルの中で学習によって調整される数値)の数も膨大になるという課題がありました。

CNNは、生物の視覚のしくみを参考にした構造を土台に、画像を2次元のまま扱いながら畳み込み層とプーリング層を繰り返し重ねる設計で、この課題に対応しています。画像を平らに並べ替えずに扱うため、隣り合う画素どうしの位置関係を保ったまま特徴を読み取れます。

転機になったのが、2012年の画像認識コンペティションILSVRC(大規模な画像データセットを用いて画像認識の性能を競う競技会)です。この大会で、CNNベースのAlexNet(2012年のILSVRCで好成績を収めた、画像を分類するモデル)が従来手法を大きく上回る精度を記録しました。この出来事をきっかけに、CNNは画像認識の主流の技術として広がりました。

2. 試験対策ポイント

CNNの構成は、畳み込み層で特徴を抽出したのち活性化関数(出力の強弱を非線形に変換する関数)を適用し、プーリング層でサイズを縮小するという一組の処理を複数回重ね、最後に全結合層で分類判断を下す積層構造が柱になります。この積層構造の全体像をつかんでおくことが、CNNを理解する出発点になります。畳み込み演算の細かな計算方法やプーリングの方式といった各層内部の仕組みは、それぞれ個別の論点として扱われます。

畳み込み層とプーリング層は役割が異なります。全結合層も含め、3種類の層がそれぞれ何を担うのかを並べると、次のように整理できます。

層 担う役割
畳み込み層 フィルタを画像の上でスライドさせながら局所的な特徴を検出する
プーリング層 畳み込み層が作った特徴マップのサイズを一定のルールで縮小する
全結合層 最終的な分類判断を下す

特徴を細かく拾う働きと、拾った結果を要約して縮める働きが交互に並び、最後に判断へつながる流れです。畳み込みと縮小のどちらがどの層の担当なのかは、あわせて整理しておきたいところです。

CNN最大の意義は、従来は人間があらかじめ設計していた特徴量設計を、データからの学習によって自動化した点にあります。エッジや模様といった、モデルが手がかりにする特徴(特徴量)の検出ルールを人手で作り込む必要がなくなったことが、画像認識の精度向上につながりました。

2012年のILSVRCで、CNNベースのAlexNetが従来手法を大きく上回る精度を記録した出来事は、CNNが画像認識の主流技術として定着する転換点として位置づけられます(AlexNetの技術的な詳細は別記事に譲ります)。

CNNの構造は生物の視覚のしくみを参考にしたもので、フィルタを画像の一部だけに当てる仕組みや、画像の端の扱い、特徴マップの枚数の調整など、細かな設計要素はそれぞれ別のテーマとして扱われます。層をより深く積み重ねた発展形のアーキテクチャも知られていますが、個々のモデル名の違いには本記事では立ち入りません。

3. 関連概念との比較・相違点

全結合型のニューラルネットワーク(単純パーセプトロンや多層パーセプトロンなど、各層のすべてのユニットを結合する構造のネットワーク)とCNNの最大の違いは、画像データの扱い方にあります。入力の仕方と、それがもたらす結果を並べると、次のように整理できます。

観点 全結合型のニューラルネットワーク CNN
画像データの入力 1列のデータに引き伸ばしてから入力する 2次元のまま保持して処理する
位置関係の情報 失われがち 縦横の位置関係を保ったまま特徴を抽出できる
学習すべきパラメータ数 膨大になりやすい 抑えられる

この扱い方の違いは、CNNが画像認識に適している理由の核心にあたる部分です。パラメータ数が抑えられることは、学習にかかる計算量やメモリの負荷を軽くすることにもつながります。

畳み込み層・プーリング層・全結合層とCNNそのものの関係も、混同しやすい組み合わせです。CNNは、これらの層を組み合わせた「モデル全体」を指す名称であり、各層はそのモデルを構成する部品という位置づけにあります。

畳み込み層が特徴を抽出し、プーリング層がサイズを縮小し、全結合層が最終的な分類判断を下すというように、それぞれの層が異なる役割を分担しながら1つのCNNを形づくっています。各層内部の仕組みは、それぞれ別記事で扱われるテーマです。

4. ビジネス・実務での活用シナリオ

製造業では、外観検査カメラの映像から傷や異物といった微細な特徴をCNNが自動で抽出する事例が広がっています。従来は熟練の検査員による目視確認に頼っていた工程を機械が担うことで、検査の負担を減らしながら検出精度を底上げできる点が、CNNが選ばれる理由になっています。人の集中力に左右されやすかった検査の質を、一定の基準で保ちやすくなる効果も見込めます。

医療の分野では、CTやMRIなどの医用画像から病変らしき領域の特徴をCNNが捉え、画像診断の一次スクリーニング(本格的な診断の前に行う絞り込みの確認作業)を支援する取り組みが進んでいます。膨大な枚数の画像を一定の基準で確認し続ける作業は、人の目だけに頼ると見落としや疲労が生じやすく、CNNによる支援がその負担を和らげます。最終的な診断の判断は医師が担いますが、注目すべき領域を先に絞り込めることは、確認作業全体の効率にも関わってきます。

自動運転や防犯の分野でも、CNNは周囲認識の基盤を担います。車載カメラや監視カメラの映像から歩行者・車両・不審物の特徴をCNNが検出し、後段の物体検出や追跡処理と組み合わせることで、状況を把握し続ける仕組みが成り立っています。刻一刻と変わる映像の中から必要な情報だけを取り出す処理は、人手による監視だけでは対応しきれない規模と速度を要する場面が多く、CNNの活用が現場を支えます。

5. 要点まとめ

  • CNN(畳み込みニューラルネットワーク)は、畳み込み層とプーリング層を重ねたのち全結合層で分類を行う、画像認識に適したニューラルネットワークです。
  • 画像を2次元のまま扱い特徴量設計を自動化した点が、従来の全結合型ネットワークとの最大の違いです。
  • 2012年のILSVRCでAlexNetが従来手法を大きく上回る精度を示したことが、CNNが画像認識の基盤技術として広がる転換点になりました。

6. 確認問題

問1CNN(畳み込みニューラルネットワーク)は、畳み込み層とプーリング層を繰り返し重ねたのち、最後に全結合層で分類判断を行う構造を持つ。

解答・解説をみる

○ 正しい

CNNの基本構成は、畳み込み層とプーリング層のセットを複数回重ね、最後に全結合層につなぐ積層構造です。各層内部の詳しい計算方法は、また別の論点として扱われます。

問2CNNは画像データを1次元に並べ替えてから入力層で処理するため、全結合型のニューラルネットワークよりも空間的な位置関係を保持しやすい。

解答・解説をみる

× 誤り

正しくは、CNNは画像を2次元のまま扱うことで空間的な位置関係を保つ構造です。1次元に並べ替えて空間情報を失うのは、従来の全結合型ネットワークの側の課題にあたります。

問3CNNの登場によって、画像認識に用いる特徴量を人間があらかじめ設計する必要がなくなり、データからの学習によって自動的に特徴を抽出できるようになった。

解答・解説をみる

○ 正しい

CNNはフィルタの重みを学習によって自動調整するため、従来人間が担っていた特徴量設計の工程を不要にしました。