【機械学習の基本のキ】機械学習ってなに?人工知能やディープラーニングとの違いは?

どうも~むるむるです~

この記事では,最近よく聞く機械学習について,機械学習とはなんなのか?同じ文脈でよく使われる人工知能やディープラーニング(深層学習)との違いはなんなのかについて説明していきたいと思います.

この記事の内容についてはYoutubeでも説明しています.

人工知能/機械学習/ディープラーニングの関係

さて,人工知能,機械学習とディープラーイニングの関係ですが,下の図を見ていただくのが一番わかりやすいと思います.

人工知能はとても広い概念で,人工知能の一つの手法として,機械学習があり,さらにその機械学習の中の一つの手法として深層学習があります.

人工知能

人工知能の厳密な定義は専門家の間でも議論が別れるくらい難しいのですが,ざっくりいうと人工知能は「コンピュータを用いて人間が行う知的な行為や情報処理を行うにはどうすればよいのか」を研究する学問分野で,非常に広い概念となります.

例えば,コンピュータに画像の中に映っている動物を猫と認識させるのも,コンピュータに病気の症状を入力して病気を診断させるのも,コンピュータに囲碁を何度もさせて世界チャンピオンに勝つまでに強くさせるのもすべて人工知能の研究分野の範疇です.

最近になって人工知能という単語を聞く機会が増えましたが,その歴史は古く1940,50年代から研究は行われており,コンピュータが生まれたのとほぼ同時に人類はコンピュータを使って知能を実現できないか考えていたのであります.

機械学習

先述した通り,機械学習は人工知能の一分野です.

機械学習は,その名前が示すように,機械(コンピュータ)にデータを与え,そのパターンを学習させることで,機械が自動で課題を解決できるようにする研究分野です.

機械学習において人間がすることは,データを学習するためのアルゴリズムを機械に与えることです.

コンピュータを使って何か課題を解決しようとしたときに,機械学習とそうでないアプローチの一番の違いは,機械学習では人間が明示的に課題を解くためのアルゴリズムを与えるのではなく,その課題を解くための学習アルゴリズムを機械に与え,機械がそのアルゴリズムに則りデータを学習し課題を解きます.一方,後者は人間が課題を解決するためのコードを明示的に手で書いて機械はそれに従い課題を解くことになります.

例:機械学習を使った人工知能と機械学習ではない人工知能

例があるとわかりやすいと思うので,体温と症状からインフルエンザか風邪かを診断する人工知能について考えてみましょう.機械学習では,まずインフルエンザの患者と風邪の患者のデータを集めます.そしてそのデータから例えば「高熱でかつ関節痛もあって頭痛もひどいようなパターンならインフルエンザの可能性が高いな」などのように機械が自らデータから学習し,その結果を使ってインフルエンザか風邪かを診断してくれます.

一方で,人間が書いた「熱が38度以上かつ関節痛ありの場合はインフルエンザと診断する」というプログラムにただ従って診断をしている人工知能は機械学習を使っているとは言いません.

機械学習には,学習するデータの種類や目的によって「教師あり学習」,「教師なし学習」,「強化学習」の3種類の手法がよく使われます.

その3つについてはこちらの記事で解説しているので興味のある方はご覧ください.

深層学習

深層学習は機械学習の中の手法の一つで深い(多層の)ニューラルネットワークを使った手法のことをいいます.

ニューラルネットワークとは人間の脳の神経回路を模した数理モデルのことです.

最近はAIといえば機械学習,機械学習と言えば深層学習となってしまうくらい深層学習の研究の成果は凄まじいものですが,機械学習の手法にはニューラルネットワーク以外にもたくさんのモデルが存在します(決定木,SVM,ガウス過程などなど).

ここで深層学習について詳しく説明はしませんが,深層学習はあくまで機械学習の手法のうちの一つであると覚えておくと良いでしょう.

なぜ深層学習がすごいのか~その他の機械学習手法との違い~

