機械学習

決定木分析とは? [Day20]

はじめに

こちらの記事は非線形なアルゴリズムとして代表的な決定木について考えていきます。

「決定木ってどういうアルゴリズム?」

「決定木の利点と欠点は?」

といった疑問に答えていきたいと思います!

tota
tota
文系出身データアナリストのtotaです!初心者でも分かるように解説していきますね!

非線形

これまで見てきた線形回帰分析は文字通り「線形」という前提を置いていました。

例えばマンションの価格とそのマンションの駅徒歩所要時間(以下「駅徒歩」)についてのデータがあったとします。

そして、説明変数を駅徒歩、目的変数をマンション価格として、

駅徒歩からマンション価格を導き出す関係性を見出そうとしたとします。

このとき、線形回帰分析の場合は

「駅徒歩が1分長くなると(常に)マンション価格が●万円安くなる」

という「線形」な関係性のルールしか考慮することができません。

これは例えば駅徒歩が3分から4分に変化するときの「1分」も、

20分から21分に変化するときの「1分」も、

マンション価格への影響は全く同程度である

という仮定を置いているということになります。

しかし実際にはそのような「線形」な関係で完全に説明できる事象はほとんど存在しません。

だからこそ前回Day19(一般化加法モデル)の冒頭で見たように線形回帰の拡張を試みてきました。

一般化加法モデルとは? [Day19]はじめに こちらの記事では線形重回帰モデルを拡張した「一般化加法モデル(GAM)」について考えていきます。 「一般化加法モデルは...

それによって線形ではない「非線形」な関係性についても当てはまる関係性のルールを模索してきたわけです。

つまり駅徒歩が3分から4分に変化するときの「1分」と、20分から21分に変化するときの「1分」の影響に強弱をつけてあげられるような工夫をしてきたわけですね!

決定木分析

このように線形回帰分析では線形回帰を拡張することで非線形な事象に対してアプローチしてきたわけですが、

決定木分析はまた別の発想で非線形な事象にアプローチするアルゴリズムになります。

具体的には「セグメンテーション」という発想を用いて分析を行います。

例えば上述の駅徒歩(説明変数)とマンション価格(目的変数)について再度考えてみましょう。

決定木分析ではこのデータをセグメンテーションしようとします。

具体的にはデータを「似たもの同士のグループ」にセグメント化しようとします。

このセグメント化を行う際のポイントが2つあります。

1つが「何について」似たもの同士を集めるのかという点です。

これは「目的変数について」似たもの同士を集めます。

先の例で言うと「マンション価格について」似たもの同士を集めます。

もう1つのポイントは「どうやって」分割するのかという点です。

ここで説明変数を用います。

先の例で言うと例えば「駅徒歩5分未満か否か」といった説明変数による分割を行います。

前置きが長くなってしまいましたが、整理すると決定木分析は非線形な事象にセグメンテーションの発想でアプローチするもので、

データを目的変数(例:マンション価格)が似たもの同士となるように、説明変数(例:駅徒歩)を用いて分割するものということになります。

回帰木と分類木

決定木分析には大きく2種類あります。

先ほど見た例のように目的変数がマンション価格のように「量的(数値的)な情報」である場合、

すなわち「回帰」を行う分析の場合を「回帰木」と呼びます。

一方で目的変数が例えば学歴(高卒か大卒か…)など「質的(パターン)な情報」である場合、

すなわち「分類」を行う分析の場合を「分類木」と呼びます。※

※回帰と分類についてはDay5で取り上げていますので、まだ理解できていない方はそちらもぜひご覧ください!

回帰と分類の違いとは?[Day5]はじめに この記事では機械学習における「回帰」と「分類」について考えていきます。 「機械学習の回帰と分類ってそもそも何?」 ...

回帰木と分類木では「似たもの同士」の考え方が異なります。

まず回帰木の場合は「似たもの同士」を集めるのに分散(ばらつき)を用います。

具体的には分割した後の目的変数の「ばらつき」がなるべく小さくなるように分割を行います。

データのばらつきが小さければ「似たもの同士」であると判断します。

先の例で言うとマンション価格が同じような価格帯のデータが集まるように分割を行うイメージです。

