PR

人間の神経回路網の機能を模擬

  深層学習のベースになるニューラルネットは、人間の神経回路網の機能を模擬したものである。神経回路網を模擬した人工ニューロンは、ニューロン・モルフィック・コンピューティングとよばれる。信号強度の表現に入力パルス間の時間間隔が使用されるため、アナログ回路での実装に向いている。GPUやCPU、FPGAといったデジタル回路における実装は効率的ではない。そこで、ニューラルネットでは信号強度を振幅で模擬して、デジタル回路に効率的に実装できるようにした(図2)。

図2 ニューラルネットワークの仕組み
図2 ニューラルネットワークの仕組み
人間の神経回路網の機能を振幅で模擬する。
[画像のクリックで拡大表示]

  その仕組みを見ると、まず前段の入力信号(X1、X2、X3)に学習で得られた重み係数(W1、W2、W3)を掛けて和をとる。次にその積和結果(x)を活性化関数F(x)に入力し、最終出力(y)を得る。図2では、最近最も多用されている「ReLU(Rectified Linear Unit)」の例を示した。

  1980年代の第2次AI(人工知能)ブームでは、数段までのニューラルネットが、後述する全結合の形で使用されていた。段数を増やせば、より多様な特徴抽出ができることは分かっていた。しかし「勾配消失」や「過学習」などの問題で深層学習を実現できなかった1)

  現在のAIブームの発端の一つとなったのは2012年のImageNetで、従来の技術では破られなかった75%以上の画像認識精度を85%にまで向上させたAlexNetである。同ネットは8段の深層学習で構成する。勾配消失の問題を解決するために、活性化関数として図2のReLUが採用された。過学習に対しては、確率的に(ランダムに)一部の段間結合を切断する「ドロップアウト」という技術により、学習を冗長にしてこれを防いだ1)

  さらに最も大切な技術要素は、冒頭で紹介したCNNとFCN(全結合ニューラルネット)の組み合わせである。これらの技術は第2次AIブームの後に沈静化したAI研究の中で、各研究者により蓄積された技術でもあった。ここで、非常に簡素化したAlexNetの概念を紹介する(図3)。同ネットは前段の「5段のCNN」と、後段の「3段のFCN」で構成されている。これは人間の網膜や視神経、脳のモデリングに近いと思える。CNNは人間の網膜、視神経のように、各ニューロンが「3×3」のように限られた領域の前段ニューロン、もしくは入力画素に接続されている。そして特定のCNNフィルター(3×3の入力に対応する3×3の重み係数マトリックス)は、特定の特徴を抽出している。例えば入力画像の輪郭の方向などである。

図3 簡素化されたニューラルネット「AlexNet」の概念
図3 簡素化されたニューラルネット「AlexNet」の概念
5段のCNNと3段のFCNで構成する。CNNで入力画像の輪郭や構成パーツを、FCNで個別の画像を認識する。
[画像のクリックで拡大表示]

  中間CNNフィルターでは最初の輪郭情報を集めて四角形や丸、直線などの基本的な図形を認識し、それらを集めて顔の構成部品(目、鼻、口など)を認識する。そして最後に、3段のFCNによってより高度な判断を行い、特定の人物であることを認識する。より詳しく見ると、図3の初段CNNフィルターのうち、輪郭の傾きを検出する目的以外のフィルターが存在する。(フィルターの外縁の輝度が高いなどの)深層学習を行うと、このように人間の能力を超えた特徴を抽出できる(実際には96種もある)。これが、ニューラルネットの認識率を向上させると考えられる。