機械学習の教師あり学習と教師なし学習について、難しい専門用語を全く使わずに概要を分かりやすく説明してみます。

プログラムとは

まず、プログラムについてふわっと説明します。
このページをご覧になられているということは、ブラウザと呼ばれるプログラム(例えば、Google ChromeやMicrosoft Edge、Mozilla Firefox、Apple Safariなど)があなたのパソコンやスマートフォンに入っており、このブラウザを使用しているということになります。
ブラウザというプログラムは、インターネットと情報をやりとりするための専用のプログラムになります。
ここでは、ブラウザという例を挙げましたが、多くのプログラムは、このように何かしらの専用の目的を持っております。

機械学習とは

機械学習の機械とは、上記で説明したプログラムのことになります。
では、どのような専用の目的を持っているのかというと、「学習」するプログラムということになります。
学習するプログラムとは、なかなかイメージが難しいですが、受験生の勉強をイメージしてみてください。
いくつもの教材を暗記し、理解し、問題を解き、解答の正誤判定し、解答が間違っていれば暗記や理解に戻る、といった勉強をしたことがあると思います。
これが機械学習における学習と同じになります。
ただし、機械学習はヒトの理解と同じような理解をすることはとても困難だという明確な違いがあります。
そのため、機械学習の学習は、教材を暗記し、問題を解き、解答の正誤判定し、解答が間違っていれば暗記に戻る、といった流れになります。
つまり、機械学習の学習は、理解しているかどうかは関係なく、覚えた教材と問題のパターンから解答してきます。
重要なことは、機械学習の学習はヒトでは考えられないスピードで、かつ大量に行うことができる点です。

教師あり学習とは

教師あり学習を、機械を幼い子供、学習を片付けとして説明してみます。
親が子供に、ブロックの玩具は箱へ、本は本棚へ片付けしてもらうようにお願いします。
現実では、このようにお願いしてもなかなか片付けをしてもらえませんが、あくまでも仮想なので、とても良い子をイメージしてください。
子供がブロックの玩具と認識しているものは箱へ入れると思います。
もし、ブロックの玩具を本棚に片付けたら、親が「これは箱に入れてね」と伝えます。
すると、子供はこの玩具はブロックであることが間接的に伝わります。
片付けられた箱の中を指さして、子供に「なぜこれをこの箱に片付けたの?」と訊くとブロックだからと答えるようになると思います。
このようなことを繰り返すと、片付けるものがブロックの玩具であるか本であるかの判別を子供が獲得できます。
このように、親が教えたルールのパターンを子供が学習する流れは、機械学習における教師あり学習と同じになります。

教師なし学習

教師なし学習を教師あり学習と同様に機械を幼い子供、学習を片付けとして説明してみます。
教師あり学習とは異なり、親が子供に片付けをしてとだけお願いします。
すると、玩具と近い箱へ入れたり、ある箱がいっぱいになったら別の箱へ入れたり、ブロックの玩具ならこの箱で車の玩具なら別の箱へ入れる、などしたりすると思います。
片付けられた箱の中を指さして、子供に「なぜこれをこの箱に片付けたの?」と訊くとある箱がいっぱいになったら別の箱へ入れるというルールが形成されていた場合は「あの箱がいっぱいになったから」と答えるようになると思います。
親が口を出さなければ、片付けを繰り返すと子供独自の片付け方のルールが形成されていくと思います(いつもランダムに片付けるというルールになるかもしれません…)。
このように、子供自身がルールを独自に形成(学習)する流れは、機械学習における教師なし学習と同じになります。

結び

今回、教師あり学習と教師なし学習を子供と片付けと見立ててお伝えしてみました。
子供は十人十色で個性が様々です。
片付けが早い子もいれば、遅い子もいます。
本を片付けるのは丁寧なのに、ブロックの玩具は投げ捨てるように箱に入れる子もいます。
機械学習も子供と同様に、様々な手法があります。
そして、機械学習も子供と同様に、目的に応じて得手不得手があります。
楽しく子供(機械学習)と向き合っていけば素敵な日々になると思います。
教師あり学習と教師なし学習について、少しでも理解が深まったなら幸いです。

関連する記事

  • R実装と解説 母平均の検定(母分散未知) [latexpage] 母分散が未知の場合の母平均の検定とは、母集団が正規分布に従い、母分散が未知のときに母平均が標本平均と「異なる」または「大きい」、「小さい」かどうかを、検定統計量がt分布に従うことを利用して検定します。 統計的検定の流れ 検定の大まかな流れを確認しておきます。 帰無仮説H0と対立仮設H1をたてます […]
  • Windows上のMariaDBでサービスの開始・停止を行う方法Windows上のMariaDBでサービスの開始・停止を行う方法 Windows上のMariaDBでサービスの開始・停止を行う方法をお伝えいたします。 一般的なアプリケーションは、立ち上げて何か操作し閉じるというサイクルを持ちます。一方、MariaDBは、他のアプリケーションからアクセスされるまで待機しており、アクセスされる度にアプリケーションへ応答を返します。この間、MariaDBはずっと稼働中となります。そのため、MariaDBは […]
  • R MASSパッケージcorresp関数のエラー対処方法 RのMASSパッケージ内のcorresp関数を用いたとき、エラーに悩まされたので、皆様と共有しておく。 環境 Ubuntuのバージョン $ cat /etc/lsb-release […]
  • Bioconductor ExperimentDataパッケージ一覧Bioconductor ExperimentDataパッケージ一覧 BioconductorのExperimentDataパッケージの一覧をご紹介します。英語での説明文をgoogle翻訳を使用させていただき機械的に翻訳したものを掲載しました。パッケージを探す参考にしていただければ幸いです。 パッケージ確認日:2020/09/01 パッケージ数:392 1. ALL A data package データパッケージ 2. […]
  • QGIS プラグイン一覧QGIS プラグイン一覧 オープンソースソフトウェアの地図情報システムの一つであるQGIS(Quantum GIS)のプラグインの一覧をご紹介します。英語での説明文をgoogle翻訳を使用させていただき機械的に翻訳したものを掲載しました。プラグインを探す参考にしていただければ幸いです。 パッケージ確認日:2020/09/01 パッケージ数:1275 A-Maps Connector […]
教師あり学習と教師なし学習のふわっとした説明