ランダム・フォレスト・ノードの作成オプション

ランダム・フォレスト・ノードの作成オプションを指定するには、「作成オプション」タブを使用します。このタブには、基本オプション拡張オプションが用意されています。これらのオプションの詳細については、https://scikit-learn.org/stable/modules/ensemble.html#forestを参照してください。

基本

作成するツリーの数: フォレスト内のツリー数を選択します。

最大の深さの指定: 選択されていない場合、リーフがすべて純粋なリーフになるまで、またはすべてのリーフのサンプル数が min_samples_split 未満になるまでノードが展開されます。

Max depth: ツリーの最大の深さ。

リーフ ノードの最小サイズ: リーフ ノードで必要なサンプルの最小数。

分割に使用するフィーチャー数: 最良の分割を求めるときに考慮するフィーチャーの数。
  • auto の場合、分類に max_features=sqrt(n_features) を使用し、回帰に max_features=n_features を使用します。
  • sqrt の場合は max_features=sqrt(n_features) です。
  • log2 の場合は max_features=log2 (n_features) です。

詳細

ツリーの作成時にブートストラップ サンプルを使用 (Use bootstrap samples when building trees): 選択すると、ツリーの作成時にブートストラップ サンプルを使用します。

一般化の精度を推定するために Out of Bag サンプルを使用: 選択すると、Out of Bag サンプルを使用して一般化の精度を推定します。

Extremely Randomized Trees を使用: 選択すると、一般的なランダム・フォレストではなく、Extremely Randomized Trees を使用します。Extremely Randomized Trees では、分割の計算におけるランダム性が一段階向上します。ランダム フォレストと同様に、候補フィーチャーのランダムなサブセットが使用されますが、最も明確に区分するしきい値が探索されるのではなく、各候補フィーチャーに対してランダムにしきい値が設けられ、それらのランダムに生成されたしきい値のうち最良のものが分割ルールとして選択されます。これにより、通常はモデルの分散を少し抑えることができますが、偏りはわずかに大きくなります。1

結果の再現。選択すると、モデル作成処理が再現され、同じスコアリング結果が得られます。

ランダム シード。「生成」をクリックすると、乱数発生ルーチンによって使用されるシードを生成できます。

ハイパーパラメータ最適化 (Rbfopt に基づく): Rbfopt に基づくハイパーパラメータ最適化を有効にするには、このオプションを選択します。有効にすると、パラメータの最適な組み合わせが自動的に検出され、サンプルに対するモデルの誤差率が予測値以下になります。Rbfopt について詳しくは、http://rbfopt.readthedocs.io/en/latest/rbfopt_settings.htmlを参照してください。

目標: 目標とする目的関数 (サンプルに対するモデルの誤差率) の値 (未知の最適条件の値)。許容できる値 (0.01 など) に設定してください。

最大反復: モデルを試行する最大反復数。デフォルトは 1000 です。

最大評価: 精度モードにおいてモデルを試行するための関数評価の最大回数。デフォルトは 300 です。

次の表に、SPSS® Modeler のランダム・フォレスト・ノードのダイアログの設定と Python ランダム・フォレスト・ライブラリーのパラメータとの間の関係を示します。
表 1. ノードのプロパティーと Python ライブラリーのパラメータのマッピング
SPSS Modeler の設定 スクリプト名 (プロパティー名) ランダム フォレストのパラメータ
対象 target
予測値 inputs
作成するツリーの数 n_estimators n_estimators
最大の深さの指定 specify_max_depth specify_max_depth
Max depth max_depth max_depth
リーフ ノードの最小サイズ min_samples_leaf min_samples_leaf
分割に使用するフィーチャー数 max_features max_features
ツリーの作成時にブートストラップ サンプルを使用 (Use bootstrap samples when building trees) bootstrap bootstrap
一般化の精度を推定するために Out of Bag サンプルを使用 oob_score oob_score
Extremely Randomized Trees を使用 extreme
結果を再現 use_random_seed
ランダム シード random_seed random_seed
ハイパーパラメータ最適化 (Rbfopt に基づく) enable_hpo
目標 (HPO の場合) target_objval
最大反復 (HPO の場合) max_iterations
最大評価 (HPO の場合) max_evaluations

1L. Breiman, "Random Forests," Machine Learning, 45(1), 5-32, 2001.