多変量解析

教師あり学習と教師なし学習の違いとは?

メモ

こんにちは!

消費財メーカーでデータサイエンス&デジタルマーケティングっぽいことをやっているウマたん(@statistics1012)です!

統計学の修士号を持っており、大学時代はデータサイエンスを主に専攻していました。

データサイエンスの世界で登場するのが、「教師あり学習と教師なし学習」という概念。

ディープラーニングが台頭してきたことにより、さらに良く聞くようになってきました。

今回は、そんな教師あり学習と教師なし学習の違いについてまとめていきます。

教師あり学習と教師なし学習

ウマたん
ウマたん
教師あり学習ってなに?
ロボたん
ロボたん
言葉を分解してみようか。まず、学習とはデータを解析して何らかのモデルを作ることだよ。次に、教師とは答えとなるデータのことだよ。つまり、各サンプルに対して与えられている正解データを基準にしてモデルを作ることを教師あり学習というよ。
ウマたん
ウマたん
ちょっとイメージがしづらいなあ。
ロボたん
ロボたん
具体例として下のようなデータを考えてみよう!
ロボたん
ロボたん
このデータを二つのグループに分類することを考えてみよう。どう分類するかな?分類する境界線を引いてみると・・・
ウマたん
ウマたん
うーん、データの集まり方で分類するなら右で、赤と黒で分類するなら左のような感じかな?
ロボたん
ロボたん
いいね。左のように分類するときには、x1とx2の情報以外に赤と黒というもう一つの情報を使ったね。これが教師あり学習だよ。一方で、右のように分類するときにはx1とx2の集まり方のみで決めたね。これが教師なし学習だよ。
ウマたん
ウマたん
x1とx2のデータのみで決めるか、特徴を表す教師データを使って決めるかということか!
ロボたん
ロボたん
そういうことだね。教師あり学習の例は回帰分析などがあり、教師なし学習の例は主成分分析などがあるんだ。色々勉強していこう!

そう、言葉から何となくイメージが出来るように教師あり学習はあらかじめ決められたラベルが付いていて、教師なし学習はラベルが付いていないんです。

教師あり学習・・・ラベルあり
教師なし学習・・・ラベルなし

統計の言葉で言うと、目的変数が定義された解析を行う場合それは教師あり学習。

目的変数がない場合は教師なし学習です。

例えば、先ほどの例だと、X1とX2という変数に対して赤黒という質的変数が存在するのですが、とくに赤黒というラベルを気にせず目的変数を定義せずに解析を行う場合は教師なし学習になるんです。

教師あり学習の場合は、答えが分かっている教師データを基にモデルを作って、それを答えの分からない未知データに当てはめます。

教師あり学習の例

続いて、教師あり学習の例を見ていきましょう!

回帰分析

教師あり学習の定番は、回帰分析

回帰分析では、ある目的変数と説明変数の関係を見ていくことになります。

元々正解の分かっているデータから回帰モデルを作って、それを新たなデータに当てはめます。

アイスクリームの需要予測などが良い例。

アイスクリームの売れた個数(これがいわゆる教師ラベル)をその日の温度や湿度などから予測するモデルを作ります。

正解が分かっている教師データが与えられているので教師あり学習になります。

回帰分析についてはこちらの記事にまとめていますので良ければご覧ください!

回帰分析の理論とRでの実装!当サイト【統計ラボ】の本記事では、統計学・データサイエンスの基本である回帰分析について理論とRでの実装を見ていきます。回帰分析についてしっかりおさえておくことで機械学習など高度な手法についても理解が深まります。...

判別分析

回帰分析が、量的変数を目的変数として扱うのに対して判別分析は質的変数を目的変数として扱います。

先ほどの赤黒の例などは、赤というラベルと黒というラベルが与えられており、それらは質的変数なので判別分析の分野ですね。

判別分析系のように質的変数を目的変数として扱うタイプとしては先ほどの機械学習手法や決定木などの手法も当てはまります。

決定木

決定木は、回帰にも分類にも用いることが可能な手法。

決定木っていうのはその名の通り木構造でデータ分類していく手法で、そこそこの精度と結果の視認性から実務の場で良く用いられています!

決定木に関しては以下の記事でまとめています!

決定木とは?PythonとRで実装してみよう!当サイト【統計ラボ】の本記事では、機械学習手法の基本である決定木について見ていきたいと思います。アルゴリズムが分かりやすく実務でもよく使われる手法です。RとPythonでの簡単な実装も合わせておこなっていくので是非チェックしてくださいね!...

各種機械学習手法

各種強力な機械学習手法も基本的には教師あり学習に分類されます。

それぞれ強みや弱みがありますのでここでは細かくは紹介しませんが、回帰問題・分類問題どちらにも使うことができる手法群です。

