じばるどーね!

趣味、思想、妄想、学問、ごった煮ブログ

機械学習の理解と日常(教師ありと教師なしの違い編)

※これは個人が勉強したことをまとめた記事です。そのため記事の内容の正しさについて、疑問があれば、お願いします。

今回は機械学習と日常の関連を考えてみた

 友人が教師あり学習と教師なし学習の違いについて疑問を持ったので、自分はどうだろうかと思い、理解を整理してみました。これは機械学習のような学習だと捉えることができるよね、という日常の出来事について書いていきます。つまり、この記事は機械学習について勉強したことと直観的な理解をまとめた記事となっています。

機械学習とは何ぞや

 英語版Wikipedia曰く、機械学習(Machine Learning)というのは

Machine learning is a field of computer science that gives computer systems the ability to "learn" (i.e., progressively improve performance on a specific task) with data, without being explicitly programmed.

です。

  Googleに翻訳してもらうと、

機械学習は、コンピュータシステムに、明示的にプログラムされることなく、データを用いて「学習する」(すなわち、特定のタスクのパフォーマンスを徐々に向上させる)能力を与えるコンピュータ科学の分野である。

というわけです。つまり、データを入力したとき、あるシステム(入力すればそれに対して何か返してくれる、出力してくれる)が目的のものを出力するということです。日本語版Wikipediaには学習方法がたくさん書いてあるのですが、教師あり学習と教師なし学習についてまとめます。

教師あり学習とは?

 教師あり学習というのは、入力と出力をセットにしたデータ(訓練用)をもとに、あるシステムを「学習する」(システムを近似的に求める)ということです。

 僕は一人暮らしが数年ぐらいなので、電子レンジでできるごはんを食べていた期間がありました。そのごはんパックの米は大抵コシヒカリなので、米を食べればコシヒカリであるかを判別できます。

 この学習過程を機械学習のように考えると、大量のデータ(入力であるごはんパックの食事と、出力であるごはんの品種の関係)から、舌にコシヒカリの特徴となる味を刷り込みます(ちなみに、このとき他の米を食べて、コシヒカリでない味も学習します)。そのようにして、舌というシステムがコシヒカリの味を覚えました(学習した)。そして、学習できたかテストすると、下の図のようになります。ほかの例として、逆上がりを補助つきで体に刷り込んで(学習してシステムの中身を作る)、実際にやってみること(テスト)に似ていると思います。

f:id:tb9810w124816:20180316000325p:plain

図 米がコシヒカリであるかテスト中

教師なし学習とは?

 教師なし学習というのはあるシステムにデータを入力してみてデータの特徴を学習するということです。教師あり学習は出力してほしいものが決まっている一方、教師なし学習は出力してほしいものが決まっていません。勉強してみて、これは味覚に近いのではないかと思いました。たとえば、ブラックコーヒーをたくさん飲んでみて(入力)、コーヒーには酸味か苦み(出力)が多いよねというものです。この学習を通して、ブラックコーヒーには主にどういう味が主に占めているのかがわかるわけです。偏り(特徴)を見つけているような感じに見えます。今コーヒーにハマっているので、そのうちコーヒーについての記事を書くかもしれません。

 

まとめ

 学習する目的を考えると、教師あり学習はテストをすることで、教師なし学習はデータに対する印象を持つことだと考えられます。

 

参考文献

教師なし学習 - Wikipedia

教師あり学習 - Wikipedia

 

機械学習入門 ボルツマン機械学習から深層学習まで

機械学習入門 ボルツマン機械学習から深層学習まで