近年よく耳にする”ディープラーニング”とは一体どのようなものなのでしょうか。何となく凄いということは分かっていても、その中身を具体的に説明するのは難しいかと思います。この記事では、ディープラーニングの概念や歴史、特長などについて分かりやすく説明しています。
ディープラーニングとは
ディープラーニング(深層学習)とは、人間の神経細胞(ニューロン)の仕組みを模した”ニューラルネットワーク”をベースとした機械学習の手法のことを指します。
*機械学習について詳しく知りたい方は、↓の参考記事をご参照ください。
ニューラルネットワークの構造
上の画像は、ニューラルネットワークの構造を端的に表した図です。ここでは、「入力された信号が中間層(隠れ層)を経由して出力される」という流れになっています。
ディープラーニングの構造
こちらは、ディープラーニングの構造を表しています。
ニューラルネットワークの図と比較すると、中間層が多層構造になってることが分かります。これこそがディープラーニングの肝であり、中間層を多層構造にすることによって、入力された信号から様々な特徴を細かく抽出することが可能となります。すなわち、入力された信号を特徴ごとに細かく分類することで、正確な結果を出力することができるのです。
なお、通常のニューラルネットワークでは中間層が2~3程度であるのに対し、ディープラーニングの中間層は150にまで上ることもあります。
重みづけ
ディープラーニングを説明する上で重要となるのが、“重みづけ”という概念です。以下では、重みづけについて、具体例を交えながら説明します。
上の画像では、「猫の画像」を入力信号とし、そこから読み取れる様々な特徴を中間層で解析しています。
猫ついては、例えば「目が正面についている」「全身が毛に覆われている」「長い髭が生えている」といった特徴を挙げることができます。重みづけとは、こうした要素に重要度を設定することを指します。
例えば、「全身が毛に覆われている」という特徴は犬や猫と人間を区別する上で重要な要素となるため、重みづけをします。さらに、「長い髭が生えている」という要素は犬と猫を区別する上で重要な要素となるため、重みづけを付けます。
このように各要素に対して重要度に応じた重みづけを行うことによって、AIは対象が何かを認識することができるようになります。
上の画像では、こうした重みづけを行った結果として、『猫である可能性が92%、犬である可能性が5%、人間である可能性が3%』という結果が出力されています。
ディープラーニングのアルゴリズム
ディープラーニングには様々な特徴を備えたアルゴリズムが存在します。以下では、三つの代表的なアルゴリズムを紹介しています。
1. DNN (Deep Neural Network)
DNN(ディープニュートラルネットワーク)は、先述したように人の脳の神経回路の一部を数式的なモデルで表現した”ニューラルネットワーク”をベースとしたアルゴリズムで、中間層を複数の層に分けている点が特徴的です。
2. CNN (Convolutional Neural Network)
CNN(畳み込みニューラルネットワーク)は、ニューラルネットワークの中間層において、畳み込み層と呼ばれる特徴検出の分野とプーリング層と呼ばれる圧縮分野を文字通り畳み込む(交互に構成する)ことで大量のラベル付けされたデータを効率的に学習するモデルです。
3. RNN (Recurrent Neural Network)
RNN(回帰型ニューラルネットワーク)は、ニューラルネットワークの出力を別のネットワークの入力として利用できるような自己回帰型の構造を持つモデルであり、その特徴として、時系列データを扱えるという点が挙げられます。
ディープラーニングの歴史
ディープラーニングの歴史は意外と長く、それが理論として初めて提唱されたのは1980年代でした。ただ、実際にその理論が実装され、注目を浴び始めたのは最近になってからです。特に2012年頃には、ディープラーニングという概念を世界に知らしめた以下の三つのイベントがありました。
1. GPUの登場
2012年頃にGPU(演算用チップ)と呼ばれる、ディープラーニングにとって最も効率的な並列構造になったコアデバイスが登場しました。GPUをクラウドと組みあわせることによって、従来では数週間要したネットワークの学習時間を数時間にまで短縮することができました。
2. Googleによる猫の認識
2012年、Googleが従来の機械学習のアルゴリズムに代わってディープラーニングを用いることで、数千枚の画像の中から猫を認識することに成功しました。この研究で特に注目されたのが、人間がAIに「猫」の概念を教えることはなかったということです。すなわち、ディープラーニングを搭載したAIが自ら特徴量を設定し、“猫”を認識することに成功したのです。
3. 画像認識コンテストILSVRCでの衝撃な結果
2012年、ILSVRCという画像認識コンテストにおいて、ジェフリー・ヒントン氏率いるトロント大学のチームがディープラーニングを用いて物体認識エラー率17%という驚異的な数字をたたき出しました。これは前年度までのエラー率26%を遥かに上回る数字であり、同年度の他のチームにも大差を付けての優勝となりました。従来は1年ごとに約1%エラー率を下げられるかどうかという次元で競っていたのに対し、ディープラーニングの登場によって1年間で約10%もの大幅な減少に成功しました。
これらの三つのイベントに加え、従来よりも大量のラベル付けされたデータが揃うようになったことによって、ディープラーニングが2012年付近を境に注目されることとなりました。
ディープラーニングの特長と課題
ここまで、ディープラーニングの基本的な構造や歴史について説明してきました。次に、ディープラーニングが従来の機械学習と比べてどのような点で優れているのかを見ていきましょう。
前述のとおり、ディープラーニングのモデルは、大量のラベル付けされたデータとニューラルネットワークの構造を利用して学習を行います。従来の機械学習では、人間が直接特徴量を設定する必要がありましたが、ディープラーニングでは、人間が直接特徴量を設定せずとも、学習する中で自ら特徴量を設定することが可能となりました。こうした技術が確立されたことで、人間では処理しきれない量のタスクを高速かつ正確に行えるようになりました。こと画像認識の分野では人間の認識能力を上回る成果を出しています。そして、ディープラーニングの最も優れている特長は、学習の度に精度が上がっていくという点です。
ただし、ディープラーニングが抱える課題として、大量のラベル付けされたデータが必要であること、そして高性能な処理能力を備えたコンピューターが必要なことの2点が挙げられます。したがって、何に対してもディープラーニングを使えばよいというわけではないのです。
ディープラーニングの活用事例
最後に、ディープラーニングの活用事例を三つご紹介します。
画像認識:画像認識分野はディープラーニング技術が最も活用されている分野です。具体例としては、工場における不良品検知や防犯に使用される顔認識システム、自動運転技術などが挙げられます。
自然言語処理:ディープラーニングを活用した自然言語処理分野の具体的な活用事例としては、機械翻訳やチャットボット、SNSマーケティングなどが該当します。
音声認識:音声認識は自然言語処理技術に基づいており、最も身近な例としては、AppleのSiri機能やAmazonのAlexaなどが挙げられます。
まとめ
ディープラーニングは、大量のラベル付けされたデータや高性能の処理能力を持つコンピューターを必要とするため、あらゆる場合に活用できるわけではありません。しかし、 ディープラーニングには、自ら特徴量を設定できるという、従来の機械学習にはない特長があります。ディープラーニングが革新的な技術であることは間違いありません。