
「機械学習って何だろう?基礎的な仕組みの部分を教えて欲しい!」
「機械学習と人工知能(AI)って同じ物?違いが知りたい!」
本記事は、このような疑問をお持ちの方に向けて執筆しています。
機械学習や人工知能というのは、恐らく殆どの人が聞いたことがあると思います。
これからは、ITの時代です。縄文時代では狩りの知識、戦国時代では戦の知識が必要なように、令和の時代ではITの知識という物は必ず必要になってきます。
もし、あなたが
「機械学習って何?機械学習を分かりやすく説明して!」
と聞かれて答えられない人なら、必ずこの記事を見る価値があると思います。
機械学習が得意な分野とは【結論、データの分析です】
機械学習というのは、結構皆さんの周りにも使われています。
実際に機械学習が使われている、有名な物を紹介します。
- 機械学習 ➀顔検出機能
カメラで写真を撮るときに、顔の所に四角い線が出てくると思いますが、この機能に機械学習が使われています。 - 機械学習 ➁迷惑メールの選分
皆さんのメールも、迷惑メールとそうでないメールで分けられていると思います。
この迷惑メールと普通のメールを分けるのも、機械学習の得意な分野です。
コンピューターと、人間の得意な分野の違い
皆さんにも想像して欲しいのですが、
芸術やアートに音楽。
これらの分野を得意とする存在は、何だと思いますか?
勿論、人間ですよね。
今、コンピューターだと思った人は居ないはずです。
何故なら、芸術やアートに音楽などの分野は、人間の感情や性格などが合わさって、初めて人の心に刺さる物だからです。
正しく演奏したり、綺麗に描くだけでは、全く心に刺さりませんよね。
ですが、逆にコンピューターの方が得意な分野という物も存在します。
- 機械学習 ➂Excelを使った、データの作成
- 機械学習 ④年間の支出や報酬の計算
これらは全て、人間でも出来るけど時間のかかる、いわゆる単純作業ですよね。
コンピューターは、主にこの単純作業を得意とします。
機械学習は、データの分析が得意
機械学習は、データの分析を得意とします。
データの分析というのは、元となるデータ(資料や記録)を元に、色々な答えを見いだす事です。
これだけでは分かりづらいと思うので、オセロの試合を例を挙げてみます。
あなたも、コンピューターが人間とオセロの対戦をするという企画をテレビやスマートフォンで観たことがあると思います。
実は、このオセロのコンピューターにも、機械学習が使われているんです。
これは、過去のデータを元により良い戦術を学んでいくという学習のしかたですね。
このやり方だと、コンピューターは自ら学んで強くなっていくので、人間よりも遙かに強くなる日も来るでしょう。
コンピューター同士が戦っても、何の面白みもないですけどね。
機械学習とは?人工知能との違いも解説
機械学習と人工知能というのは、実は全く別物なんです。
機械学習と人工知能の違いとは
機械学習は、データの分析を得意とするもので、単純作業を得意とする存在。
というのは、もう皆さん分かったと思います。
しかし、機械学習と同じように、人工知能という言葉も良く聞きますよね。
みなさん、機械学習と人工知能の違いを説明出来るでしょうか。
人工知能は、英語でArtificial Intelligenceといい、略してAIと呼ばれています。
AIの定義は様々ですが、正確には
「人間と同じような考えを持ち、人間のように多様な問題を解決できる存在」
と言われています。
有名な例で言うと、ドラ○もんなどが人工知能に当たりますね。
今現在で最も有名な人工知能でも、人間と同じような考えは出来ていません。
なので、現在世の中に存在する人工知能は、本当の意味では人工知能ではないという事になります。
まとめると、
機械学習は、データを元に分析や単純作業をする存在。
人工知能は、人間と同じような思考をしていて、問題を解決する存在。
ということになります。
→機械学習と人工知能の、より詳しい説明はこちら
機械学習はどのような仕組みになっているのか
機械学習がどのように動いて、どのような仕組みになっているのか解説します。
機械学習で使われているプログラミング言語
結論からいうと、Python(パイソン)というプログラミング言語が最も機械学習に適しています。
Pythonというのは、シンプルで拡張性が広く、非常に機械学習に便利なプログラミング言語です。
ある調査によると、「機械学習で最も便利な言語はPython」という調査結果が出たそうです。
機械学習には、三種類ある
・教師あり学習
・教師なし学習
・強化学習
それぞれ解説していきます。
教師あり学習
機械学習の教師あり学習とは、教師となるような正しいデータと事例を学習した後、未知の入力事例の正しい出力を予測させます。
例えるなら、数学の問題の類題と回答を学習した後、その学習を元に新しい問題を解くような感じです。
教師あり学習は、更にその中から二つに分類されます。
例えば、「明日の降水確率は何%?」「明日の株価は?」のように、出力する結果が無数に取り得る場合は、回帰と呼びます。
その逆で、「明日は今日よりも暑い?」「この写真に写っている動物は犬?」のように、いくつかの孤立した値しか出力できない場合は、分類と呼びます。
教師なし学習
機械学習の教師無し学習は、教師あり学習と違い、事例を学習しないので出力もありません。
それではなにをするのかというと、データを分析してグループを分けたり、データの構造性を推論したりします。
プログラミングをしたことのある人しか分からない例えですが、バックエンドの開発に似てるかもしれません。
強化学習
機械学習の強化学習とは、先程例として出したオセロのコンピューターが良い例です。
強化学習では、コンピューターが良い選択をしたときに点数を付け、その点数を報酬とします。
コンピューターは自分から報酬を求めていくため、自然と良い選択をしていきどんどん機械が強化されていきます。
※かなり短く解説していますが、本当はもっと奥が深いです。もし興味がある人は是非調べてみてください。
機械学習の種類の解説動画
上記動画を補足としてどうぞ。正直、文字よりも分かりやすいです。
おまけ:機械学習の発達による職業への影響
「機械学習とかAIが発達したら、エンジニアは無くなるのかな…?」
と不安になっている人がいますが、安心してください。
あくまで予想ですが、今後10年のエンジニアの市場価値は伸び続けると思います。
さらに、プログラミングに限らずIT系の知識を身につけておけば将来の選択肢が広がるので、勇気を持って飛び込んでみることをおすすめします。
と、いうわけで、今回は機械学習に関しての説明でした。
少し繰り返しになりますが、IT系の知見というのはかなり学ぶのにコスパがいいので、取りあえず恐れずやってみるのが良いかなと思います。
それでは。