ディープラーニング

出典: フリー百科事典『ウィキペディア(Wikipedia)』
移動先: 案内検索

ディープラーニング深層学習: deep learning)とは、多層構造のニューラルネットワーク(ディープニューラルネットワーク、: deep neural network)を用いた機械学習である[1]。莫大な計算資源を用意し、ニューラルネットワークの規模を拡大し、ヘテロジニアスなニューラルネットを構築する必要があるが、汎用人工知能(強いAI)の実現が期待されている[2]

概要[編集]

ディープラーニングは、ニューラルネットワークの多層化、特に3層以上のもの[3]に対し、1990年代に進められた脳、特に視覚野の研究[疑問点 ]や、「たった一つの学習理論(英語: One Learning Theory)」、ブルーノ・オルスホーゼンによるスパース・コーディング理論を基にしたアルゴリズムが実装されたものを指す[4]

これに画像などのデータを入力すると、情報が第1層からより深くへ伝達されるうちに、各層で学習が繰り返される[1]。この過程で、これまでは画像や音声などそれぞれのデータの研究者、技術者が手動で設定していた特徴量が自動で計算される[5][6]

特徴量とは、問題の解決に必要な本質的な変数であったり、特定の概念を特徴づける変数である[7]。この特徴量を発見できれば、あらゆる問題の解決につながったり[6]パターン認識精度の向上や、フレーム問題の解決につながったりすると期待されている[7]。この階層的な特徴量の学習が、ディープラーニングが従来の機械学習と決定的に異なる点である[8]

この技術は、画像認識音声認識等の分野に活用される[9]。2012年には、Googleの開発したグーグル・ブレインが、猫の概念を学習することに成功した[10][11]

先駆的な概念・手法は1980年前後からあった。2012年からは急速に研究が活発になり、第三次人工知能ブームが到来したとされている[3]。第三次人工知能ブーム以後は、技術的特異点到来までのシナリオに関しても真面目に議論されるようになり、機械学習は単なる一時的な流行を超えて社会インフラとして広く定着して行っているようである。現在は未だに特化型の人工知能のみが実用化されている段階にある。

これはAI研究に関する大きなブレイクスルーであり、学習方法に関する技術的な革新である、と松尾豊(東京大学准教授)は指摘している[12][13]

元々はジェフリー・ヒントンらの開発したディープラーニングは層が直列されたシンプルな構造をしていたが、現在のアルゴリズムは複数に分岐していたりループ構造を持ったりするなどグラフ構造が複雑化している。そのため、基本技術をまとめて複雑なグラフ構造を簡単に実現できるようにしたフレームワークも公開されている。

種類[編集]

ニューラルネットワークを多層積み重ねたモデルを機械学習させればディープラーニングであるが、有名なモデルとして以下の物がある[14]

畳み込みニューラルネットワーク[編集]

畳み込みニューラルネットワーク (Convolutional Neural Networks: CNN) とは、全結合していない順伝播型ニューラルネットワークの一種。特に2次元の畳込みニューラルネットワークは人間の視覚野のニューロンの結合と似たニューラルネットワークであり、人間の認知とよく似た学習が行われることが期待される。結合がスパースであるため、全結合しているニューラルネットワークに比べて学習が高速である。

1979年に福島邦彦が発表したネオコグニトロンから発展し、1988年に Homma Toshiteru らが音素の認識に[15]、1989年に Yann LeCun らが文字画像の認識に使用し[16][17]、1998年に LeCun らが発表した LeNet-5 へと続き、2012年に ILSVRC での物体カテゴリ認識で優勝したアルゴリズムも深層畳み込みニューラルネットワークである[18]。ネオコグニトロンの時から深層であったが、近年は深層であることを強調するため、深層が頭につき、深層畳み込みニューラルネットワークと呼ばれる事もある。自然言語処理に対する応用もなされはじめた。

再帰型ニューラルネットワーク[編集]

再帰型ニューラルネットワーク(Recurrent Neural Network:RNN)とは、有向閉路を持つニューラルネットワークの事。それ以前の入力によって変化する状態を保持する(オートマトン)。動画像、音声、言語など、入力データの順序によって出力が変わる場合に有効である。

1980年代から研究が始まり、1982年に発表されたホップフィールド・ネットワークが初期の研究。その後 Elman ネットワークや Jordan ネットワークが発表され、1997年にS. Hochreiter, J. Schmidhuber らが LSTMネットワーク(Long Short Term Memory)を発表した。

