アルパイン フォレスト 分類

アルパイン フォレスト分類モデルは、変動が制御されたデシジョン ツリーのコレクションを作成するアンサンブル分類方法です。アンサンブル モデリングは、それぞれがデータのサブセットに対して動作する多くのモデルのアプリケーションです。

情報一覧

パラメーター

説明
カテゴリー モデリング
データ ソース タイプ HD
出力を他のオペレーターに送信 はい
データ処理ツール MapReduce、Spark

通常、このオペレーターのデフォルト構成設定を変更する必要はありません。アルパイン フォレスト分類モデリングに固有の主なプロパティは、ノードごとのフィーチャ数ツリーの数置換付きサンプル、およびサンプルの割合です。

このモデルを使用する利点については、「アルパイン フォレストを使用したアンサンブル デシジョン ツリー モデリング」を参照してください。

アルゴリズム

アルパイン フォレスト分類オペレーターは、複数の決定ツリーを構築することによってアルゴリズムを実装します。各決定ツリーは、利用可能な属性のサブセット m をランダムに選択することから始まり、次にデータ観測値 (行) のサブセットを選択します。最終的な「アンサンブル」分類は、「アルパイン フォレスト」内の各ツリーにその予測 (本質的には「投票」) を問い合わせることによって行われます。アルパイン フォレスト分類モデルの全体的な予測は投票のモードであり、これは個々のツリーモデルからの最も一般的な予測です。

アルパイン フォレスト ツリーは、n 個のデータ観測値と m 個の分類子 (独立変数) で構成されるデータセット上で成長しています。フォレストの各ツリーについてはつぎのとおりです。

  • n の値は、ツリー数 構成プロパティによって指定されます。これは、作成するデシジョン ツリーの数であり、それぞれにランダムに選択されたデータ行のサブセットが含まれます。
  • 個々の決定ツリーごとに、利用可能な独立変数の合計から m 個がランダムに選択され、そこから最適な決定ツリーのノード分割が決定されます。これは、ランダム入力選択方法と呼ばれます。 m の値は、[ノードあたりの機能数] 構成プロパティによって指定されます。
  • アルパイン フォレスト 分類には、置換の有無のオプションがあります。このオプションは、作成された n 個のデシジョン ツリーのそれぞれに使用されるデータセット内でデータ行を複数回選択できる (つまり、置換できる) かどうかを制御します。これは、[置換を伴うサンプリング] 設定プロパティで指定します。
  • n デシジョン ツリー データセット サンプルに含まれていない残りのデータ行は、モデルの自動生成された交差検証誤差推定に使用されます。注: これらは OOB (Out of Bag) エラー推定値と呼ばれます。
  • 個々のデシジョン ツリーは、アルパイン フォレスト分類オペレーターに設定された指定されたツリー成長構成パラメーターに従って成長します。

要約すると、アルパイン フォレスト分類アルゴリズムは、変動が制御された CART デシジョン ツリーのコレクションを構築するために、アンサンブル分類または「バギング」アプローチとフィーチャのランダム入力選択を組み合わせます。個々のモデルは、最終的な分類または予測に投票することによって結合されます。

入力

モデリング用の従属変数と独立変数を含むデータセット。

構成

最小限の構成
  • 依存カラム: 予測される依存変数となるデータセット内のプロパティ。分類モデルの場合、従属変数はカテゴリ変数である必要があります。
  • カラム: モデルのトレーニングに使用することが予想される独立変数データ カラム、またはプロパティ。
  • サンプリング率: 各デシジョン ツリーに対してランダムに選択されたデータセットとして使用されるデータ行の割合。
パラメーター 説明
ノート このオペレーターのパラメーター設定に関するメモまたは役立つ情報。 [ノート] フィールドに内容を入力すると、オペレーターに黄色のアスタリスクが表示されます。
依存カラム モデル化または予測する量。

従属変数と見なされるデータカラムを選択します。Hadoop でのアルパイン フォレスト分類は分類モデルのみをサポートします。

従属カラムはカテゴリ変数である必要があります。

代わりに回帰を実行するには、アルパイン フォレスト 回帰 オペレーターを使用します。

カラム デシジョン ツリー トレーニングに含める独立変数カラムを選択します。

