違いがよく分からないな…。
この記事では、上記のような悩みを解決していきます。
この記事の想定読者
想定している読者は、次のとおりです。
- 機械学習を勉強している人
- 教師あり学習と教師なし学習の違いが分からない人
- 2つをどうやって使い分けたら良いのか知りたい人
この記事では「教師あり学習と教師なし学習の違い」について紹介していきます。
教師あり学習と教師なし学習って言葉だけは分かるけど、いまいちピンときませんよね。
でも本記事を読み終えれば、教師あり学習と教師なし学習の違いが分かるだけでなく、どのように使うわけていけば良いのかまで分かるようになります。
この記事を書いている僕は、大学時代にディープラーニングを学んで、現在データサイエンティストとして働いています。
参考になる情報を提供できているはずなので、ぜひ最後まで読んでいただけたらと思います(`・ω・´)!
Contents
教師あり学習と教師なし学習の違いとは?

教師あり学習と教師なし学習の違いは、ひとことで言うと「あらかじめ正解を教えるのか」だけです。
教師あり学習は、正解を当てる
教師あり学習の場合には、あらかじめ正解を教えてあげて、正解を予測するのが目的です。
具体的に言うと、以下のような画像に「ネコ」という正解をくっつけて機械学習したあとで、正しく「ネコ」だと予測することを目的にしています。

ここでポイントになるのは、「ネコ」という正解を、機械学習するときに教えてあげることです。
見方を変えると、上のような画像に「イヌ」と教えてあげれば、機械学習した結果は「イヌ」だと予測するようになります。
なので、教師あり学習を使う場合には、ただ正解がセットになったデータを渡すだけではなく、「正しい正解」を教えてあげることも大事になってくるんですね。
教師あり学習の例
- 花の種類を当てる
- 株価を予測する
- 天気を予測する
あげるとキリがないですが、たとえばこんな感じです。
正解を用意できるものであれば、基本的には何でも教師あり学習に挑戦することができます。
※挑戦できるだけであって、正しく予測できるわけではありません。株価の予測とかは、かなり難しいです。
教師なし学習は、グループ分けをする
教師あり学習に対して、教師なし学習の場合には、正解を当てるのではなくグループ分けをおこないます。
具体的にいうと、ネコやイヌの画像を1,000枚用意するんだけど、正解は用意しないで機械学習していきます。

そうすると正解はないけど、鼻や耳の特徴から2つのグループに「分割だけ」します。
教師あり学習のときは、正解も用意してあげたので、学習で使っていない画像を渡したときに「これはネコです!」と予測できました。
でも、教師なし学習では「正解となる教師」がないので、ただグループ分けだけして終了なんですね。
こういった解説を聞くと、教師なし学習が微妙な方法だと思われるかもですが、正解が準備できないときに役立ちます。
たとえば、セブンイレブンで人気の商品はどれかを予測するとき、正解って用意するのが難しいですよね。
セブンイレブンで働いている人なら準備できるかもしれませんが、僕たちからは正解って準備できないです。
こういったときに、価格やTwitterの口コミなどのデータだけ用意してあげて、グループ分けしてあげると、「この商品が人気なのでは?」と知見を得られるわけです。
このように教師なし学習は、人間だと判断が難しい知見を得るために活用されますね。
なので、教師なし学習は注目を浴びにくいですが、大事な機械学習手法になってきます。
さらに : 教師あり学習と教師なし学習を機械学習手法とセットで解説

教師あり学習と教師なし学習については以上の通りですが、具体的な機械学習手法とセットでおさえておきましょう。
機械学習手法は、4分割できます
この記事で紹介している教師あり学習と教師なし学習ですが、これらは予測対象によってさらに2分割できます。
具体的には、以下の表のようになります。
教師あり学習 | 教師なし学習 | |
予測値が数値 | 回帰 | 次元削除 |
予測値がカテゴリー | 分類 | クラスタリング |
予測値が「数値」と呼んでいるのは、株価の予測だったり気温を予測するといった、数字を当てることです。
それに対して、予測値が「カテゴリー」というのは、犬か猫かだったり、手書き数字の0〜9を当てる場合を指します。
それぞれの用途は、たとえば以下の感じです。
- 回帰 : アイスクリームの売り上げ予測
- 分類 : アイスクリームの種類を当てる
- 次元削除 : 数1Aと数2Bの点数を、数学の点数に変換する
- クラスタリング : 数学の点数で偏差値ごとにグループ分けする
次元削除など、少し難しい言葉を使ってしまいましたが、具体例で考えてみると、そこまで難しくないかと思います。
機械学習手法は、2つの軸で考えよう
おそらく、この記事を読んでいる方は「結局どうやって機械学習手法を選んだら良いんだろう…。」といった疑問を持つかと思います。
その場合には、以下の2つの軸で機械学習手法を選んでいきましょう。
- STEP① : 正解は用意できますか?
- STEP② : 予測したいのは数値ですか?種別ですか?
たとえば、会社の売り上げを予測したいのであれば、以下のフローになります。
- STEP① : 過去の売り上げデータがあるので、正解は準備できる → 教師あり学習
- STEP② : 予測したいのは売り上げ → 予測値が数値
つまり、以下の方でいうと、回帰に当てはまりますよね。
教師あり学習 | 教師なし学習 | |
予測値が数値 | 回帰 | 次元削除 |
予測値がカテゴリー | 分類 | クラスタリング |
このようにして、機械学習手法を選択していきます。
なお、具体的な機械学習手法については、別記事にて紹介していきます。多すぎて1つの記事では紹介できません(´⊙ω⊙`)
まとめ : 目的に合わせて教師あり学習と教師なし学習を使い分けよう!
というわけで、教師あり学習と教師なし学習について紹介してきました。
復習すると、教師あり学習と教師なし学習の違いは、「あらかじめ正解を教えるのか」だけでしたね。
つまり、正解を準備できるなら教師あり学習だし、正解を準備できないなら教師なし学習です。
どの手法を使えば良いか迷った場合
さらに、自分がどんな機械学習を使うべきか迷った場合には、以下の表を使えばOKです。
教師あり学習 | 教師なし学習 | |
予測値が数値 | 回帰 | 次元削除 |
予測値がカテゴリー | 分類 | クラスタリング |
これを使えば、迷うことなく機械学習手法を選択できます。
「分類って、どんな機械学習手法があるんだろう…。」とか「クラスタリングってなんだろう…。」と気になった方は、以下の本がオススメですよ。
Pythonの基礎から機械学習の実装まで、幅広く学んでいけます。
機械学習もライブラリに頼るのではなく、すべて手書きで書いていくので、コーディング力も上がるのが良いですね!
他にも、機械学習を深く学びたい場合には、以下の記事で紹介している本を使ってみると良いです。

現役のデータサイエンティスト目線で選んだ本たちです。
機械学習は楽しいので、どんどん勉強していきましょう。
それでは、この辺で。
おすすめの記事