本特集では、話題のディープラーニングを基礎から解説する。基礎とは言っても、コンピュータの知識や基本的なプログラミング、高校程度の数学の知識を前提としている。なるべく数式などは使わないようにするつもりだが、どうしても記号で物事を表現する必要があるため、皆無というわけにはいかない。

 いくつかの用語は、英語を併記する。これは格好を付けたのではなく、Webの検索を考えてのことである。日本語だと表記の揺れや、翻訳か原語のカタカナ書きかといった問題があり、検索がうまくいかない恐れがある。とはいえ最近の検索は結構優秀で、カタカナ表記から原語を含んだページを見つける場合もある。実は、これもディープラーニングの成果の一つだ。

 まずは関連用語を整理しておこう。ディープラーニング(Deep Learning)は、「機械学習」(Machine Learning)の手法の一つで、「深層学習」と訳されることもある。機械学習は、明示的にプログラミングをしなくても学習する能力をコンピュータに与える技術である。簡単に言うと、実世界などからの情報(データ)をコンピュータに与え、プログラムを組むことなしに、データを認識させたり、分類させたり、変換させたりすることだ。「プログラミング不要」と聞くとかなり便利そうだが、そのためにはシステムに「学習」をさせる必要がある。

 機械学習は、「AI」(人工知能:Artificial Intelligence)の一部だ。このため、ディープラーニングを使ったシステムは、AIや人工知能と呼ばれることがある。AIという言葉は広く使われているが、ここでいうAIは、コンピュータサイエンスなどの研究分野のことだ。ディープラーニングの話をするときには、AIという用語の使い方に注意が必要である。古くから様々な意味で使われてきたため、大きな誤解を生みやすいからだ。

図1●ディープラーニングは、機械学習の手法の1つであり、機械学習は一般にAI(人工知能)の1分野となる。このため、ディープラーニングを利用しているものは、「AIを搭載」していると主張できる
図1●ディープラーニングは、機械学習の手法の1つであり、機械学習は一般にAI(人工知能)の1分野となる。このため、ディープラーニングを利用しているものは、「AIを搭載」していると主張できる
[画像のクリックで拡大表示]