Main Content

決定木

決定木、つまり分類木と回帰木は、データに対する応答を予測します。応答を予測するには、ツリーのルート (開始) ノードから葉ノードの方向に意思決定を行います。葉ノードには応答が含まれます。分類木は、'true' または 'false' などのノミナルな応答を出力します。回帰木は数値的な応答を出力します。

Statistics and Machine Learning Toolbox™ のツリーは二分木です。予測の各段階では、1 つの予測子 (変数) について値のチェックが行われます。たとえば、次の図は単純な分類木を示しています。

Simple classification tree

このツリーでは、2 つの予測子 x1x2 に基づいて分類を予測します。予測は、三角形 (Δ) で表されたトップ ノードから開始されます。最初に、x10.5 より小さいかどうかを判断します。小さい場合には左に分岐して、ツリーはデータを 0 というタイプに分類します。

ただし、x10.5 を超える場合には右側に分岐して、右下にある三角形で表されたノードに到達します。ここでは、x20.5 より小さいかどうかが問題になります。小さい場合には左に分岐して、ツリーはデータを 0 というタイプに分類します。それ以外の場合には右に分岐して、ツリーはデータを 1 というタイプに分類します。

決定木を使用して分類または回帰用にデータを用意する方法については、教師あり学習のステップを参照してください。

分類木の学習

この例では、分類木に学習をさせる方法を示します。

ionosphere データ セット全体を使用して分類木を作成します。

load ionosphere % Contains X and Y variables
Mdl = fitctree(X,Y)
Mdl = 
  ClassificationTree
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'b'  'g'}
           ScoreTransform: 'none'
          NumObservations: 351


回帰木の学習

この例では、回帰木に学習をさせる方法を示します。

carsmall データ セットの観測値をすべて使用して回帰木を作成します。ベクトル Horsepower および Weight が予測子変数、ベクトル MPG が応答であると考えます。

load carsmall % Contains Horsepower, Weight, MPG
X = [Horsepower Weight];

Mdl = fitrtree(X,MPG)
Mdl = 
  RegressionTree
             ResponseName: 'Y'
    CategoricalPredictors: []
        ResponseTransform: 'none'
          NumObservations: 94


参照

[1] Breiman, L., J. H. Friedman, R. A. Olshen, and C. J. Stone. Classification and Regression Trees. Boca Raton, FL: Chapman & Hall, 1984.

参考

| | |

関連するトピック