少なくとも 1 つのカラムを指定する必要があります。

[カラムの選択] をクリックしてダイアログを開きます。

詳細については、「カラムの選択ダイアログ」を参照してください。

ツリーの数 これは、アルパイン フォレストでトレーニングする個別のデシジョン ツリーの数を指定します。

ノート: 作成されるツリーの数を増やすと、通常、モデルの精度が向上します。ただし、十分な量のツリーが作成されている限り、アルパイン フォレスト分類モデルはこのプロパティの変更にあまり敏感ではありません。

ユーザー インターフェイスには、さらに多くのツリー結果が生成された場合でも、最大 20 件のツリー結果しか表示されません。

デフォルト値: 10

自動構成を使用する TIBCO Data Science - Team Studio が、[ツリーの数] プロパティを除くすべての必要なアルパイン フォレスト分類構成プロパティを決定するように指定します。

デフォルト値: true

特徴関数の数 [ノードあたりの機能数]の値を自動的に設定します。
  • 平方根 - ノードあたりの機能数は、カラム数の平方根 (整数に切り捨て)か、少なくとも 1 に設定されます。
  • 1/3 - ノードあたりの機能数は、(カラム数)/3 (整数に切り捨て)か、少なくとも 1 に設定されます。
  • すべて - ノードごとのフィーチャの数がカラムの数に設定されます。
  • ユーザー定義 - [ノードあたりの機能数]で、ノードあたりの機能数の値を設定します。

デフォルト値: 平方根

ノードあたりの機能数 m は、ツリー構築プロセス中に各ノードで考慮される予測子の数を指定します。アルパイン フォレスト分類アルゴリズムは、トレーニング セットからランダムに選択されたこれらの m 変数に基づいて、ツリーの最適な分割を計算します。

  • [ノードあたりの機能数] は、[カラム] プロパティに指定されたカラムの数よりも大幅に少なくする必要があります。

ノードあたりの機能数は、アルパイン フォレスト分類モデルが最も敏感に反応する構成プロパティです。分割あたりの数を増やすと、各デシジョン ツリーが大きくなり、各ノードでより多くの情報が提供されます。ただし、モデラーにとっては解釈が難しくなります。

デフォルト値: 1

置換を伴うサンプリング 入力データセットからトレーニング変数データ行サンプルを選択するときに置換を使用するかどうかを指定します。このプロパティは、利用可能なデータセット行から収集された n 個のトレーニング データ サンプルのそれぞれに対してデータ行を再利用できるかどうかを制御します。
  • この値を [true] に設定すると、より多くのランダムなデータセットの組み合わせが可能になるため、トレーニングのパフォーマンス時間が長くなります。
  • この値を [false] に設定すると、システムが各デシジョン ツリーに対してデータ行を複数回選択しないことを指定します。この設定は、大規模なデータセットからの n データ行の小さなサンプルに適しています。このような場合、置換なしのサンプリングは、置換ありのサンプリングとほぼ同じになります (同じデータ ポイントがランダムに 2 回選択される確率が低い場合)。

デフォルト値: true

サンプリング率 m は、ツリー構築プロセス中に各ノードで考慮される予測子の数を指定します。アルパイン フォレスト分類アルゴリズムは、トレーニング セットからランダムに選択されたこれらの m 変数に基づいて、ツリーの最適な分割を計算します。

  • [ノードあたりの機能数] は、カラム プロパティに指定されたカラムの数よりも大幅に少なくする必要があります。

ノードあたりのフィーチャの数は、アルパイン フォレスト分類モデルが最も敏感に反応する構成プロパティです。分割あたりの数を増やすと、各デシジョン ツリーが大きくなり、各ノードでより多くの情報が提供されます。ただし、モデラーにとっては解釈が難しくなります。

デフォルト値: 1

最大深さ ツリーの「深さ」、つまりルート ノードの下に分岐できるデシジョン ノードの最大数を指定します。ノードが空になる (つまり、現在のノードに分割する例がなくなる) か、ツリーの深さがこの制限を超えると、ツリーはそれ以上深く成長しなくなります。

  • [最大深さ] はツリーの成長段階で使用されます。
  • 可能な値の範囲は、-1 から 0 より大きい整数までです。値 -1 は「境界なし」を表し、ノードが空になるまで、ツリーは任意のサイズまたは無制限の数の決定ノードを取ることができます。

