AI研究所 - AI(人工知能)に脅かされないために、AI(人工知能)を作る側の人間になる -

HOME  >  機械学習とは?機械学習の仕組みを徹底解説

公開日:2020.09.20 [最終更新日]2020.10.08

機械学習とは?機械学習の仕組みを徹底解説

プログラミング

この記事は、2020年9月29日に更新されました。

「機械学習って何だろう?基礎的な仕組みの部分を教えて欲しい!」
「機械学習と人工知能(AI)って同じ物?違いが知りたい!」

本記事は、このような疑問をお持ちの方に向けて執筆しています。

機械学習や人工知能というのは、恐らく殆どの人が聞いたことがあると思います。

これからは、ITの時代です。縄文時代では狩りの知識、戦国時代では戦の知識が必要なように、令和の時代ではITの知識という物は必ず必要になってきます。

もし、あなたが
「機械学習って何?分かりやすく説明して!」
と聞かれて答えられない人は、必ずこの記事を見る価値があると思います。

機械学習が得意な分野とは【結論、データの分析です】

機械学習が得意な分野とは【結論、データの分析です】

機械学習というのは、結構皆さんの周りにも使われています。

実際に機械学習が使われている、有名な物を紹介します。

  • 顔検出機能
    カメラで写真を撮るときに、顔の所に四角い線が出てくると思いますが、この機能に機械学習が使われています。
  • 迷惑メールの選分
    皆さんのメールも、迷惑メールそうでないメールで分けられていると思います。
    この迷惑メールと普通のメールを分けるのも、機械学習の得意な分野です。

コンピューターと、人間の得意な分野の違い

>コンピューターと、人間の得意な分野

皆さんにも想像して欲しいのですが、
芸術やアートに音楽

これらの分野を得意とする存在は、何だと思いますか?

勿論、人間ですよね。

今、コンピューターだと思った人は居ないはずです。

何故なら、芸術やアートに音楽などの分野は、人間の感情や性格などが合わさって、初めて人の心に刺さる物だからです。

正しく演奏したり、綺麗に描くだけでは、全く心に刺さりませんよね。

ですが、逆にコンピューターの方が得意な分野という物も存在します。

  • Excelを使った、データの作成
  • 年間の支出や報酬の計算

これらは全て、人間でも出来るけど時間のかかる、いわゆる単純作業ですよね。
コンピューターは、主にこの単純作業を得意とします。

機械学習は、データの分析が得意

データ分析

機械学習は、データの分析を得意とします。
データの分析というのは、元となるデータ(資料や記録)を元に、色々な答えを見いだす事です。

これだけでは分かりづらいと思うので、オセロの試合を例を挙げてみます。

あなたも、コンピューターが人間とオセロの対戦をするという企画をテレビやスマートフォンで観たことがあると思います。

実は、このオセロのコンピューターにも、機械学習が使われているんです。

これは、過去のデータを元により良い戦術を学んでいくという学習のしかたですね。

このやり方だと、コンピューターは自ら学んで強くなっていくので、人間よりも遙かに強くなる日も来るでしょう。

コンピューター同士が戦っても、何の面白みもないですけどね。

機械学習とは?人工知能との違いも解説

人工知能と機械学習の違い

機械学習と人工知能というのは、実は全く別物なんです。

機械学習と人工知能の違いとは

機械学習は、データの分析を得意とするもので、単純作業を得意とする存在。

というのは、もう皆さん分かったと思います。

しかし、機械学習と同じように、人工知能という言葉も良く聞きますよね。
みなさん、機械学習と人工知能の違いを説明出来るでしょうか。

人工知能は、英語でArtificial Intelligenceといい、略してAIと呼ばれています。

AIの定義は様々ですが、正確には
「人間と同じような考えを持ち、人間のように多様な問題を解決できる存在」
と言われています。

有名な例で言うと、ドラ○もんなどが人工知能に当たりますね。

今現在で最も有名な人工知能でも、人間と同じような考えは出来ていません。

なので、現在世の中に存在する人工知能は、本当の意味では人工知能ではないという事になります。

まとめると、
機械学習は、データを元に分析や単純作業をする存在。
人工知能は、人間と同じような思考をしていて、問題を解決する存在。
ということになります。

→機械学習と人工知能の、より詳しい説明はこちら

機械学習はどのような仕組みになっているのか

機械学習の仕組み

機械学習がどのように動いて、どのような仕組みになっているのか解説します。

機械学習で使われているプログラミング言語

結論からいうと、Python(パイソン)というプログラミング言語が最も機械学習に適しています。

Pythonというのは、シンプルで拡張性が広く、非常に機械学習に便利なプログラミング言語です。

ある調査によると、「機械学習で最も便利な言語はPython」という調査結果が出たそうです。

機械学習には、三種類ある

・教師あり学習
・教師なし学習
・強化学習

それぞれ解説していきます。

教師あり学習

教師あり学習とは、教師となるような正しいデータと事例を学習した後、未知の入力事例の正しい出力を予測させます。

例えるなら、数学の問題の類題と回答を学習した後、その学習を元に新しい問題を解くような感じです。

教師あり学習は、更にその中から二つに分類されます。

例えば、「明日の降水確率は何%?」「明日の株価は?」のように、出力する結果が無数に取り得る場合は、回帰と呼びます。

その逆で、「明日は今日よりも暑い?」「この写真に写っている動物は犬?」のように、いくつかの孤立した値しか出力できない場合は、分類と呼びます。

教師なし学習

教師無し学習は、教師あり学習と違い、事例を学習しないので出力もありません。

それではなにをするのかというと、データを分析してグループを分けたり、データの構造性を推論したりします。

プログラミングをしたことのある人しか分からない例えですが、バックエンドの開発に似てるかもしれません。

強化学習

強化学習とは、先程例として出したオセロのコンピューターが良い例です。

強化学習では、コンピューターが良い選択をしたときに点数を付け、その点数を報酬とします。

コンピューターは自分から報酬を求めていくため、自然と良い選択をしていきどんどん機械が強化されていきます。

※かなり短く解説していますが、本当はもっと奥が深いです。もし興味がある人は是非調べてみてください。

機械学習の種類の解説動画

上記動画を補足としてどうぞ。正直、文字よりも分かりやすいです。

おまけ:機械学習の発達による職業への影響

「機械学習とかAIが発達したら、エンジニアは無くなるのかな…?」
と不安になっている人がいますが、安心してください。

あくまで予想ですが、今後10年のエンジニアの市場価値は伸び続けると思います。

さらに、プログラミングに限らずIT系の知識を身につけておけば将来の選択肢が広がるので、勇気を持って飛び込んでみることをおすすめします。

と、いうわけで、今回は機械学習に関しての説明でした。

少し繰り返しになりますが、IT系の知見というのはかなり学ぶのにコスパがいいので、取りあえず恐れずやってみるのが良いかなと思います。

それでは。


参考になったら「いいね!」と「シェア」をお願いします!!

このエントリーをはてなブックマークに追加
AI(人工知能)セミナー開催中