ブーストモデルツール
ブーストモデルツールは、勾配ブースティング法に基づいて、一般化されたブースト回帰モデルを作成します。 このモデルは、適切な損失関数を最小限に抑えるために、単純な決定木モデルをモデルアンサンブルに連続的に追加することによって作成されます。 これらのモデルは次のような統計的学習の方法を使用します:
- フィールドのどのサブセットがターゲットフィールドを最もよく予測するかを自己決定します。
- フィールド間の非線形の関係や相互作用を捕捉することができます。
- 広範な回帰および分類の問題に自動的に対処できます。
分類、カウントデータ、および連続ターゲット回帰問題でブーストモデルツールを使用します。
このツールはRツールを使用します。 [オプション] > [予測ツールをダウンロード ] に進み、 Alteryx ダウンロード & ライセンスポータル R と R ツールが使用されるパッケージをインストールするには 。 参照: 予測ツールのダウンロードとご利用にアクセスしてください。
ブーストモデルツールでは、次を含む入力入力データストリームが必要です:
- 関心のあるターゲットフィールド
- 2つ以上のプレディクタフィールド
モデルの推定で使用されるパッケージは、入力データストリームによって異なります。
- Alteryx データストリームは、オープンソースの R gbm関数を使用します。
- XDF メタデータストリームは、 XDF入力ツール または XDF出力ツールから来て、RevoScaleR rxBTrees 関数を使用します。
- SQL server インデータベースのデータストリームのデータは、rxBTrees 関数を使用します。
- Microsoft Machine Learning Serverのインストールでは、SQL ServerデータベースまたはTeradataデータベースのデータに対してRevoScaleR rxBTrees関数を使用します。 これには、ローカルマシンとサーバーをMicrosoft Machine Learning Serverで構成する必要があります。これにより、データベースサーバーでの処理が可能になり、パフォーマンスが大幅に向上します。
アルゴリズムのパフォーマンス
オープンソースのR関数と比較して、RevoScaleRベースの関数はより大きなデータセットを解析できます。 しかし、RevoScaleR ベースの関数は XDF ファイルを作成する必要があり、オーバーヘッドコストが増加し、データをより多く通過させるアルゴリズムを使用し、実行時間を増加させ、一部のモデル診断出力を作成することはできないという面があります。
- 必須パラメータ: ブーストモデルを生成するために必要な基本フィールド。
- モデル名: 他のツールから参照できるモデルの名前。 モデル名または接頭辞は文字で始まり、文字、数字、および特殊文字ピリオド( ".")とアンダースコア( "_")を含む必要があります。 Rは大文字小文字を区別します。
- ターゲット変数の選択: 予測されるデータフィールドであり、応答または従属変数とも呼ばれます。
- 予測フィールド: データフィールドは、ターゲット変数の値に影響を与えるために使用され、これは、機能または独立変数とも呼ばれます。 2つのプレディクタフィールドが最低限必要ですが、選択されるプレディクタフィールドの数に上限はありません。 ターゲット変数自体をターゲット値の計算に使用すべきではないため、ターゲットフィールドをプレディクタフィールドに含めるべきではありません。
- モデル推定でサンプリングウェイトを使用する: モデル推定を作成するときに、各レコードの重要度を重み付けするフィールドを選択できるオプション。
フィールドが予測値とサンプルウェイトの両方として使用されている場合、出力ウェイト変数フィールドには Right_ が付加されます。
- [サンプリングウェイトフィールド]の選択: レコードの重み付けに使用するフィールド。
- 辺縁効果プロットを含めますか?: 予測変数とターゲットの関係を示すプロットをレポートに含めるオプションで、他の予測フィールドの効果を平均化します。
- プロットに含めるフィールドの最小レベルの重要性: 限界効果プロットに含まれる変数の最小予測力を示すパーセンテージ値です。 パーセンテージが高いほど、生成されるマージナル効果プロットの数が減ります。
- モデルのカスタマイズ: ターゲットとデシジョンツリーの管理方法に基づいて出力モデルをカスタマイズするオプションの設定。
- ターゲットの種類と損失関数の分布を指定: ターゲットフィールドのデータのカテゴリと、モデルの作成を最適化するために機能する関連関数。
- 連続ターゲット: 特定の一意の値が、ストアごとの年間売上など、インスタンス全体の小さな割合で構成される数値ターゲット。
連続ターゲットの場合は、次のいずれかの分布に基づいて損失関数を最小化します。 - ガウシアン(二乗誤差損失)
- ラプラス(絶対値損失)
- t分布損失
- Count (整数) ターゲット: ほとんどの一意の値が、1年間に行われる医師のオフィスへの訪問数など、インスタンス全体の大部分を占める数値ターゲット。
カウントターゲットの場合は、ポアソン分布に基づいて損失関数を最小化します。
- バイナリ (2つの結果) カテゴリ: はい-いいえの分類など、2つの可能な結果を持つカテゴリターゲット。
バイナリカテゴリターゲットの場合は、次のいずれかの分布に基づいて損失関数を最小化します。
- ベルヌーイ(ロジスティック回帰)
- AdaBoost(指数関数的損失)
- 多項式 (3つ以上の結果) カテゴリ: a、B、C 分類などの離散的な結果の数が限られているカテゴリターゲットフィールド。
多項式カテゴリターゲットの場合、ベルヌーイ損失関数の多項式の一般化である多項ロジスティック損失関数に基づいて損失関数を最小化します。
- モデル内のツリーの最大数: アルゴリズムが最終的なモデルに含めることができるデシジョンツリーの数。 デフォルト値は4000です。 ツリーの数が多いほど実行時間が長くなります。
- モデル内の最終的なツリー数を決定する方法: サンプルデータを過度にフィッティングさせることなく予測動作を適切にキャプチャするデシジョンツリーの数を決定するための方法。
- クロス検証: 利用可能な情報を効率的に使用する検証方法。 データが限られている場合に推奨されます。
- クロス検証フォールドの数:検証またはトレーニングのためにデータが分割されるサブサンプルの数。 デフォルト値は5です。 一般的な値は5と10です。 5フォールドの場合、データは5つのユニークなサブサンプルに分割され、5つの異なるモデルが作成され、それぞれが4つのサブサンプルからのデータを使用します。 最終的なサブサンプルは、モデル作成から差し引かれ、予測精度をテストするために使用されます。
- クロス検証で使用するマシンコアの数: 解析で使用されるマシンコアの数。 デフォルト値は1です。 使用する数は、常に使用可能なコアの数より少なくする必要があります。 計算速度を向上させるには、使用するコアの数を増やします。
- テスト (検証) サンプル: トレーニングデータからサンプルを取り出す検証方法。 多くのレコードがある場合に推奨されます。
- 見積もり (トレーニング) サンプルのパーセンテージ: トレーニングサンプルで使用されているレコードの割合で、残りはテストサンプルで使用されます。 デフォルト値は50です。 一般的な値は50%と75%です。 レコードの50%がトレーニングサンプルで使用される場合、残りの50%が予測精度のテストに使用されます。
- アウトオブバッグ: モデル作成で除外されたレコードを使用する検証方法。
- アウトオブバッグサンプルで使用されるオブザベーションの割合: オーバーフィットを回避するためにモードに含める適切な数のツリーを導くために使用されるサンプリングパーセンテージ。 デフォルト値は50%です。 一般的な値は25~50%です。
- 収縮率: モデルに追加された各ツリーにウェイトを配置するために使用する 0 ~ 1 の値。 デフォルト値は.0020です。 値を小さくするほど、モデルに含まれるツリーが増え、実行時間が長くなります。
小さな収縮値は、ツリーの最適数を保証するために、決定木の最大数の設定値を必要とする場合があります。
- 相互作用の深さ: 予測フィールド間の相互作用のレベル。 例えば、3方向の相互作用は、1つのプレディクタが2つの他のプレディクタに依存してターゲットフィールドへの影響を判断することを示します。 デフォルト値は線形であり、予測フィールド間の相互作用がないことを前提としています。 深さを増やすと実行時間が長くなります。
- 各ツリーノード内のオブジェクトの最小必要数: 別のデシジョンツリーの追加を許可する前に、デシジョンツリーが十分な大きさであることを検証するパラメータ。 デフォルトは10です。 値を大きくすると決定木が小さくなります。
- ランダムシード値: ランダムサンプリングの順序を決定する値。 これにより、選択方法はランダムでデータに依存しないが、データ内の同じレコードが選択されます。 ランダム描画のシーケンスを変更するには、値を変更します。
- グラフィックスオプション: 出力グラフの設定。 カスタマイズしない限り、デフォルト値が使用されます。
- プロットサイズ: 出力グラフのサイズ。 単位を選択し、幅と高さの値を設定します。
-
グラフ解像度 : グラフの解像度を1インチあたりのドット数: 1x (96 dpi)、2x (192 dpi)、または 3x (288 dpi) で選択します。 解像度を低くするとファイルサイズが小さくなり、モニタでの表示に最適です。 解像度を高くするとファイルサイズが大きくなり、印刷品質は向上します。
- 基本フォントサイズ (ポイント): ポイント単位のフォントサイズ。
サロゲート主キーやナチュラル主キーなどの固有識別子を含む列は、統計分析で使用しないでください。 これらの列は予測値がなく、ランタイム系例外を引き起こす可能性があります。
これらのオプションは、モデル設定を変更するために使用できます。
ブーストモデルツールは、Microsoft SQL Server 2016 のデータベース処理をサポートしています。 参照: インデータベースの概要 インデータベース内のサポートとツールの詳細については。
ブーストモデルツールのIn-DBバージョンにアクセスするには:
- キャンバスにインデータベースツールを配置します。 ブーストモデルツールは自動的にブーストモデルIn-DBに変更されます。
- [ブーストモデルツール]を右クリックし、[ツールバージョンの選択] を指定して、[ブーストモデル-DB]を選択します。
参照: 予測分析 データベース内の予測サポートの詳細については
- 必須パラメータ: ブーストモデルを生成するために必要な基本フィールド。
- 作成された各モデルには、他のツールで参照できる名前が必要です。 In-DB処理では、2つのモデル名の作成方法が可能です:
- 特定のモデル名: ユーザーが決定したモデル名。 モデル名または接頭辞は文字で始まり、文字、数字、および特殊文字ピリオド( ".")とアンダースコア( "_")を含む必要があります。 Rは大文字小文字を区別します。
- 生成されたモデル名: モデル名が自動的に生成されます。
- ターゲット変数の選択: 予測されるデータフィールドであり、応答または従属変数とも呼ばれます。
- 予測変数の選択: ターゲット変数の値に影響を与えるために使用されるデータフィールドで、機能または独立変数とも呼ばれます。 2つのプレディクタ値が最低限必要ですが、使用されるプレディクタ値の数に上限はありません。 ターゲット変数自体をターゲット値の計算に使用すべきではないため、ターゲットフィールドをプレディクタフィールドに含めるべきではありません。
-
モデル推定でサンプリングウェイトを使用する: モデル推定を作成するときに、各レコードの重要度を重み付けするフィールドを選択できるオプション。
フィールドが予測値とサンプルウェイトの両方として使用されている場合、出力ウェイト変数フィールドには Right_ が付加されます。
- [サンプリングウェイトフィールド]の選択: レコードの重み付けに使用するフィールド。
- モデルのカスタマイズ: ターゲットとデシジョンツリーの管理方法に基づいて出力モデルをカスタマイズするオプションの設定。
- ターゲットのタイプと損失関数の分布を指定する:
- 連続ターゲット: 指定された一意の値に、ストアごとの年間売上など、インスタンス全体の小さな割合が含まれている数値ターゲット。
連続ターゲットの場合は、ガウス分布に基づいて損失関数を最小化します。
- バイナリカテゴリターゲット:はい-いいえの分類など、2つの可能な結果を持つカテゴリターゲット。
バイナリカテゴリカルターゲットの場合、ベルヌーイ分布に基づいて損失関数を最小化します。
- 多項式カテゴリターゲット: a、B、C 分類などの離散的な結果の数が限られたカテゴリターゲットフィールド。
多項式カテゴリターゲットの場合、ベルヌーイ損失関数の多項式の一般化である多項ロジスティック損失関数に基づいて損失関数を最小化します。
- 連続ターゲット: 指定された一意の値に、ストアごとの年間売上など、インスタンス全体の小さな割合が含まれている数値ターゲット。
- モデル内のツリーの最大数: アルゴリズムが最終的なモデルに含めることができるデシジョンツリーの数。 デフォルト値は4000です。 ツリーの数が多いほど実行時間が長くなります。
- アウトオブバッグサンプルで使用されるオブザベーションの割合: 含まれるデシジョンツリーの数を減らすために使用されるサンプリングの割合。 デフォルト値は50%です。 一般的な値は25~50%です。
- 収縮重量: モデルに追加された各ツリーにウェイトを配置するために使用する 0 ~ 1 の値。 デフォルト値は.0020です。 値を小さくするほど、モデルに含まれるツリーが増え、実行時間が長くなります。
小さな収縮値は、ツリーの最適数を保証するために、決定木の最大数の設定値を必要とする場合があります。
- ツリーサイズ: 標準のブーストモデルツールで既定のツリーサイズの設定を模倣するには、既定値を使用します。 詳細については、rxBTreesコントロールをご参照ください。
- maxDepth: ツリーノードの最大深度[1000]
- minBucket: 末端ノード(またはリーフ)における最低限必要な観測数[10]
- minSplit: 分割が試行される前にノードに存在しなければならない観測の最小数[minBucket * 2]
- ランダムシード値: ランダムサンプリングの順序を決定する値。 これにより、選択方法はランダムでデータに依存しないが、データ内の同じレコードが選択されます。 ランダム描画のシーケンスを変更するには、値を変更します。
- グラフィックスオプション: 出力グラフの設定。 カスタマイズしない限り、デフォルト値が使用されます。
- [印刷サイズ]: 単位を選択し、幅と高さの値を設定します。
-
グラフ解像度 : グラフの解像度を1インチあたりのドット数: 1x (96 dpi)、2x (192 dpi)、または 3x (288 dpi) で選択します。 解像度を低くするとファイルサイズが小さくなり、モニタでの表示に最適です。 解像度を高くするとファイルサイズが大きくなり、印刷品質は向上します。
- 基本フォントサイズ (ポイント): ポイント単位のフォントサイズ。
サロゲート主キーやナチュラル主キーなどの固有識別子を含む列は、統計分析で使用しないでください。 これらの列は予測値がなく、ランタイム系例外を引き起こす可能性があります。
これらのオプションは、モデル設定を変更するために使用できます。
各出力アンカーに閲覧ツールを接続して、結果を表示します。
- Oアンカー: 結果ウィンドウにモデル名とサイズを出力します。
- Rアンカー: 概要と構成されたプロットを含むモデルのレポートを表示します。