デフォルト値: -1

分割の最小サイズ さらなる分割を可能にするデシジョン ツリー内のノードの最小サイズ (またはメンバー数) を指定します。ノードのデータ メンバーが分割の最小サイズよりも少ない場合、そのノードはツリー内のリーフ ノードまたは終了ノードになる必要があります。個々のツリーがトレーニングされている場合、これはツリーのトレーニングを停止する基準になります。

  • 可能な値の範囲は 2 以上の任意の整数です。
  • 分割の最小サイズは、プルーニング前の段階で参照されます。

デフォルト値: 2

最小リーフ サイズ デシジョン ツリーの末端リーフ ノード内に存在できるデータ インスタンスの最小数を指定します。このプロパティは事前枝刈りを行って、ツリーの葉を少なくともこのトレーニング サンプル数に制限します。

  • 可能な値の範囲は、1 以上の任意の整数値です。
  • このプロパティは、リーフ ノードのサイズに基づいてツリーの深さを制限し、十分なデータがツリーの各部分に到達することを保証します。

この設定は、モデルの構築に時間がかかりすぎる場合、またはモデルがトレーニング データでは非常に良好な ROC を示しているが、ホールドアウト データや交差検証データでは (オーバー フィッティングのため) それほど良好なパフォーマンスが得られない場合に役立ちます。たとえば、最小リーフ サイズが 2 の場合、各末端リーフ ノードには少なくとも 2 つのトレーニング データ ポイントが含まれている必要があります。

デフォルト値: 1

最大 JVM ヒープ サイズ 個々のツリー トレーナーに割り当てられる仮想メモリの量を決定します。単一ツリーのトレーニング サンプルの数はこれによって制限されます。

  • 値 -1 を指定すると、メモリ不足の問題を回避するために [最大 JVM ヒープ サイズ] が自動的に設定されます。

デフォルト値: 1024

Spark を使用する [はい] (デフォルト) の場合、Spark を使用して計算時間を最適化します。
高度な Spark 設定の自動最適化
  • [はい] は、デフォルトの Spark 最適化設定の使用を指定します。
  • [いいえ] を選択すると、カスタマイズされた Spark 最適化を提供できます。 [設定の編集] をクリックして、Spark の最適化をカスタマイズします。詳細については、「詳細設定ダイアログ」を参照してください。

出力

ビジュアル出力

Hadoop に対して実行すると、アルパイン フォレスト 分類オペレーターは、モデル内で生成された個々のデシジョン ツリーを表示しません。これは、大規模なデータセットでは、ツリーが視覚的に表示できるほど大きくなると想定されるためです。代わりに、サマリー統計が表示されます。

  • 変数の重要度 - Hadoop データ ソースの結果には、変数の重要度 値が表示されます。これは、各変数がモデルに与える影響を測定する方法を提供します。

    各分割で、この分割によってノードの不純物がどの程度削減されるか (純度ゲイン) が計算されます。次に、各変数について、それが使用されているすべての分割 (ノードで使用されているサンプルの数で重み付け) およびすべてのツリーにわたって合計します。次に、最大の純度ゲインを持つ変数を見つけ、すべての変数にわたってこの値で除算します。

    アルパイン フォレスト 分類では、情報利得を不純物関数として使用します。

    ノート: 変数の重要度の値は、次の HDFS ディレクトリに CSV ファイルとしても保存されます。

    @default_tempdir/tsds_model/@user_name/@flow_name/AlpineForest_<uniqueFlowRunID>/varImp.csv

  • 個々のツリー統計 - 個々のツリー統計 (モデル内の最大 20 個のツリー) が表示され、各ツリーのトレーニング サンプル、ドロップされたトレーニング サンプル、非リーフ ノード、およびリーフの数が示されます。
  • 平均ツリー統計 - モデル内のすべての個々のツリーにわたる平均統計値を表示します。これにより、モデル内のデシジョン ツリー全体のサイズを把握できます。
後続のオペレーターへの出力
このオペレーターを後続のオペレーターに接続します。