一方で分類木では「ばらつき」という考え方が馴染みません。

そこで分類木では「似たもの同士」を集めるのにシンプルに同じカテゴリの人の割合が多くなるように分割を行います※。

例えば学歴(高卒か大卒か…)が似たもの同士を集めようとする場合には、高卒ばかりの集団、大卒ばかりの集団といったように同じ学歴の人が集まるように分割を行います。

※これを数値化するものとして誤分類率、ジニ係数(不純度)、エントロピーといった指標があります。

上記のような「似たもの同士」の考え方をベースに、

あらゆる分割の仕方の候補のなかから最も「似たもの同士」を集められる分割の仕方を探し出します。

そしてこれを適度な具合に繰り返します。

こうして集団を分割してセグメンテーションしていく1本の樹形図(決定木)を作り上げるていきます。

利点と欠点

決定木分析の最大の利点は解釈のしやすさです。

集団を分割して似たもの同士を集めるという発想は、

私たちの普段の思考回路とも馴染みがあり理解しやすいです。

決定木分析は「この場合はこういう結果で、別の場合はこういった結果であろう」という意思決定プロセスとも親和性があります。

加えて視覚的なわかりやすさもあります。

今回は掲載しませんでしたが、決定木分析は分析結果を樹形図上の図としてアウトプットすることができます。

これはロジックツリーのようなビジネスの場面でも馴染みのある外見をしています。

そのため決定木の樹形図をそのまま資料に挿入してもあまり違和感なく非常に便利です。

一方で大きな欠点もあります。

それは丸暗記型過ぎる状態(過学習)あるいは単純思考型過ぎる状態(未学習)に陥りやすい分析手法であるという点です。

「似たもの同士」が集まるように何度も何度も分割を繰り返すと過学習になってしまいます。

かといって分割を少ない回数でやめてしまうと「似たもの同士」が集まらずに終わってしまい未学習になってしまいます。

決定木分析はその辺の微妙な調整が苦手で、過学習か未学習に偏ってしまう傾向があります。

この欠点を補うためにバギングやランダムフォレストという手法が開発されてきたわけですが、これについては次回の記事でご紹介しますね!

まとめ

最後に今回の記事のポイントを整理します。

  • 決定木分析は非線形な事象にセグメンテーションの発想でアプローチするもの
  • データを目的変数が似たもの同士となるように説明変数を用いて分割する
  • 回帰を行う場合は回帰木、分類を行う場合は分類木となる
  • 回帰木の場合は「分散(ばらつき)」が小さくなるように分割を行う
  • 分類木の場合は同じカテゴリの人の割合が多くなるように分割を行う
  • 解釈がしやすいという利点がある一方で、丸暗記型過ぎる状態(過学習)や単純思考型過ぎる状態(未学習)が生じやすいという欠点がある

決定木分析は線形回帰分析とは全く異なるアプローチの非線形モデルです。

ただ予測精度という点では欠点が多いため、その欠点を改善するバギングやランダムフォレストについても一緒に理解しておいた方が良いです。

バギングやランダムフォレストについては次回の記事で一緒に考えていきたいと思いますのでそちらの記事もぜひご覧ください!

今回は以上になります。

最後まで読んでいただきありがとうございました!

統計学ベーシック講座【確率分布・推定・検定】

統計学の基礎を効率的に学べるベーシック講座です。統計学の入り口となる「確率分布・推定・検定」について豊富な図を用いて説明していきます。

2021年3月リリース後すでに20,000人以上の方に受講いただき大人気ベストセラーコースとなっています!ぜひこの機会に統計学や確率思考という一生モノのスキルを一緒に身につけましょう!

※上記リンクからですと時期によってはクーポンが自動適用されます。
※Udemyは世界最大級のオンライン学習プラットフォームです。以下記事にてUdemyをご紹介しておりますのでよろしければこちらもご覧ください。

Udemyとは?セールでお得な世界最大級のオンライン学習プラットフォームこの記事では世界最大級のオンライン学習プラットフォームであるUdemyをご紹介していきます!まだUdemyを使っていない方やこれから使お...