ニューラルネットワークの構造とその歴史

投稿者: | 2017-09-11

脳は神経細胞(ニューロン)のネットワークで出来ていることが知られています。そこで、ニューロンをモデル化した「ユニット」1)詳細は「ニューラルネットワークの基本要素: ユニット」を参照くださいをつないでネットワーク化することで脳が持つ機能(物体認識や判別など)を実現することが期待できます。

ネットワークの作り方は色々知られていますが本記事では最も基本的な階層型ニューラルネットワーク(Hierarchical Neural Network)について紹介します。

また、ニューラルネットワークは「脳をモデル化」していることから人工知能の本命とされる一方で「期待、熱狂そして失望」を繰り返してきました。ここではその歴史についても触れたいと思います。

階層型ニューラルネットワーク

階層型ニューラルネットワークでは層(layer)で区分けされたユニットによって信号が順次処理され出力が得られるネットワークです。層は大きく

  • 入力層(input layer)
  • 隠れ層(hidden layer)2)中間層(intermediate layer)とも呼びます。
  • 出力層(output layer)

の3つに分けられており図示すると以下になります。

入力層には与えられた情報をそのまま出力するユニットを並べます。隠れ層、出力層では「ニューラルネットワークの基本要素: ユニット」で定義した処理をそれぞれ行うユニットを配置し、出力層の出力をニューラルネットワーク全体の出力とします。

ニューラルネットワークの構造と歴史

ニューラルネットワークの歴史を紐解くと2値分類問題に対して1958年にローゼンブラット(Rosenblatt)が発表したパーセプトロン(perceptron)は

  • 入力層: 教師データの次元と同じ数のユニットを配置
  • 隠れ層: なし
  • 出力層: 1つのユニットを配置

と非常にシンプルな階層型ニューラルネットワークと捉えることが出来ます。

パーセプトロンは1960年代に第一次AIブームの牽引役として非常に注目を集めたものの線形分離不可能な問題を学習できないことがミンスキー(Minsky)によって指摘され下火になりました。

その後、隠れ層を1つ組み込んだ

3層ニューラルネットワークは

任意の連続関数を任意の精度で近似できる

という強力な表現力を持っていることが示され再び注目を集めました。しかし、

  • 勾配消失問題でなかなか学習が収束しない
  • その表現力の高さ故に過学習が生じやすい

と汎化能力の獲得が難しいことが明らかになり汎化能力の高いサポートベクタマシン(Support Vector Machine, SVM)の登場もあり再び下火になりました。

長く冬の時代が続いたのですが

  • ImageNet3)ImageNetの詳細はこちらの記事を参照ください。など大量かつ良質なデータセットの登場
  • ReLU活性化関数による勾配消失問題の軽減
  • オートエンコーダを使った初期化による学習効率の向上
  • Dropoutやdata augmentationによる過学習の抑止
  • GPUによる並列計算の普及

などの学習手法により2000年代後半には2つ以上の隠れ層を組み込んだ「深層ニューラルネットワーク(Deep Neural Network, DNN)」が学習できることが明らかになってきました。このDNNの学習手法を総称して深層学習(Deep Learning, DL)と呼び4)深層学習の中には「良くなるのは確かだがなぜ良くなるのかが分からない」ものもあり一部の学習手法は「黒魔術」と呼ばれたりもします。ます。

なかでもヒントン(Hinton)先生らのチームが2012年の画像認識コンペILSVRCで深層畳み込みニューラルネットワーク(Deep Convolutional Neural Network, Deep CNN)というDNNを使ったモデルで他のチームを圧倒する精度をたたき出し

今まで職人技と考えられていた特徴量設計も機械学習で出来ることを立証

したことで第3次AIブームの火付け役となりました。

画像認識以外にも知性の象徴ともされる囲碁でDNNを応用したAlpha Goがイ・セドル、柯潔ら世界トップレベルの囲碁棋士に勝利し大きなニュースとなりました。今後、自動運転やビジネスへの応用も期待され今やディープラーニングという言葉を眼にしない日はないほど注目を集める技術となりました。

これからDeep Neural Networkの基礎であるパーセプトロン、3層ニューラルネットワークの性質やその限界を紹介し、CNNを中心とした深層ニューラルネットワークやその学習を支えるディープラーニング手法について見ていきたいと思います。

シリーズ記事

参考文献

脚注   [ + ]

1. 詳細は「ニューラルネットワークの基本要素: ユニット」を参照ください
2. 中間層(intermediate layer)とも呼びます。
3. ImageNetの詳細はこちらの記事を参照ください。
4. 深層学習の中には「良くなるのは確かだがなぜ良くなるのかが分からない」ものもあり一部の学習手法は「黒魔術」と呼ばれたりもします。

スポンサーリンク


ニューラルネットワークの構造とその歴史」への2件のフィードバック

  1. ピンバック: 【5分でわかる】AI研究、60年の歴史を完全解説! | AI専門ニュースメディア AINOW

  2. ピンバック: ニューラルネットワークの基本要素:ユニット | 有意に無意味な話

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です