ディープビリーフネットワーク・ディープボルツマンマシン・積層自己符号化器[編集]

  1. 1層目の入力データに#スパースコーディングなどで回帰直線を引き、いくつかの基底を得る。
  2. 1層目で得られた基底と1層目の入力データとの内積をとり、バイアスを足してから任意の活性化関数に代入し、2層目の入力データとする。
  3. 2層目の入力データに回帰直線を引き、いくつかの基底を得る。
  4. 2層目で得られた基底と2層目の入力データとの内積をとり、バイアスを足してから任意の活性化関数に代入し、3層目の入力データとする。
  5. 上記1~4を必要な層の数だけ繰り返す。
  6. それぞれの層で得た基底を初期値とし、誤差逆伝播法を行う。

誤差逆伝播法は種々の理由により、3層以上になると有意な解を得ることができなかったが、上記の方法で良い初期解を得ることに成功したため、多層に渡っても学習が可能となった。

基底の計算はオートエンコーダ(自己符号化器)や制限ボルツマンマシン(RBM)が用いられることも多い。オートエンコーダは評価関数の選び方により、主成分分析やスパースコーディングに結果が一致する。1~4までの、最適な基底の計算と内積を繰り返す行為は積層自己符号化器(Stacked Denoising Autoencoder, SdA)と呼ばれる。また、これを事前学習と言う。一般に、オートエンコーダよりRBMにより得た基底のほうが良い結果をもたらすと言われるが、オートエンコーダを工夫して、RBMと同様の基底を計算するDenoisingオートエンコーダと呼ばれる手法も提案されている。

積層自己符号化器の最終層の出力はSVMなど既存の機械学習のアルゴリズムの入力として使われることもある。

Residual network[編集]

入力データを出力に変える変換を学習するのではなく、残差を学習する。通常の多層ニューラルネットより勾配消失がおきにくく、はるかに多層化できる。実験的には1000層まで学習されたものもある。欠点としては、入力次元数と出力次元数を変えることができない。

特有の問題[編集]

勾配消失問題[編集]

確率的勾配法は誤差から勾配を計算して中間層のウェイトを修正するが、シグモイド関数などは見てすぐにわかる通り、勾配が0に近い領域が存在する。偶然その領域に進むと勾配が0に近くなり、ウェイトがほぼ修正されなくなる。多層NNでは一カ所でも勾配が0に近い層が存在すると、それより下の層の勾配も全て0に近くなるため、確率的には層数が増えるほど学習が難しくなる。詳しくはバックプロパゲーション活性化関数も参照せよ。

過学習[編集]

トレーニングデータでは高識別率を達成しながら、テストデータでは識別率が低い現象。

テクニック[編集]

データ拡張[編集]

深層学習以外でも広く使われているが、入力データが画像など、どのようなテストデータが来るかあらかじめある程度の想定(モデル化)ができる場合は、たとえば画像の回転や引き延ばしを行うことで入力データ数を増やすことも昔から行われている。

活性化関数[編集]

古くからニューラルネットワークにおいてはシグモイド(sigmoid)関数がよく使われていたが、勾配消失問題などにより、近年では別の関数が使われるようになった。詳しくは活性化関数を参照。

ReLU[編集]

ReLU(rectified linear unit ランプ関数とも呼ばれる)

出力が0.0~1.0に規格化されないため勾配消失問題が起きにくく、またシグモイド関数に比べると単純であるために計算量が小さく学習が速く進む等のメリットがある。[19]

maxout[編集]

複数の次元の最大値を出力する関数。CNNのプーリングと同じ計算である。高性能と言われるが、性質上、次元が減少する。特徴選択も兼ねていると言える。

ドロップアウト[編集]

ドロップアウトはランダムに任意のニューロン(次元)を何割か無視してしまう技術である。入力データを増やせずとも、次元を減らすことで解の有意性を上げることができる。ドロップアウトして得た学習結果は、テスト時には同時に使用し、結果は平均して用いる。これはRandom forestと同様、検出率の低い識別器でも並列化することで信頼度を上げることができるためである。

スパースコーディング[編集]

Lasso回帰英語版とも呼ばれる。辞書行列と係数行列の内積(線形結合)で入力データ(列ベクトル)を近似するとき、係数行列は疎行列(非零の要素が僅かしかない行列)になる。L1 正則化のこと。

フレームワーク[編集]

  • Caffe - Python, C++
  • torch - Lua
  • Theano - Python。関数型言語。並列化に特化し、GPUのコードが自動的に生成される。
  • Pylearn2 - Python
  • Blocks - Python
  • Keras - Python TensorFlowのラッパー。theanoでも動作可能。
  • Lasagne - Python
  • deepy - Python
  • Deeplearning4j - Java, Scalaが使用されている。
  • EBlearn - C++で書かれているCNN用ライブラリ。
  • cuda-convnet - 基本的な機能はEBlearnと同じ。
  • Chainer - Python
  • TensorFlow - Python, C++

