Random Tree
概要
この演算子は決定木を学習します。この演算子は、分割ごとにランダムな属性サブセットのみを使用します。
詳細
Random Tree演算子は、Decision Tree演算子とまったく同じように機能しますが、1つの例外があります。分割ごとに、属性のランダムなサブセットのみが使用可能です。デシジョンツリーの基本を理解するには、デシジョンツリーオペレータのドキュメントを調べることをお勧めします。
この演算子は、名義データと数値データの両方から決定木を学習します。決定木は、簡単に理解できる強力な分類方法です。 Random Tree演算子は、QuinlanのC4.5またはCARTと同様に機能しますが、適用される前に属性のランダムなサブセットを選択します。サブセットのサイズは、 サブセット比率パラメーターによって指定されます。
ツリーとしてのデータの表現には、意味があり解釈しやすいという他のアプローチと比較して利点があります。目標は、ExampleSetのいくつかの入力属性に基づいてラベルの値を予測する分類モデルを作成することです。 treeの各内部ノードは、入力属性の1つに対応しています。内部ノードのエッジの数は、対応する入力属性の可能な値の数に等しくなります。各リーフノードは、ルートからリーフへのパスで表される入力属性の値が与えられると、ラベルの値を表します。この説明は、ディシジョンツリーオペレーターのプロセス例を調べることで簡単に理解できます。
プルーニングは、決定木の識別力に追加しないリーフノードを削除する手法です。これは、未特定のデータセットに対する予測力を強化するために、過剰に特定されたツリーまたは過剰に適合したツリーをより一般的な形式に変換するために行われます。事前プルーニングは、ツリー作成プロセスと並行して実行されるプルーニングの一種です。一方、ポストプルーニングは、ツリー作成プロセスが完了した後に行われます。
分化
Random Tree演算子は、Decision Tree演算子とまったく同じように機能しますが、1つの例外があります。分割ごとに、属性のランダムなサブセットのみが使用可能です。
入力
- トレーニングセット (IOObject)この入力ポートには、ExampleSetが必要です。これは、添付のプロセス例のRetrieveオペレーターの出力です。他の演算子の出力も入力として使用できます。
出力
- モデル(デシジョンツリー)ランダムツリーは、この出力ポートから配信されます。この分類モデルは、ラベル属性の予測のために、見えないデータセットに適用できるようになりました。
- サンプルセット(IOObject)入力として指定されたExampleSetは、このポートを介して出力に変更せずに渡されます。これは通常、別の演算子で同じExampleSetを再利用するため、または結果ワークスペースでExampleSetを表示するために使用されます。
パラメーター
- criterion このパラメーターは、属性が分割のために選択される基準を選択します。次の値のいずれかを指定できます。
- information_gain:すべての属性のエントロピーが計算されます。最小エントロピーを持つ属性が分割用に選択されます。この方法には、多数の値を持つ属性を選択する傾向があります。
- gain_ratio:情報ゲインの変形です。各属性の情報ゲインを調整して、属性値の幅と均一性を可能にします。
- gini_index:これは、ExampleSetの不純度の尺度です。選択した属性で分割すると、結果のサブセットの平均giniインデックスが減少します。
- 精度:このような属性は、ツリー全体の精度を最大化する分割用に選択されます。
範囲:選択
- minimal_size_for_splitツリー内のノードのサイズは、サブセット内のサンプルの数です。ルートノードのサイズは、ExampleSetのサンプルの総数に等しくなります。 サイズがsplitパラメーターの最小サイズ以上のノードのみが分割されます。 範囲:整数
- minimal_leaf_sizeツリーのリーフノードのサイズは、サブセット内のサンプルの数です。ツリーは、すべてのリーフノードサブセットが少なくともリーフサイズの最小インスタンス数を持つように生成されます。 範囲:整数
- minimal_gainノードのゲインは、分割する前に計算されます。ゲインが最小ゲインよりも大きい場合、ノードは分割されます。最小ゲインの値が大きいほど、分割が少なくなり、ツリーが小さくなります。値が高すぎると、分割が完全に妨げられ、単一ノードのツリーが生成されます。 範囲:実数
- maximal_depthツリーの深さは、大きさやExampleSetの性質に応じて変化します。このパラメーターは、ツリーのサイズを制限するために使用されます。ツリーの深さが最大の深さと等しい場合、ツリー生成プロセスは継続されません。値が「-1」に設定されている場合、 最大深度パラメーターはツリーの深度に制限を課さず、最大深度のツリーが生成されます。値が「1」に設定されている場合、単一ノードを持つツリーが生成されます。 範囲:整数
- Confidenceこのパラメータは、枝刈りの悲観的誤差計算に使用される信頼レベルを指定します。 範囲:実数
- number_of_prepruning_alternatives prepruningはツリー生成プロセスと並行して実行されるため、特定のノードでの分割がツリー全体の識別力を増やさない場合、特定のノードでの分割を防ぐことができます。このような場合、代替ノードが分割のために試行されます。このパラメーターは、特定のノードでの事前実行によって分割が防止される場合に、分割を試みる代替ノードの数を調整します。 範囲:整数
- no_prepruningデフォルトでは、ツリーはprepruningで生成されます。このパラメーターをtrueに設定すると、prepruningが無効になり、prepruningなしでツリーが配信されます。 範囲:ブール
- no_pruningデフォルトでは、ツリーは枝刈りで生成されます。このパラメーターをtrueに設定すると、枝刈りが無効になり、枝刈りされていないツリーが配信されます。 範囲:ブール
- guess_subset_ratioこのパラメータは、サブセット比を推測するかどうかを指定します。 trueに設定すると、 log(m)+ 1の機能がサブセットとして使用されます。それ以外の場合は、 サブセット比率パラメーターを使用して比率を指定する必要があります。 範囲:ブール
- subset_ratioこのパラメータは、ランダムに選ばれた属性のサブセットの比率を指定します。 範囲:実数
- use_local_random_seedこのパラメーターは、ランダム化にローカルランダムシードを使用する必要があるかどうかを示します。 ローカルランダムシードの同じ値を使用すると、同じランダム化が生成されます。 範囲:ブール
- local_random_seedこのパラメータは、 ローカルランダムシードを指定します。このパラメーターは、 ローカルシードの使用パラメーターがtrueに設定されている場合にのみ使用できます。 範囲:整数
チュートリアルプロセス
ランダムツリー演算子の概要
「アイリス」データセットは、Retrieve演算子を使用してロードされます。 ExampleSetを見ることができるように、ブレークポイントがここに挿入されます。ランダムツリー演算子は、すべてのパラメーターのデフォルト値を使用してこのExampleSetに適用されます。結果のツリーはプロセスの結果ポートに接続され、結果ワークスペースで確認できます。