AIの技術は日々進化していること、毎日のニュースを見ながらも感じていらっしゃることでしょう。
様々な技術とともに、その適用される分野やビジネスなどAI分野の発展は目を見張るものがあります。
一方で、まだまだこの分野は発展途上であるとも言えるため、言葉の言い回しや定義が曖昧であったり解釈が色々あったりします。
その中で、よく出る質問がこちらでしょう。
「機械学習とディープラーニングの違いはなんですか?」
今日はこの内容について、触れていきたいと思います。
まず最初に、「機械学習」が進化したものが「ディープラーニング」です。つまり機械学習の特別バージョンが、ディープラーニングに当たるわけです。ではディープラーニングのどの点が機械学習より優れているのか、をお話する前に、「機械学習」から見てみたいと思います。
ちなみに、機械学習=マシンラーニング、ディープラーニング=深層学習という定義になりますが、なぜかよく使われるのは、機械学習、ディープラーニングですので、この中ではこちらの言葉を使いたいと思います。
機械学習
通常のプログラムでは、すべての動作を事前に設計しその通りに動かくことが求められます。しかし、機械学習では、AI自らが多くのデータの中から法則性やルールを見つけ出します。つまり学習をさせることで特定のタスクを実行できるようになります。
例えば次のような例をお話します。
大量のバラの写真があります。そしてバラの色は赤の2種類があります。これら写真一つ一つに事前に人が、「赤いバラ」と「白いバラ」というタグを付けておきます。そしてこの写真をタグとともにAIに読み込ませます。このときに、「色」を中心に判別するように指示をすると、初めて見た新しいバラの写真を見せても、「赤いバラ」なのか、「白いバラ」なのかを自動で判断をできるようになります。
つまり事前に、「色」という区別すべき特長を教えておく必要があったわけです。
ここに着目して、次に、「ディープラーニングを見てみます。」
ディープラーニング
機械学習の場合は、「赤いバラ」と「白いバラ」を判別するために事前に「色」について特長を教えていました。しかしディープラーニングの場合は、どの点に着目すべきなのかを教えません。AI自らが自分でデータを読み込み、どこに着目すれば判別をできるようになるのか、特徴量(着目する点)までも見つけ出すことができます。
つまり人間が教えなくても、たくさんのデータを見ながら勝手に学習をしていくわけです。
ある意味、こちらのほうが赤ちゃんが段々と言葉を覚えていく過程を考えると、人間に違い学習方法だと言えるかもしれませんね。
ここで、またよく出る疑問として、機械学習の学習法には、正解を与えないで学習させる「教師なし学習」や、正解はないが目的としてとして設定された報酬(スコア)を最大化する行動を学習させる「強化学習」という方法があるのでは?ということですが、ディープラーニングの場合は、ルールの発見、特徴量の設定、学習をすべて機械が自動的に行なっていきます。
すべての面で、「人間が介在をしない」、ですので なぜその結果がでたのかという理由を問うことはできません。つまり過程が「ブラックボックス」であるということになります。これが大きな特徴です。
違いを表す項目として、ニューラルネットワークの多重化というお話もできると良いですが、それはまた別な機会にお話しましょう。
ディープラーニングの場合は、どの点に着目して学習をさせればいいのかわからないような、曖昧なものを学習させるときに効力を発揮するでしょう。
そもそも人間の好みや勘や技といったものは、言葉では表現しにくいものです。これからますます、ディープラーニンについては進化をしていくことでしょう。
くれぐれもですが、ディープラーニングは、機械学習の一部です。これからはディープラーニングの時代だから機械学習はいらないよ、というわけではありませんのでご注意を。(ここまで読んでくださった方は理解をしてくださったでしょう。)
これからも素朴な疑問にお答えをしていきたいと思いますので、allAi.jpをどうぞよろしくお願いいたします。