決定木学習は、統計学、データマイニング、機械学習で用いられる教師あり学習手法の一つです。この手法では、分類決定木または回帰決定木を予測モデルとして用い、一連の観測データから結論を導き出します。
目的変数が離散的な値をとることができるツリーモデルは分類ツリーと呼ばれます。これらのツリー構造では、葉はクラスラベルを表し、枝はそれらのクラスラベルにつながる特徴の結合を表します。目的変数が連続値(通常は実数)をとることができる決定木は回帰ツリーと呼ばれます。より一般的には、回帰ツリーの概念は、カテゴリシーケンスなどのペアワイズ非類似性を備えたあらゆる種類のオブジェクトに拡張できます。[ 1 ]
決定木は、統計学の知識がないユーザーでも解釈や視覚化が容易なアルゴリズムを生成するため、理解しやすくシンプルなことから、最も人気のある機械学習アルゴリズムの1つです。[ 2 ]
意思決定分析において、決定木は意思決定とその過程を視覚的かつ明確に表現するために使用できます。データマイニングにおいては、決定木はデータを記述しますが(結果として得られる分類木は意思決定のための入力として使用できます)。

決定木学習は、データマイニングでよく使われる手法です。[ 3 ]その目的は、複数の入力変数に基づいて目的変数の値を予測するアルゴリズムを作成することです。
決定木は、例を分類するためのシンプルな表現です。このセクションでは、すべての入力特徴が有限の離散ドメインを持ち、「分類」と呼ばれる単一のターゲット特徴があると仮定します。分類ドメインの各要素はクラスと呼ばれます。決定木または分類木は、各内部(葉以外の)ノードに入力特徴がラベル付けされた木です。入力特徴がラベル付けされたノードから伸びる弧には、ターゲット特徴の可能な値のいずれかがラベル付けされるか、または弧は別の入力特徴の下位決定ノードにつながります。木の各葉には、クラスまたはクラスに対する確率分布がラベル付けされ、データセットが木によって特定のクラスまたは特定の確率分布(決定木が適切に構築されている場合、特定のクラスのサブセットに偏っている)に分類されたことを示します。
ツリーは、ツリーのルートノードを構成するソースセットを、後継子を構成するサブセットに分割することによって構築されます。分割は、分類特徴に基づく一連の分割ルールに基づいています。[ 4 ]このプロセスは、再帰的分割 と呼ばれる再帰的な方法で、派生した各サブセットに対して繰り返されます。再帰は、ノードのサブセットがターゲット変数のすべての値が同じになったとき、または分割が予測に価値を追加しなくなったときに完了します。このトップダウン誘導による決定木(TDIDT) [ 5 ]のプロセスは、貪欲アルゴリズムの一例であり、データから決定木を学習するための最も一般的な戦略です。[ 6 ]
データマイニングにおいて、決定木は、与えられたデータセットの記述、分類、および一般化を支援するための数学的および計算的手法の組み合わせとして説明することもできます。
データは以下の形式のレコードで提供されます。
従属変数、は、私たちが理解、分類、または一般化しようとしている対象変数です。ベクトルは、以下の特徴から構成されています。など、その作業に使用されるもの。