歴史[編集]

ディープラーニングの前身とも言えるニューラルネットワークが考案されたのは1957年であるが、マシンスペックの不足や、排他的論理和の認識ができないなどの欠点が露呈したため、研究が大きく続けられることはなかった[20]。その後、1980年代より、排他的論理和の問題を解決したバックプロパゲーションが開発されたが、非効率的なメカニズムや、動詞の過去形など複雑な認識ができない(そもそも3層ニューラルネットで任意関数は全て近似可能であり、大脳新皮質がなぜ3層以上存在するのかが不明であった)などの要因により、1990年代後半には沈静化した[21][22]

長らく冬の時代が続いてたニューラルネットワークであるが、2006年にジェフリー・ヒントンによってスタックドオートエンコーダなど多層にネットワークを積み重ねても精度を損なわない手法が提唱され、さらに2012年には物体の認識率を競うILSVRCにおいてジェフリー・ヒントン率いるトロント大学のチームがディープラーニングによって従来の手法(エラー率26%)に比べてエラー率17%と実に10%もの劇的な進歩を遂げたことが機械学習の研究者らに衝撃を与えた。さらに同年Googleがyoutubeの画像を大量にディープラーニングに与え実に16,000のCPUコアで3日間計算したところ猫を自ら認識できるようになったと発表し、物体認識タスクにおいては従来手法より飛躍的な進歩を遂げたことが決定的となった。[10][11][22][23]。その後もILSVRCでは毎年上位はディープラーニングを使ったチームが占めるようになり、エラー率はすでに5%程度にまで改善している。[24]

今日のディープラーニングにつながる世界的に最も先駆的研究として、日本の福島邦彦(NHK放送技術研究所、その後大阪大学基礎工学部生物工学科)によって1979年に発表されたネオコグニトロン[25]が挙げられる[26][27]。ネオコグニトロンには自己組織化機能があり、自ら学習することによってパターン認識能力を獲得(概念の形成)していく。応用例として、福島らは手書き文字データベース(ビッグデータ)から自己学習によって手書き文字認識能力(各文字の概念)が獲得されることを実証した。しかし、当時は「手書き文字認識方式の一つ」と誤解され、その重要性についての認識が世間に広がらなかった。

利用[編集]

ディープラーニングは物体認識を中心にさまざまな分野で活用されている。また、Googleをはじめとした多くのIT企業が研究開発に力を入れている。また、自動運転車の障害物センサーにも使われている[28]

GoogleのAndroid4.3[29]は、音声認識にディープラーニング技術を活用することで、精度を25から50パーセント向上させた[30]。2012年、スタンフォード大学との共同研究であるグーグル・ブレイン英語版(Google brain)は、1,000のサーバーの16,000のコアを使い、3日間で猫の概念を獲得し、話題となった[10][11]。この研究では、200ドット四方の1,000万枚の画像を解析させている。ただし、人間の脳には遠く及ばないと指摘されている[31]。GoogleLeNetと呼ばれるチームによるトロント大学との共同研究では、画像の説明文を自動で生成できる「Image to Text」と呼ばれるシステムを開発した。これは、コンピュータビジョンと自然言語処理を組み合わせ、ユーザーがアップロードした画像を認識し、説明文を表示するもの[32][33][34]。2015年3月、Schroffらは800万人の2億枚の画像を99.6%の精度で判定した(22層)[35]。2016年1月、AlphaGoと呼ばれるシステムが欧州の囲碁チャンピオンと2015年10月に対局し、5戦全勝の成績を収めていたことが発表された。主に開発に携わったのは2013年にGoogleが買収したDeepMind。囲碁はチェスよりも盤面が広いために打てる手数の多さは比較にならないほどで人間のプロと互角に打てるようになるまでさらに10年はかかるという予測を覆した点と、囲碁に特化したエキスパートマシンではなく汎用的にも用いる事ができるシステムを使っている点に注目が集まった[36][37]。また、2016年3月、世界最強の棋士にも名が挙がる李世ドル[38]とAlphaGoが5番勝負を行い、結果は4勝1敗でAlphagoの勝利であった[39]