以下の記事で詳しくまとめています!

機械学習入門に必要な知識と独学勉強方法をPythonとRの実装と一緒に見ていこう!当サイト【統計ラボ】の本記事では、入門者向けに機械学習についてカンタンにまとめていきます。最終的にはどのように機械学習を学んでいけばよいかも見ていきます。細かい手法の実装もPython/Rを用いておこなっていくので適宜参考にしてみてください。...

教師なし学習

続いて教師なし学習の例を見ていきましょう!

クラスター分析

クラスター分析は教師なし学習の中でもっとも有名ですね!

クラスター分析では、正解となるラベルが与えられていません。膨大なデータの中からあるパターンを見つけ出す手法になります。

例えば、顧客の行動データなどをクラスター分析にかけることによって、そのままでは見えてこない顧客セグメントが浮かび上がってくることがあります。

クラスター分析には階層的クラスター分析と非階層的クラスター分析があります。

非階層的クラスター分析ではあらかじめクラスター数を決めなくてはいけませんが膨大なデータでも比較的計算が早いです。

非階層的クラスター分析の定番はk-means法。非常に簡単に実装できるんですよー!

k-means法とは?Rで実装してみよう!当サイト【統計ラボ】の本記事では、非階層クラスター分析のk-means法について徹底的に解説していきます。メリットとデメリットがあるので使う際は注意しましょう!x-means法という改良手法も合わせて一緒に見ていきますよー!...

クラスター分析に関してはこちらの記事にまとめていますので良ければご覧ください!

クラスター分析とは?Rでの実装方法を一緒に見ていこう!当サイト【統計ラボ】の本記事では、クラスター分析についてまとめていきます。クラスター分析は教師なし学習の定番手法で、データの構造や傾向を把握するのに非常に役立ちます。クラスター分析を利用してデータを可視化してみましょう!...

主成分分析

主成分分析は次元削減のために用いられることが多い手法です。

イメージ的にはクラスター分析に近いのですが、クラスター分析がサンプルをカテゴライズしていたのに対して、主成分分析では変数をカテゴライズします。

例えば、各教科の点数があった時(数学・化学・物理・世界史・日本史・英語などなど)それらに主成分分析をかけることによって、変数をいくつかにまとめあげることができます。

この場合、理系・文系というように分けられることが想像できます。

主成分分析により次元圧縮をしてからクラスター分析をすることなども方法として考えられます。

主成分分析に関してはこちらにまとめています!

主成分分析とは?簡単な説明とPythonでの実装!当サイト【統計ラボ】の本記事では、実務の基礎分析にて使われることの多い主成分分析について詳しく見ていきます。最後にはカンタンなPythonでの実装も載せていますのでぜひ参考にしてみてください!...

教師なしでもありでもない強化学習

実は、教師あり学習でも教師なしでもない強化学習という手法があります。

強化学習は、昨今最も注目を集めている分野です。

教師あり学習と似ていますが、教師あり学習は全ての変数(特徴量)に対してフィードバックがありますが、強化学習は最終的な結果にのみフィードバックをします。

それを強化学習の世界では報酬と言いますが、報酬をたくさんもらえるように最適化すると最終的に精度の高いモデルが構築されるというイメージです。

まだまだビジネスの世界への適応例は少ない手法です。

強化学習については以下の記事にまとめています!

強化学習とは?ディープラーニングとの関係性当サイト【統計ラボ】の本記事では、強化学習についてディープラーニングとの関係という観点から見ていきます。教師なし学習・教師あり学習は分かりやすく汎用性が高いのですが、なかなかビジネスの場面で使いにくい強化学習。しかし、今非常に注目を集めているのです。...

教師あり学習と教師なし学習 まとめ

教師あり学習と教師なし学習の違いについて見てきました。

時と場合によって教師あり学習と教師なし学習を使い分けましょう!

クラスター分析をしてラベルを作ったあとにそれらを目的変数として教師あり学習を行うなどの組み合わせ技などもあります。

教師あり学習・教師なし学習についてもっと詳しく知りたい方は以下の書籍がオススメです!

ちなみに機械学習についての本を以下にまとめているので、もし興味がある方はそちらを読んで理解を深めてください!

厳選10冊!機械学習を勉強する上でおすすめな本!当サイト【統計ラボ】の本記事では、機械学習を勉強するのにオススメな書籍を紹介していきます。機械学習は大量のデータから予測を行うことを得意とする手法群。しっかり機械学習手法の理論から学んでいくことが大事!...
Pythonを初学者が最短で習得する勉強法

Pythonを使うと様々なことができます。しかしどんなことをやりたいかという明確な目的がないと勉強は捗りません。

Pythonを習得するためのロードマップをまとめましたのでぜひチェックしてみてくださいね!