【保存版】機械学習とディープラーニングの違いは?どう使い分ける?

機械学習
  • AI分野に興味がある
  • でも、機械学習とディープラーニングの違いがわからない
  • 機械学習とディープラーニングの使い分けの方法を知りたい

こんなふうに考えてる方はいませんか?

近年、AI技術が広く知られるようになりました。
とくに、自動車の自動運転などの発達に大きく貢献している技術として、大きな注目を集めています。

AIの中でも代表的な分野であるのが、機械学習とディープラーニングです。
機械学習とディープラーニングにはどのような違いがあるのでしょうか?

本記事では、機械学習とディープラーニングの違いと、使い分ける方法まで解説します。

本記事を読めば、機械学習とディープラーニングがわからない、という不安を解消できます。
ぜひ最後までご覧ください。

機械学習とディープラーニングの違い

機械学習とディープラーニングは、それぞれAIの学習方法の1つです。
この学習方法にはどのような違いがあるのでしょうか?

厳密いうと、機械学習とディープラーニングは、包含構造を持っています。
つまり、ディープラーニングは機械学習の手法の1つです。

一般的には、機械学習の中でも、3層以上のニューラルネットワークで構成されているものを、ディープラーニングと呼びます。

しかし、この定義だけ聞いても違いがわからない、という方は多いと思います。
そこで、機械学習とディープラーニングの違いについて、それぞれの特徴から詳しく解説していきます。

機械学習の特徴

まずは、機械学習の特徴を確認していきましょう。
そもそも機械学習とは何かというと、プログラム自身で法則性を見つけ出す技術のことを指します。

そのため、機械学習では、開発者自身で動作を全て決めておく必要がありません。
学習を繰り返すことで、特定のタスクを実行できるようになるのです。

この機械学習では、人間が特徴量を選び取る必要があります。
特徴量とは何かというと、プログラム自身がタスクを実行するために基準とするもののことをいいます。

タスクに合わせた特徴量を人間が選択できないと、プログラムはうまく学習を行えません。
結果的に、タスクを実行できなくなってしまいます。

わかりやすく、画像認識の例で考えてみましょう。
例えば、ぶどうを画像認識することを考えます。

ぶどうの画像認識では、「色」や「形」を学習させることで認識できそう、と考えられます。
この、「色」や「形」が特徴量です。

「色」と「形」を特徴量と指定して、プログラムに学習させます。
すると、マスカットの画像をプログラムに入力しても、「色」がぶどうと異なるため、ぶどうではない、と判断できるのです。

この機械学習の難しいところは、特徴量を人間が選択する部分です。
ぶどうとマスカットを比べる場合、「形」を特徴量としてしまうとうまく分類できません。

この場合は「色」が大きく異なっているので、「色」を特徴量にしたほうが良いのです。
このように、機械学習は人間が指定した特徴量を学ぶことで、特定のタスクを実行できる技術です。

ディープラーニングの特徴

次に、ディープラーニングの特徴を確認していきましょう。
そもそも、ディープラーニングは機械学習の分野の中のひとつです。

そのため、プログラム自身で法則性を見つけ出す技術のことを指すという部分は、機械学習と同じです。
何が違うかというと、特徴量の選び方です。

機械学習では特徴量を人間側で選んでいました。
ディープラーニングでは、特徴量さえもプログラム側で選び取るのです。

先程のぶどうとマスカットの例で、詳しくみていきましょう。
画像を分析することで、ぶどうとマスカットを分類したいとします。

機械学習では、「色」に着目するように人間が指定する必要がありました。
ところが、ディープラーニングを用いれば、プログラム自身で「色」が参考になると判断し、分類を行ってくれます。

このように、ディープラーニングは学習データから特徴量さえも選び取り、特定のタスクを実行できる技術です。

機械学習とディープラーニングの使い分け

機械学習とディープラーニングの違いを知った上で、どう使い分ければよいのか確認していきましょう。
実は、特徴量も自動で選び取ってくれるからといって、ディープラーニングに頼り切るのは良くないのです。

以下の3つのポイントを抑えた上で、機械学習とディープラーニングを使い分けましょう。

学習データの量

ディープラーニングでは人間でもわからないような分析を行えます。
しかし、これには多くの学習データが必要となります。

特徴量が自分でわかるようなら、少ないデータセットで済む機械学習を選んだほうが学習時間がかかりません。
学習データの量によって、使い分けましょう。

ハードウェアのスペック

ディープラーニングでは、大量のデータを用いて複雑な分析を行います。
そのため、それに耐えうるハードウェアのスペックが求められるのです。

スペックが足りない場合、学習だけでも数週間かかってしまいます。
ディープラーニングを用いる場合には、並列処理に優れたGPUやディープラーニング用に設計されたハードウェアを用いるのが良いです。

プログラムの透明性

ディープラーニングを用いると、特徴量さえもプログラム自身で選び取ります。
そのため、なぜ分析できているのかわからない、という状態に陥ります。

医療などの人命が関わっているような問題では、このようなブラックボックス化したシステムを使うのはリスクが高いため、おすすめできません。
このような場合には、機械学習を用いるほうが良いです。

まとめ

本記事では、機械学習とディープラーニングの違いについてまとめました。
まとめると、以下のようになります。

  • 機械学習は、人間が選んだ特徴量を学習させると特定のタスクを実行できる技術
  • ディープラーニングは、学習の段階で特徴量さえもプログラム自身で選んで、特定のタスクを実行できる技術
  • 全てのプログラムでディープラーニングに頼るべきではない

機械学習とディープラーニングの違いを意識して、うまく使い分けていきましょう。

コメント

タイトルとURLをコピーしました