深層学習とその他の機械学習の手法の大きな違いとしてよく説明されるものの一つとして,深層学習では特徴量の抽出を自動で行ってくれるというものがあります.

特徴量とは,文字通りデータの特徴を数値化したものであり,機械はこの特徴量をもとに学習を行います.

上の説明ではわかりにくいので猫と犬の画像の分類の例を考えてみましょう.みなさんは猫と犬を見分けることを簡単にできると思いますが,そのときに,何をもって猫と犬を識別していますか?

例えば猫なら耳が少し尖っていて,犬は耳が少し丸い.または,猫は目が鋭くて犬は丸い目をしているなどあると思います.このようにタスク(猫と犬の識別)を解くうえで必要なデータの特徴を数値化したものを 特徴量と言います.

従来の(深層学習でない)機械学習では,これらの特徴量を人間が手で作り,人間が作った特徴量をもとに機械に学習をさせていました.

しかし,上の猫と犬の識別の例からもわかる通り,人間が手で特徴量をデータから抜き出すのには限界があります.猫の種類なんて無数にありますし,猫の特徴は様々です.猫の中には丸い耳や丸い目をした猫もいますし,尖った耳や鋭い目をした犬だっています.ここで従来の機械学習手法は行き詰ってしまうわけです.

一方で深層学習の場合は,機械が自動でこの特徴量を抽出してくれるのです.猫と犬の分類の例でいえば,深層学習では,猫と犬の大量の画像を機械に与えると,機械が猫と犬を識別する際に役に立つ情報を自動で学習してくれ,その自分で学習した特徴量を使って猫と犬を識別するのです.

雑な言い方をすると深層学習では機械にデータを突っ込むと人間が特徴量を与えなくても自分で特徴量を探し出し,それを用いてタスクを解いてくれるのです.

本当に深層学習はすごいのか

最近の深層学習の研究成果はすばらしいものです.特に,例えば画像分類の精度は深層学習が使われる以前の精度に比べると段違いによくなっており,深層学習を使うことで人間を超えたレベルで画像の識別ができるようになりました.

他の分野でも自然言語処理,バイオインフォマティクス,ロボティクスなど,とても広い分野で深層学習は大活躍しています.

しかし,深層学習は万能の学習方法ではありません.上では深層学習を使えば機械が勝手に特徴量を抽出してくれ,うまくタスクを解いてくれると書きましたが,現実の問題では,そんなにうまくいくことは多くありません.

深層学習を用いる際には,たくさんのハイパーパラメータと呼ばれるパラメータを調整しなければならず,これは簡単なことではありません.タスクによって深層学習を用いずに従来の簡単な手法を用いた方が精度がよくなるということは珍しくありません.

メディアを見ていると深層学習はまるで魔法のようになんでも解いてくれる万能の人工知能のような説明をされることが多いと思いますが,現実はそんなに簡単なものではないことも知っておくとよいでしょう.

人工知能を学ぶ上で初心者におすすめの書籍

定番書籍

「人工知能は人間を超えるか」は日本でディープラーニングと言えばこの人,という東大の松尾先生によって書かれた本です.

前提知識がなくても読めるわかりやすい読み物です.機械学習などの勉強を始める前に読んでおくとディープラーニングの歴史や社会的な重要性などがざっと全体的にわかってよいと思います.少し古いですが,まだこの本から学べることは多いです.

機械学習以外の人工知能も含めて学習したい人向け

「人工知能のはなし」は機械学習だけでなく,それ以外の分野の人工知能について全体的に勉強したい方向けの入門書です.

最近は人工知能と言えば機械学習やディープラーニングばかりですが,この本では探索や論理,ファジィやエキスパートシステムについても説明しており,古典的なAIの手法を学ぶことができます.

タイトルにも「~のはなし」とある通り,人工知能について深く学ぶための専門書ではありませんが,人工知能の分野全体を俯瞰で見渡すことができて良い本だと思います.

最新情報をチェックしよう!