決定木のCARTアルゴリズム|プロ野球データで決定木(Decision Tree) with R 第2回
- TAG : R言語 | Tech & Science | プロ野球データ | 決定木
- POSTED : 2015.02.03 09:01
f t p h l
プロ野球データで決定木を行った結果を公開していきます
本連載では、3回にわたり、プロ野球のデータで実際に決定木を行った事例を紹介していきます。第2回目の今回は、理論編として、決定木とは何かと、決定木の代表的なアルゴリズムであるCARTアルゴリズムについて説明しています。
決定木とは
決定木というのは、もともとは意思決定の理論から生まれた概念であり、トーナメント表のような木構造で、考えられる選択肢や起こりうるシナリオを分岐として書き出していくことにより、意思決定を助けるものです。
これに対し、データ分析やデータマイニングの分野で用いられるものは、もともとは、回帰木、分類木とも呼ばれていましたが、近年のデータマイニングの普及により、これらについても、「決定木」と呼ぶようになっています。
CARTアルゴリズム
決定木による分析は、1984年にBreimanらによって開発された、CART(Classification and Regression Tree)法というアルゴリズムが多く使われています。CART法は、Regressionという単語が入っているように、目的変数、説明変数ともに、カテゴリ変数でも連続変数でも対応しています。
CART法の場合、目的変数といくつかの説明変数があるときに、まずは、目的変数を最もよく「分類」する、説明変数の分岐を生成します。これを、ルートノード(root node)といいます。前回のプロ野球データの場合、打撃側だけのデータではありますが、安打数が最も勝敗をよく説明する変数だったので、セ・リーグ、パ・リーグとも、「しきい値」は異なりますが、最初の分岐は、安打数となっています。この時、目的変数を「最もよく」分類する基準として、CART法ではいくつかの方法が提案されていますが、良く使われるのは、「ジニ多様性指標(Gini’s Divercity Index)」というものです。この計算方法は、目的変数がXとYの2値を取り、説明変数A,B,Cがそれぞれ1,2の2値を取る場合に、目的変数がXのグループと目的変数がYのグループのそれぞれについて、生起確率をP(A1)、P(A2)とした場合に、以下の式に基づいて計算します。
ジニ多様性指標(Gini’s Divercity Index)=1-( P(A1)2+ P(A2)2)
そして、A,B,Cのそれぞれについて、XとYのジニ多様性指標を算出し、A,B,Cのうち、平均値が最も低くなるような変数を、ルートノードとして採用します。
ここで、Aという変数がルートノードとして採用されたら、次は、A=1とA=2のそれぞれの場合について、B,Cのそれぞれについて、XとYのジニ多様性指標を算出し、B,Cのうち、平均値が最も低くなるような変数を、リーフノードとして採用します。Bが採用されたとして、下図ではこれまでのプロセスを模式化しています。
図 CARTアルゴリズムの模式図
決定木のメリットとしては、①結果をグラフィカルに提示できることから解釈が比較的容易であること、②目的変数と説明変数の非線形構造および交互作用を有意義に捉えることができること、③説明変数の再コード化等を検討する必要がないことなどが挙げられます(下川敏雄・杉本知之・後藤昌司(2013)『Rで学ぶデータサイエンス9 樹木構造接近法』共立出版)。その一方で、デメリットとしては、目的変数と説明変数によっては、パラメータをどうチューニングしても、望ましいレベルの木構造が得られない場合が多いこと、モデルとしてのロバスト性(頑健性)が弱く、適切でない説明変数が入ると、その変数にモデル全体が引っ張られてしまうことなどが挙げられます。
【連載記事】プロ野球データで決定木(Decision Tree) with R
第1回 問題意識と決定木の見方
第2回 決定木のCARTアルゴリズム(本記事)
第3回 Rでの決定木の実装
【当記事は、ギックス統計アドバイザーの中西規之が執筆しました。】
中西 規之(なかにし のりゆき)
ギックス統計アドバイザー。公益財団法人日本都市センター研究室
f t p h l