XGBoost ツリー・ノードの作成オプション
XGBoost ツリー・ノードの作成オプションを指定するには、「作成オプション」タブを使用します。このタブには、モデルの構築やツリーの成長のための基本オプションや、目的のための学習タスク・オプション、およびオーバーフィッティングの制御や不均衡データ・セットの処理のための詳細オプションが含まれています。これらのオプションについて詳しくは、以下のオンライン情報源を参照してください。
基本
ハイパーパラメータ最適化 (Rbfopt に基づく): Rbfopt に基づくハイパーパラメータ最適化を有効にするには、このオプションを選択します。有効にすると、パラメータの最適な組み合わせが自動的に検出され、サンプルに対するモデルの誤差率が予測値以下になります。Rbfopt について詳しくは、http://rbfopt.readthedocs.io/en/latest/rbfopt_settings.htmlを参照してください。
Tree method: 使用する XGBoost ツリー構築アルゴリズムを選択します。
Num boost round: ブースティング反復回数を指定します。
Max depth: ツリーの最大深度を指定します。この値を大きくすると、モデルがより複雑になり、オーバーフィッティングになりやすくなります。
Min child weight: 子で必要なインスタンスの重み (ヘシアン) の最小合計を指定します。ツリーの分割ステップで生じた葉ノードのインスタンスの重みの合計が、この「Min child weight」より小さい場合、構築プロセスでそれ以上の分割は行いません。線型モードの場合は、単純に、各ノードに必要なインスタンスの最小値に対応しています。重みを大きくするほど、アルゴリズムがより保守的になります。
Max delta step: 各ツリーの重みを推定できるようにするには、Max delta step を指定します。0 に設定した場合、何も制約はありません。正の値に設定した場合、更新ステップがより保守的になります。通常はこのパラメータは必要ありませんが、クラスのバランスが著しく悪いときに、ロジスティック回帰で役立つ可能性があります。
学習タスク
目的: 学習タスクの目的タイプ reg:linear、reg:logistic、reg:gamma、reg:tweedie、count:poisson、rank:pairwise、binary:logistic、または multi から選択します。
早期停止: 早期停止機能を使用する場合は、このオプションを選択します。「停止ラウンド (stopping rounds)」の場合、学習を続行するには、少なくとも早期停止ラウンドごとに検証エラーが減少する必要があります。「評価データの比率 (Evaluation data ratio)」は、検証エラーに使用する入力データの比率です。
ランダム シード: 「生成」をクリックすると、乱数発生ルーチンによって使用されるシードを生成できます。
詳細
サブサンプル: サブサンプルは、学習インスタンスの比率を示します。例えば、0.5 に設定した場合、データ・インスタンスの半数をランダムに収集してツリーを成長させることで、オーバーフィッティングを防ぎます。
イータ: オーバーフィッティングを防ぐために更新ステップ中に使用するステップ サイズの収縮。各ブースティング ステップの後で、新規フィーチャーの重みを直接取得できます。イータはフィーチャーの重みも収縮させるため、ブースティングのプロセスがより保守的になります。
ガンマ: ツリーの葉ノードをさらに分割するために必要な最小の損失低減。ガンマの設定を大きくするほど、アルゴリズムがより保守的になります。
Colsample by tree: 各ツリーを構築する際の、列のサブサンプルの比率。
Colsample by level: 各分割における、各レベルでの列のサブサンプルの比率。
ラムダ: 重みに関する L2 正規化項。この値を大きくすると、モデルがより保守的になります。
アルファ: 重みに関する L1 正規化項。この値を大きくすると、モデルがより保守的になります。
Scale pos weight: 正の重みと負の重みのバランスを制御します。 これは不均衡なクラスの場合に役立ちます。
| SPSS Modeler の設定 | スクリプト名 (プロパティー名) | XGBoost パラメータ |
|---|---|---|
| 対象 | TargetField |
|
| 予測値 | InputFields |
|
| Tree method | treeMethod |
tree_method |
| Num boost round | numBoostRound |
num_boost_round |
| Max depth | maxDepth |
max_depth |
| Min child weight | minChildWeight |
min_child_weight |
| Max delta step | maxDeltaStep |
max_delta_step |
| 目的 | objectiveType |
objective |
| 早期停止 | earlyStopping |
early_stopping_rounds |
| 停止ラウンド (stopping rounds) | stoppingRounds |
|
| 評価データの比率 (Evaluation data ratio) | evaluationDataRatio |
|
| ランダム シード | random_seed |
seed |
| サブサンプル | sampleSize |
subsample |
| イータ | eta |
eta |
| ガンマ | gamma |
gamma |
| Colsample by tree: | colsSampleRatio |
colsample_bytree |
| Colsample by level | colsSampleLevel |
colsample_bylevel |
| ラムダ | lambda |
lambda |
| アルファ | alpha |
alpha |
| Scale pos weight | scalePosWeight |
scale_pos_weight |
1 "XGBoost Parameters" Scalable and Flexible Gradient Boosting. Web. © 2015-2016 DMLC.
2 "Plotting API" Scalable and Flexible Gradient Boosting. Web. © 2015-2016 DMLC.
3 "Scalable and Flexible Gradient Boosting." Web. © 2015-2016 DMLC.