データマイニングで使用される決定木は、主に2種類あります。
分類回帰木(CART)分析という用語は、上記の手順のいずれかを指す包括的な用語であり、 Breimanら(1984)によって最初に導入されました。[ 7 ]回帰に使用される木と分類に使用される木にはいくつかの類似点がありますが、分割する場所を決定する手順など、いくつかの相違点もあります。[ 7 ]
アンサンブル法と呼ばれる手法の中には、複数の決定木を構築するものがある。
決定木の特殊なケースとして決定リスト[ 14 ]があり、これは片側決定木であるため、すべての内部ノードは正確に1つの葉ノードと正確に1つの内部ノードを子として持ちます(最下層のノードは唯一の子が単一の葉ノードであるため例外です)。決定リストは表現力は劣りますが、疎性が追加されているため、一般的な決定木よりも理解しやすく、非貪欲学習法[ 15 ]や単調制約[ 16 ]を課すことができます。
代表的な決定木アルゴリズムには以下のようなものがある。
ID3とCARTはほぼ同時期(1970年から1980年の間)にそれぞれ独立して発明されたが、訓練用タプルから決定木を学習するという点で類似したアプローチを採用している。
また、ファジィ集合理論の概念を利用して、ファジィ決定木(FDT)と呼ばれる特殊なバージョンの決定木を定義することも提案されている。 [ 23 ] このタイプのファジィ分類では、一般的に入力ベクトルはは複数のクラスに関連付けられており、それぞれに異なる信頼度値があります。最近では、FDT のブーストされたアンサンブルも調査されており、他の非常に効率的なファジー分類器と同等の性能を示しています。[ 24 ]
決定木を構築するアルゴリズムは通常、各ステップで項目のセットを最もよく分割する変数を選択することで、トップダウンで動作します。[ 6 ]異なるアルゴリズムは、「最適」を測定するために異なる指標を使用します。これらは一般的に、サブセット内のターゲット変数の均質性を測定します。いくつかの例を以下に示します。これらの指標は各候補サブセットに適用され、結果の値が結合(平均化など)されて、分割の品質の尺度が提供されます。基となる指標によっては、決定木学習のためのさまざまなヒューリスティックアルゴリズムのパフォーマンスが大きく異なる場合があります。[ 25 ]
真陽性が偽陽性をどの程度上回っているかを特定するために、シンプルで効果的な指標を使用できます(混同行列を参照)。この指標「陽性正答率の推定値」は、以下のように定義されます。
この式では、真陽性(TP)の総数から偽陽性(FP)の総数を差し引きます。結果として得られる数値は、その特徴量がデータ内で正しく識別できる陽性例の数を推定するものであり、数値が大きいほど、その特徴量がより多くの陽性サンプルを正しく分類できることを意味します。以下は、特定の特徴量の完全な混同行列が与えられた場合に、この指標を使用する方法の例です。
特徴A 混同行列
ここで、TP値は8、FP値は2(表中の下線付きの数字)であることがわかります。これらの数字を式に代入すると、推定値を計算できます。つまり、この特徴量に推定値を使用すると、スコアは6になるということです。
ただし、この数値はあくまで推定値であることに注意が必要です。例えば、2つの特徴量の偽陽性(FP)値が両方とも2で、一方の特徴量の真陽性(TP)値が高い場合、式を用いた推定値が高くなるため、その特徴量が他方よりも上位にランク付けされます。特徴量によって陽性サンプル数が異なる場合、この指標を使用すると不正確な結果が生じる可能性があります。これに対処するため、混同行列の値の割合を考慮して実際の真陽性率(TPR)を算出する、感度と呼ばれるより強力な指標を用いることができます。これらの指標の違いは、以下の例に示されています。
この例では、特徴Aの推定値は6、TPRは約0.73でしたが、特徴Bの推定値は4、TPRは0.75でした。これは、一部の特徴の正の推定値が高くても、正の推定値が低い他の特徴と比較すると、その特徴のより正確なTPR値は低くなる可能性があることを示しています。状況やデータおよび決定木に関する知識によっては、問題を迅速かつ容易に解決するために正の推定値を使用することを選択する場合があります。一方、より経験豊富なユーザーは、データの割合と正と分類されるべきすべてのサンプルを考慮に入れるため、TPR値を使用して特徴をランク付けすることを好むでしょう。
ジニ不純度、ジニの多様性指数[ 26 ]、または生物多様性研究におけるジニ・シンプソン指数は、分類木のためのCART(分類回帰木)アルゴリズムで使用されます。ジニ不純度は、セット内のラベルの分布に従ってランダムかつ独立にラベル付けされた場合に、セットからランダムに選択された要素が誤ったラベル付けをされる確率です。ノード内のすべてのケースが単一のターゲットカテゴリに分類される場合に、最小値(ゼロ)に達します。
一連のアイテムについて階級と相対頻度、ラベルが付いたアイテムを選択する確率はそして、その項目を誤って分類する確率はジニ不純度は、各クラスラベルについて、これらの確率のペアごとの積を合計することによって計算されます。
ジニ不純度も情報理論的尺度であり、変形係数を持つツァリスエントロピーに対応する。これは物理学では、非平衡、非広範性、散逸性、量子系における情報不足と関連付けられています。極限ではそこから、通常のボルツマン・ギブスエントロピーまたはシャノンエントロピーが復元される。この意味で、ジニ不純度は、決定木における通常のエントロピー尺度の変形に過ぎない。
ID3、C4.5、C5.0などのツリー生成アルゴリズムで使用される情報利得は、情報理論におけるエントロピーと情報量の概念に基づいています。
エントロピーは以下のように定義される。
どここれらは合計が 1 になる分数であり、ツリーの分割によって生じる子ノードに存在する各クラスの割合を表します。[ 27 ]
可能な値の平均、
つまり、期待される情報利得は相互情報量であり、平均的には、 Tのエントロピーの減少は相互情報量である。
情報利得は、ツリー構築の各ステップでどの特徴に基づいて分割するかを決定するために使用されます。シンプルさが最善であるため、ツリーは小さく保ちたいと考えます。そのためには、各ステップで、最も一貫性のある子ノードが得られる分割を選択する必要があります。一貫性の一般的な尺度は情報と呼ばれ、ビット単位で測定されます。ツリーの各ノードについて、情報値は「例がそのノードに到達した場合に、新しいインスタンスをはいまたはいいえに分類するかどうかを指定するために必要な期待される情報量を表します」。[ 27 ]
4 つの属性(天気(晴れ、曇り、雨)、気温(暑い、穏やか、涼しい)、湿度(高い、普通)、風(あり、なし)) と、バイナリ (はいまたはいいえ) の目的変数play、および 14 個のデータ ポイントを持つデータセットを考えてみましょう。このデータに基づいて決定木を構築するには、4 つの特徴のいずれかで分割された 4 つの木それぞれの情報利得を比較する必要があります。情報利得が最も高い分割が最初の分割として採用され、すべての子ノードがそれぞれ一貫したデータを持つか、情報利得が 0 になるまで処理が続きます。
windyを使って分割による情報利得を求めるには、まず分割前のデータに含まれる情報を計算する必要があります。元のデータには、9 つの「はい」と 5 つの「いいえ」が含まれていました。
特徴量windyを使用した分割により、 windy の値が true のノードとwindy の値が false のノードの 2 つの子ノードが生成されます。このデータセットには、windy の値が true のデータポイントが 6 つあり、そのうち 3 つはplay ( playは目的変数) の値が yes で、3 つはplayの値が no です。windyの値が false の残りの 8 つのデータポイントには、no が 2 つと yes が 6 つ含まれています。windy = true ノードの情報は、上記のエントロピー方程式を使用して計算されます。このノードには yes と no が同数あるため、
windy = falseのノードには8 つのデータ ポイントがあり、6 つの yes と 2 つの no がありました。したがって、
分割に関する情報を得るには、各ノードにいくつの観測値が属したかに基づいて、これら2つの数値の加重平均を取ります。
これで、風の特徴に基づいて分割することで得られる情報利得を計算できます。
ツリーを構築するには、考えられる各最初の分割の情報利得を計算する必要があります。最適な最初の分割は、最も多くの情報利得を提供するものです。このプロセスは、ツリーが完成するまで、各不純ノードに対して繰り返されます。この例は、Witten et al. [ 27 ]に掲載されている例を改変したものです。
情報利得は、生物多様性研究においてはシャノン指数としても知られている。
CARTで導入された[ 7 ]分散削減は、目的変数が連続変数(回帰木)である場合によく用いられます。つまり、他の多くの指標を用いるには、まず離散化してから適用する必要があります。ノードNの分散削減は、このノードでの分割によって目的変数Yの分散がどれだけ減少するかを総括的に表したものです。
どこ、、 そしては、それぞれ分割前のサンプルインデックスの集合、分割検定が真となるサンプルインデックスの集合、および分割検定が偽となるサンプルインデックスの集合を表します。上記の各項は、平均値を直接参照しない形式で記述された分散推定値です。
置き換えることで上記の式における非類似度2つの物体の間そして分散低減基準は、ペアワイズ非類似度を計算できるあらゆる種類のオブジェクトに適用されます。[ 1 ]
1984年にCARTで使用された[ 28 ]「良さ」の尺度は、候補となる分割が純粋な子ノードを生成する能力と、同じサイズの子ノードを生成する能力のバランスを最適化する関数です。このプロセスは、ツリーが完成するまで、各不純ノードに対して繰り返されます。、 どこノードで分割された候補ですは以下のように定義される。
どこそしてノードの左と右の子です分割を使用する、 それぞれ;そしてレコードの割合はでそしてそれぞれ、そしてクラスの割合は記録そして、 それぞれ。
3つの属性(貯蓄(低、中、高)、資産(低、中、高)、収入(数値)、バイナリターゲット変数信用リスク(良好、不良))と8つのデータポイントを持つデータセットの例を考えてみましょう。[ 28 ]完全なデータは以下の表に示されています。決定木を開始するために、最大値を計算します。各特徴量を使用して、どの特徴量がルートノードを分割するかを調べます。このプロセスは、すべての子ノードが純粋であるか、すべての子ノードが純粋になるまで続きます。値が設定されたしきい値を下回っています。
見つける機能節約については、各値の数量に注意する必要があります。元のデータには、低値が3つ、中値が3つ、高値が2つ含まれていました。低値のうち、1つは信用リスクが良好で、中値と高値のうち、4つは信用リスクが良好でした。候補分割を仮定します。つまり、貯蓄額が少ないレコードは左側の子レコードに、その他のすべてのレコードは右側の子レコードに格納される。
ツリーを構築するには、ルートノードに対するすべての候補分割の「良さ」を計算する必要があります。最も高い値を持つ候補がルートノードを分割し、ツリーが完成するまで、不純なノードごとにこのプロセスが繰り返されます。
情報利得などの他の指標と比較すると、「良さ」の尺度はよりバランスの取れたツリーを作成しようとし、より一貫性のある意思決定時間につながります。しかし、純粋な子ノードを作成するために優先順位をいくらか犠牲にするため、他の指標では見られないような追加の分岐が発生する可能性があります。
データマイニングの手法の中でも、決定木には様々な利点がある。
多くのデータマイニングソフトウェアパッケージは、1つ以上の決定木アルゴリズム(例えばランダムフォレスト)の実装を提供しています。
オープンソースの例としては、以下のようなものがあります。
注目すべき商用ソフトウェア:
決定木では、ルートノードからリーフノードまでのすべてのパスは論理積( AND)によって進みます。決定グラフでは、最小メッセージ長(MML)を使用して、論理和(OR)を使用してさらに 2 つのパスを結合することができます。[ 43 ] 決定グラフはさらに拡張され、これまで明示されていなかった新しい属性を動的に学習し、グラフ内のさまざまな場所で使用できるようになりました。[ 44 ] より一般的なコーディング スキームにより、予測精度と対数損失確率スコアが向上します。 一般に、決定グラフは決定木よりもリーフの数が少ないモデルを推論します。
進化アルゴリズムは、局所最適解を回避し、事前のバイアスをほとんど持たずに決定木空間を探索するために使用されてきました。[ 45 ] [ 46 ]
MCMCを使用してツリーをサンプリングすることも可能です。[ 47 ]
ツリーはボトムアップ方式で探索できます。[ 48 ]または、分類までのテストの必要回数を減らすために、複数のツリーを並列に構築することもできます。[ 38 ]
{{cite book}}: CS1 maint: 複数名: 著者リスト (リンク) CS1 maint: 数値名: 著者リスト (リンク){{cite web}}: CS1 maint: 数値名: 著者リスト (リンク)