Facebookは、ユーザーがアップロードした画像を、ディープラーニングによって認識させ、何が写っているかの判別精度を向上させている[30]。また、人工知能研究ラボを2013年に立ち上げ[40]、その成果としてディープラーニング開発環境を2015年1月16日にオープンソースで公開した。これは、GPU環境において、従来のコードの23.5倍の速度を実現しており[41]、ディープラーニングの研究開発の促進が期待されている[42]

技術的課題[編集]

ディープラーニングにはデータの適切な前処理やたくさんのパラメータの調整を必要とするアルゴリズムが多いが、2015年の時点で、ディープラーニングシステムを調節できる技術者が少ない[43]。また、ニューラルネットワークの多層化により、時間とコストがかかるという問題点があったが[44]、近年のコンピュータの高性能化、特にGTX TITAN X等の高性能GPUの登場により、ほぼ克服されつつある[45][46]。GPUを利用することで性能あたりの価格や消費電力を100分の1に抑えることができるとされ[47]、これにより、GPUの市場の拡大が期待されている[31]

また、ディープラーニングはアルゴリズムよりもデータの質と量が重要(ビッグデータ)と言われており、それが大量に確保できない場合は良好な結果を出すことができない。そのため、莫大なデータを確保できない企業、国家(日本も含む)は機械学習の研究開発では大きく後れを取ることになった[48]

脚注・出典[編集]

[ヘルプ]
  1. ^ a b 小林雅一 2015, p. 114.
  2. ^ 小林雅一 2015, p. 117.
  3. ^ a b 【第四回】今、最も熱いディープラーニングを体験してみよう(2ページ)”. エンタープライズ (2015年1月14日). 2015年5月30日閲覧。
  4. ^ 小林雅一 2015, p. 110.
  5. ^ ディープラーニングの先にあるものとは? - 東大 松尾准教授が語った人工知能の未来(前編)”. biglobeニュース (2015年5月29日). 2015年5月31日閲覧。
  6. ^ a b 小林雅一 2015, p. 118.
  7. ^ a b 小林雅一 2015, p. 120.
  8. ^ 【第四回】今、最も熱いディープラーニングを体験してみよう(3ページ)”. エンタープライズ (2015年1月14日). 2015年5月30日閲覧。
  9. ^ 小林雅一 2015, p. 27.
  10. ^ a b c 小林雅一 2015, p. 28.
  11. ^ a b c グーグルが開発を進めている、写真を「自動的に説明する」技術”. wired (2014年11月20日). 2015年5月18日閲覧。
  12. ^ <湯川鶴章>急速に進化する人工知能(AI)が人間社会にもたらす影響と未来”. 東京IT新聞 (2015年3月17日). 2015年5月21日閲覧。
  13. ^ 松尾豊、塩野誠 『東大准教授に教わる 人工知能って、そんなことまでできるんですか?』 株式会社KADOKAWA・中経出版、2014年10月14日、第1刷、88頁。ISBN 978-4-04-600931-9
  14. ^ 深層学習 (機械学習プロフェッショナルシリーズ) ISBN 978-4061529021
  15. ^ Homma, Toshiteru; Les Atlas; Robert Marks II (1988). “An Artificial Neural Network for Spatio-Temporal Bipolar Patters: Application to Phoneme Classification”. Advances in Neural Information Processing Systems 1: 31–40. http://papers.nips.cc/paper/20-an-artificial-neural-network-for-spatio-temporal-bipolar-patterns-application-to-phoneme-classification.pdf. 
  16. ^ Yann Le Cun (June 1989). Generalization and Network Design Strategies. http://yann.lecun.com/exdb/publis/pdf/lecun-89.pdf. 
  17. ^ Y. LeCun; B. Boser; J. S. Denker; D. Henderson; R. E. Howard; W. Hubbard; L. D. Jackel (1989). “Backpropagation applied to handwritten zip code recognition”. Neural Computation 1 (4): 541-551. 
  18. ^ Alex Krizhevsky; Ilya Sutskever; Geoffrey E. Hinton (2012). “ImageNet Classification with Deep Convolutional Neural Networks”. Advances in Neural Information Processing Systems 25: 1097-1105. http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-. 
  19. ^ 岡谷貴之 深層学習 p11
  20. ^ 小林雅一 2013, p. 92.
  21. ^ ディープラーニングはビジネスにどう使えるか?”. WirelessWire News (2015年5月20日). 2015年5月21日閲覧。
  22. ^ a b 小林雅一 2013, p. 94.
  23. ^ 第714回:ディープラーニングとは”. ケータイWatch ケータイ用語の基礎知識 (2015年6月30日). 2015年7月15日閲覧。
  24. ^ http://itpro.nikkeibp.co.jp/atcl/column/14/090100053/091800010/
  25. ^ ネオコグニトロン”. 2015年6月30日閲覧。
  26. ^ 「ネオコグニトロンはまだ進化する」、画像向けディープラーニング「CNN」の父に聞く” (2015年5月22日). 2015年9月3日閲覧。
  27. ^ [CEDEC 2015]画像認識ではすでに人間を凌駕。ディープラーニングが日本を再生する”. 4gamer (2015年8月29日). 2015年9月1日閲覧。
  28. ^ 人とくるまのテクノロジー展2015 - 「ディープラーニング」を採用したZMPのRoboCar MiniVan”. マイナビニュース (2015年5月20日). 2015年5月26日閲覧。
  29. ^ Googleのディープラーニングはレトロゲームを自分で学習してプレイする”. ascii×デジタル (2015年3月21日). 2015年5月21日閲覧。
  30. ^ a b 小林雅一 2015, p. 29.
  31. ^ a b ディープラーニングというGPUの新市場”. PC Watch (2014年4月17日). 2015年5月21日閲覧。
  32. ^ 画像をアップすると自動で説明文を生成してくれる「Images to Text」”. GIGAZINE (2014年12月13日). 2015年5月21日閲覧。
  33. ^ グーグルが開発を進めている、写真を「自動的に説明する」技術”. WIRED (2014年11月20日). 2015年5月30日閲覧。
  34. ^ 人工知能は世界をもっと認識できる:グーグルのコンピューターヴィジョン”. WIRED (2014年9月9日). 2015年5月30日閲覧。
  35. ^ CEDEC 2015 画像認識ではすでに人間を凌駕。ディープラーニングが日本を再生する松尾豊東京大学大学院准教授の発表スライドから
  36. ^ ITTOUSAI (2016年1月28日). “Googleの囲碁AI『AlphaGo』がプロ棋士に勝利、史上初の快挙。自己対局を機械学習して上達”. Engadget. 2016年3月2日閲覧。
  37. ^ CADE METZ (2016年1月31日). “「囲碁の謎」を解いたグーグルの超知能は、人工知能の進化を10年早めた”. WIRED. 2016年3月2日閲覧。
  38. ^ 李 世乭、イ・セドル、이세돌
  39. ^ 人工知能アルファ碁が囲碁トップ棋士を3タテ! AIが人類の発想を完全に上回る2016年3月12日MdN Design Interactive
  40. ^ Facebook、人工知能研究ラボを立ち上げ”. ITMedia News (2013年12月10日). 2015年5月22日閲覧。
  41. ^ Facebook、ディープラーニング開発環境「Torch」向けモジュールをオープンソースで公開”. ITMedia News (2015年1月19日). 2015年5月22日閲覧。
  42. ^ Facebook、ディープラーニング技術をオープンソースに”. ZDNet Japan (2015年1月19日). 2015年5月22日閲覧。
  43. ^ 小林雅一 2015, p. 33.
  44. ^ 小林雅一 2015, p. 107.
  45. ^ ディープラーニングがビッグデータ分析の進化を引き起こす”. みずほ証券 (2013年11月19日). 2015年5月18日閲覧。
  46. ^ GTC 2015 - GoogleのDeep Learning”. マイナビニュース (2015年4月8日). 2015年5月21日閲覧。
  47. ^ [GTC 2014]賢い人工知能はGPUで作る。NVIDIAが取り組むGPGPUの新たな活用”. 4GAMER (2014年3月27日). 2015年5月21日閲覧。
  48. ^ 中国の人工知能研究が日本を一気に抜き去った理由 : 深読みチャンネル : 読売新聞(YOMIURI ONLINE) 2/4中国の人工知能研究が日本を一気に抜き去った理由 深読みチャンネル 読売新聞(YOMIURI ONLINE) 3/4中国の人工知能研究が日本を一気に抜き去った理由 深読みチャンネル 読売新聞(YOMIURI ONLINE) 4/4読売新聞2015年10月20日

関連項目[編集]

参考文献[編集]

  • 小林雅一 『AIの衝撃 人工知能は人類の敵か』 講談社〈講談社現代新書〉、2015年3月20日、第1刷。ISBN 978-4-06-288307-8
  • 小林雅一 『クラウドからAIへ アップル、グーグル、フェイスブックの次なる主戦場』 朝日新聞出版〈朝日新書〉、2013年7月30日、第1刷。ISBN 978-4-02-273515-7
  • 松尾豊 『人工知能は人間を超えるか ディープラーニングの先にあるもの』 KADOKAWA〈角川EPUB選書〉、2015年3月11日、第1刷。ISBN 978-4040800202