ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

fitctree

マルチクラス分類用のバイナリ決定木をあてはめる

説明

tree = fitctree(Tbl,ResponseVarName) は、テーブル Tbl に含まれている入力変数 (予測子、特徴量または属性とも呼ばれます) と ResponseVarName に含まれている出力 (応答またはラベル) に基づいて近似させたバイナリ分類決定木を返します。返される二分木では、Tbl の列の値に基づいて分岐ノードが分割されます。

tree = fitctree(Tbl,formula) は、テーブル Tbl に含まれている入力変数に基づいてあてはめたバイナリ分類決定木を返します。formula は、tree のあてはめに使用する応答および Tbl 内の予測子変数サブセットの説明モデルです。

tree = fitctree(Tbl,Y) は、テーブル Tbl に含まれている入力変数とベクトル Y に含まれている出力に基づいて近似させたバイナリ分類決定木を返します。

tree = fitctree(X,Y) は、行列 X に含まれている入力変数と出力 Y に基づいて近似させたバイナリ分類決定木を返します。返される二分木では、X の列の値に基づいて分岐ノードが分割されます。

tree = fitctree(___,Name,Value) は、前の構文のいずれかを使用し、1 つ以上の名前と値のペアの引数で指定されたオプションを追加して、木の近似を行います。たとえば、カテゴリカル予測子での最適な分割の検出、交差検証木の成長、または検証対象の入力データの一部を取得するためのアルゴリズムを指定できます。

すべて折りたたむ

ionosphere データセットを使用して分類木を成長させます。

load ionosphere
tc = fitctree(X,Y)
tc = 
  ClassificationTree
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: {'b'  'g'}
           ScoreTransform: 'none'
          NumObservations: 351


  Properties, Methods

名前と値のペアの引数 MaxNumSplitsMinLeafSize または MinParentSize を使用すると、木の深さを制御できます。既定では、fitctree は深い決定木を成長させます。モデルの複雑さや計算時間の削減のために、より浅い木を成長させることもできます。

ionosphere データセットを読み込みます。

load ionosphere

分類木を成長させる場合、木の深さの制御に関する既定値は次のとおりです。

  • MaxNumSplitsn - 1n は学習標本のサイズです。

  • MinLeafSize1

  • MinParentSize10

これらの既定値を使用すると、学習標本のサイズが大きい場合に木が深く成長する傾向があります。

木の深さの制御について既定値を使用して、分類木を学習させます。10 分割の交差検証をモデルに対して実行します。

rng(1); % For reproducibility
MdlDefault = fitctree(X,Y,'CrossVal','on');

木に適用される分割数のヒストグラムを描画します。また、木の 1 つを表示します。

numBranches = @(x)sum(x.IsBranch);
mdlDefaultNumSplits = cellfun(numBranches, MdlDefault.Trained);

figure;
histogram(mdlDefaultNumSplits)

view(MdlDefault.Trained{1},'Mode','graph')

分割数の平均は約 15 です。

既定の分割数を使用して学習させたものほど複雑ではない (深くない) 分類木が必要であるとします。最大分割数を 7 に設定して別の分類木を学習させることで、既定値の分類木からの平均分割数が約半分になります。10 分割の交差検証をモデルに対して実行します。

Mdl7 = fitctree(X,Y,'MaxNumSplits',7,'CrossVal','on');
view(Mdl7.Trained{1},'Mode','graph')

モデルの交差検証分類誤差を比較します。

classErrorDefault = kfoldLoss(MdlDefault)
classErrorDefault = 0.1140
classError7 = kfoldLoss(Mdl7)
classError7 = 0.1254

Mdl7 は、MdlDefault より大幅に単純化されており、性能は少しだけ低下します。

この例では、fitctree を使用して自動的にハイパーパラメーターを最適化する方法を示します。この例では、フィッシャーのアヤメのデータを使用します。

フィッシャーのアヤメのデータを読み込みます。

load fisheriris

meas のデータを使用して species 内の応答を予測することにより、分類器の交差検証損失を最適化します。

X = meas;
Y = species;
Mdl = fitctree(X,Y,'OptimizeHyperparameters','auto')

|======================================================================================|
| Iter | Eval   | Objective   | Objective   | BestSoFar   | BestSoFar   |  MinLeafSize |
|      | result |             | runtime     | (observed)  | (estim.)    |              |
|======================================================================================|
|    1 | Best   |    0.066667 |      1.3189 |    0.066667 |    0.066667 |           31 |
|    2 | Accept |    0.066667 |     0.28182 |    0.066667 |    0.066667 |           12 |
|    3 | Best   |        0.04 |     0.18161 |        0.04 |    0.040003 |            2 |
|    4 | Accept |     0.66667 |      0.1616 |        0.04 |     0.15796 |           73 |
|    5 | Accept |        0.04 |     0.25432 |        0.04 |    0.040009 |            2 |
|    6 | Accept |        0.04 |      0.1321 |        0.04 |    0.040007 |            3 |
|    7 | Accept |     0.66667 |    0.089845 |        0.04 |    0.040007 |           75 |
|    8 | Accept |    0.066667 |    0.090124 |        0.04 |    0.040008 |           20 |
|    9 | Accept |    0.066667 |     0.13334 |        0.04 |    0.040008 |            6 |
|   10 | Best   |    0.033333 |     0.12763 |    0.033333 |    0.033351 |            1 |
|   11 | Accept |        0.04 |     0.20327 |    0.033333 |    0.033348 |            4 |
|   12 | Accept |    0.066667 |     0.12326 |    0.033333 |    0.033348 |           26 |
|   13 | Accept |    0.066667 |     0.13703 |    0.033333 |    0.033489 |            9 |
|   14 | Accept |    0.033333 |     0.33771 |    0.033333 |    0.033339 |            1 |
|   15 | Accept |    0.066667 |     0.14407 |    0.033333 |    0.033339 |           16 |
|   16 | Accept |    0.033333 |     0.16354 |    0.033333 |    0.033337 |            1 |
|   17 | Accept |    0.033333 |     0.18299 |    0.033333 |    0.033336 |            1 |
|   18 | Accept |     0.33333 |     0.12321 |    0.033333 |    0.033336 |           43 |
|   19 | Accept |    0.046667 |     0.35991 |    0.033333 |    0.033336 |            5 |
|   20 | Accept |    0.066667 |     0.11482 |    0.033333 |    0.033336 |            7 |
|======================================================================================|
| Iter | Eval   | Objective   | Objective   | BestSoFar   | BestSoFar   |  MinLeafSize |
|      | result |             | runtime     | (observed)  | (estim.)    |              |
|======================================================================================|
|   21 | Accept |    0.066667 |     0.11428 |    0.033333 |    0.033336 |           14 |
|   22 | Accept |    0.066667 |     0.16467 |    0.033333 |    0.033336 |           10 |
|   23 | Accept |    0.066667 |     0.18485 |    0.033333 |    0.033336 |           36 |
|   24 | Accept |     0.33333 |     0.20996 |    0.033333 |    0.034143 |           55 |
|   25 | Accept |        0.04 |     0.24161 |    0.033333 |    0.034123 |            2 |
|   26 | Accept |        0.04 |     0.12809 |    0.033333 |    0.034089 |            3 |
|   27 | Accept |        0.04 |      0.1168 |    0.033333 |    0.034065 |            4 |
|   28 | Accept |    0.066667 |     0.12518 |    0.033333 |    0.034038 |           23 |
|   29 | Accept |    0.066667 |     0.19786 |    0.033333 |    0.034008 |            8 |
|   30 | Accept |    0.066667 |     0.20007 |    0.033333 |    0.033977 |           18 |

__________________________________________________________
Optimization completed.
MaxObjectiveEvaluations of 30 reached.
Total function evaluations: 30
Total elapsed time: 58.9988 seconds.
Total objective function evaluation time: 6.3444

Best observed feasible point:
    MinLeafSize
    ___________

         1     

Observed objective function value = 0.033333
Estimated objective function value = 0.033977
Function evaluation time = 0.12763

Best estimated feasible point (according to models):
    MinLeafSize
    ___________

         1     

Estimated objective function value = 0.033977
Estimated function evaluation time = 0.17412
Mdl = 
  ClassificationTree
                         ResponseName: 'Y'
                CategoricalPredictors: []
                           ClassNames: {'setosa'  'versicolor'  'virginica'}
                       ScoreTransform: 'none'
                      NumObservations: 150
    HyperparameterOptimizationResults: [1x1 BayesianOptimization]


  Properties, Methods

census1994 データセットを読み込みます。年齢、労働階級、教育レベル、婚姻区分、人種、性別、資本利得および損失、および 1 週間の勤務時間が与えられた個人の給与カテゴリを予測するモデルを考えます。

load census1994
X = adultdata(:,{'age','workClass','education_num','marital_status','race',...
    'sex','capital_gain','capital_loss','hours_per_week','salary'});

summary を使用して、カテゴリカル変数で表現されるカテゴリの個数を表示します。

summary(X)
Variables:

    age: 32561x1 double

        Values:

            Min        17  
            Median     37  
            Max        90  

    workClass: 32561x1 categorical

        Values:

            Federal-gov              960   
            Local-gov               2093   
            Never-worked               7   
            Private                22696   
            Self-emp-inc            1116   
            Self-emp-not-inc        2541   
            State-gov               1298   
            Without-pay               14   
            NumMissing              1836   

    education_num: 32561x1 double

        Values:

            Min              1       
            Median          10       
            Max             16       

    marital_status: 32561x1 categorical

        Values:

            Divorced                       4443      
            Married-AF-spouse                23      
            Married-civ-spouse            14976      
            Married-spouse-absent           418      
            Never-married                 10683      
            Separated                      1025      
            Widowed                         993      

    race: 32561x1 categorical

        Values:

            Amer-Indian-Eskimo      311 
            Asian-Pac-Islander     1039 
            Black                  3124 
            Other                   271 
            White                 27816 

    sex: 32561x1 categorical

        Values:

            Female    10771
            Male      21790

    capital_gain: 32561x1 double

        Values:

            Min               0     
            Median            0     
            Max           99999     

    capital_loss: 32561x1 double

        Values:

            Min               0     
            Median            0     
            Max            4356     

    hours_per_week: 32561x1 double

        Values:

            Min               1       
            Median           40       
            Max              99       

    salary: 32561x1 categorical

        Values:

            <=50K     24720  
            >50K       7841  

カテゴリカル変数で表現されるカテゴリの数は連続変数のレベル数と比較するとわずかなので、予測子分割アルゴリズムの標準 CART ではカテゴリカル変数よりも連続予測子が分割されます。

データセット全体を使用して分類木に学習をさせます。偏りの無い木を成長させるため、予測子の分割に曲率検定を使用するよう指定します。データには欠損観測値が含まれているので、代理分岐を使用するよう指定します。

Mdl = fitctree(X,'salary','PredictorSelection','curvature',...
    'Surrogate','on');

すべての予測子について分割によるリスク変動を合計し、この合計を分岐ノード数で除算することにより、予測子の重要度の値を推定します。棒グラフを使用して推定を比較します。

imp = predictorImportance(Mdl);

figure;
bar(imp);
title('Predictor Importance Estimates');
ylabel('Estimates');
xlabel('Predictors');
h = gca;
h.XTickLabel = Mdl.PredictorNames;
h.XTickLabelRotation = 45;
h.TickLabelInterpreter = 'none';

このケースでは、最も重要な予測子は capital_gain であり、次に重要なのは education_num です。

この例では、tall 配列を使用する分類木のハイパーパラメーターを自動的に最適化する方法を示します。標本データセット airlinesmall.csv は、飛行機のフライト データについての表形式ファイルが含まれている大規模なデータセットです。この例では、データが含まれている tall table を作成して、最適化手順を実行するために使用します。

データがあるフォルダーの場所を参照するデータストアを作成します。処理する変数のサブセットを選択します。datastoreNaN 値に置き換えるため、'NA' 値を欠損データとして扱います。データストア内のデータを含む tall table を作成します。

ds = datastore('airlinesmall.csv');
ds.SelectedVariableNames = {'Month','DayofMonth','DayOfWeek',...
                            'DepTime','ArrDelay','Distance','DepDelay'};
ds.TreatAsMissing = 'NA';
tt  = tall(ds) % Tall table
Starting parallel pool (parpool) using the 'local' profile ...
Connected to the parallel pool (number of workers: 6).

tt =

  M×7 tall table

    Month    DayofMonth    DayOfWeek    DepTime    ArrDelay    Distance    DepDelay
    _____    __________    _________    _______    ________    ________    ________

     10          21            3          642          8         308          12   
     10          26            1         1021          8         296           1   
     10          23            5         2055         21         480          20   
     10          23            5         1332         13         296          12   
     10          22            4          629          4         373          -1   
     10          28            3         1446         59         308          63   
     10           8            4          928          3         447          -2   
     10          10            6          859         11         954          -1   
      :          :             :           :          :           :           :
      :          :             :           :          :           :           :

tall 配列の計算を実行する場合、既定の実行環境ではローカルの MATLAB セッションまたは (Parallel Computing Toolbox™ がある場合は) ローカルの並列プールが使用されます。関数 mapreducer を使用して実行環境を変更できます。

フライトが遅れた場合に真になる論理変数を定義することにより、10 分以上遅れたフライトを判別します。この変数にクラス ラベルを含めます。この変数のプレビューには、はじめの数行が含まれています。

Y = tt.DepDelay > 10 % Class labels
Y =

  M×1 tall logical array

   1
   0
   1
   1
   0
   1
   0
   0
   :
   :

予測子データの tall 配列を作成します。

X = tt{:,1:end-1} % Predictor data
X =

  M×6 tall double matrix

  Columns 1 through 5

          10          21           3         642           8
          10          26           1        1021           8
          10          23           5        2055          21
          10          23           5        1332          13
          10          22           4         629           4
          10          28           3        1446          59
          10           8           4         928           3
          10          10           6         859          11
          :           :            :          :           :
          :           :            :          :           :

  Column 6

         308
         296
         480
         296
         373
         308
         447
         954
          :
          :

欠損データが含まれている X および Y の行を削除します。

R = rmmissing([X Y]); % Data with missing entries removed
X = R(:,1:end-1); 
Y = R(:,end); 

予測子変数を標準化します。

Z = zscore(X);

名前と値のペアの引数 'OptimizeHyperparameters' を使用して、自動的にハイパーパラメーターを最適化します。ホールドアウト交差検証損失が最小になる最適な 'MinLeafSize' の値を求めます ('auto' を指定すると 'MinLeafSize' が使用されます)。再現性を得るため、'expected-improvement-plus' の獲得関数を使用し、rngtallrng により乱数発生器のシードを設定します。tall 配列の場合、ワーカーの個数と実行環境によって結果が異なる可能性があります。詳細については、コードの実行場所の制御 (MATLAB)を参照してください。

rng('default') 
tallrng('default')
[Mdl,FitInfo,HyperparameterOptimizationResults] = fitctree(Z,Y,...
    'OptimizeHyperparameters','auto',...
    'HyperparameterOptimizationOptions',struct('Holdout',0.3,...
    'AcquisitionFunctionName','expected-improvement-plus'))
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 3: Completed in 8.2 sec
- Pass 2 of 3: Completed in 9.7 sec
- Pass 3 of 3: Completed in 6.2 sec
Evaluation completed in 24 sec

Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.7 sec
Evaluation completed in 1.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 2.3 sec
Evaluation completed in 2.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.9 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 2.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 10 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 8.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.4 sec
Evaluation completed in 8.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2.7 sec
Evaluation completed in 8.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.8 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 9.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.9 sec
- Pass 2 of 4: Completed in 2.9 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 10 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.9 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 9.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 9.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.9 sec
Evaluation completed in 9.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 2.5 sec
- Pass 3 of 4: Completed in 1.3 sec
- Pass 4 of 4: Completed in 3 sec
Evaluation completed in 9.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2.4 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 8.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.2 sec
- Pass 2 of 4: Completed in 2.5 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.6 sec
Evaluation completed in 9.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2.4 sec
- Pass 3 of 4: Completed in 1.3 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2.5 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.5 sec
Evaluation completed in 8.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.2 sec
- Pass 2 of 4: Completed in 2.4 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 8.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.2 sec
- Pass 2 of 4: Completed in 2.5 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.4 sec
Evaluation completed in 9.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 2.4 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.4 sec
Evaluation completed in 8.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 3.6 sec
Evaluation completed in 3.6 sec
|======================================================================================|
| Iter | Eval   | Objective   | Objective   | BestSoFar   | BestSoFar   |  MinLeafSize |
|      | result |             | runtime     | (observed)  | (estim.)    |              |
|======================================================================================|
|    1 | Best   |      0.1163 |       277.4 |      0.1163 |      0.1163 |           10 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.74 sec
Evaluation completed in 0.79 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.9 sec
Evaluation completed in 1.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.9 sec
Evaluation completed in 2 sec
|    2 | Accept |     0.19635 |       17.06 |      0.1163 |     0.12063 |        48298 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.9 sec
Evaluation completed in 1.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 5.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 5.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.9 sec
|    3 | Best   |      0.1048 |      87.792 |      0.1048 |     0.11151 |         3166 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.67 sec
Evaluation completed in 0.73 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.9 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.6 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 7.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 0.98 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 2 sec
Evaluation completed in 2 sec
|    4 | Best   |       0.101 |      153.47 |       0.101 |      0.1056 |          180 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.3 sec
Evaluation completed in 1.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 5.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2.1 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 8.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.4 sec
Evaluation completed in 1.5 sec
|    5 | Best   |     0.10058 |      156.17 |     0.10058 |      0.1006 |          145 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.73 sec
Evaluation completed in 0.79 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.4 sec
Evaluation completed in 1.4 sec
|    6 | Accept |     0.10155 |      113.72 |     0.10058 |     0.10059 |         1058 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.69 sec
Evaluation completed in 0.75 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 2 sec
Evaluation completed in 2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.3 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 0.99 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 0.97 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 6.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2.6 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.3 sec
Evaluation completed in 7.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.4 sec
- Pass 2 of 4: Completed in 2.1 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.5 sec
Evaluation completed in 8.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 2.2 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.6 sec
Evaluation completed in 8.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 3.3 sec
Evaluation completed in 10 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2.4 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 9.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.8 sec
- Pass 2 of 4: Completed in 2.5 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.7 sec
Evaluation completed in 9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.3 sec
- Pass 2 of 4: Completed in 2.6 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 3.2 sec
Evaluation completed in 11 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.9 sec
- Pass 2 of 4: Completed in 2.6 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 10 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.5 sec
- Pass 2 of 4: Completed in 2.7 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 3 sec
Evaluation completed in 11 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2 sec
- Pass 2 of 4: Completed in 2.2 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 2.4 sec
Evaluation completed in 9.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.9 sec
- Pass 2 of 4: Completed in 2.7 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.4 sec
Evaluation completed in 9.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2 sec
- Pass 2 of 4: Completed in 2.8 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 9.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.6 sec
- Pass 2 of 4: Completed in 2.8 sec
- Pass 3 of 4: Completed in 1.3 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 10 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2 sec
- Pass 2 of 4: Completed in 2.7 sec
- Pass 3 of 4: Completed in 1.3 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 9.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.3 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.5 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 9.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.1 sec
- Pass 2 of 4: Completed in 2.3 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 9.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2.7 sec
- Pass 2 of 4: Completed in 2.8 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 10 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.9 sec
Evaluation completed in 2 sec
|    7 | Accept |     0.13479 |       312.1 |     0.10058 |     0.10059 |            1 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.62 sec
Evaluation completed in 0.67 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 5.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2.3 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 2 sec
- Pass 2 of 4: Completed in 2.5 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2.2 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 8.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.6 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.7 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.8 sec
- Pass 2 of 4: Completed in 1.6 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.9 sec
Evaluation completed in 1.9 sec
|    8 | Accept |     0.10249 |      190.23 |     0.10058 |     0.10063 |           58 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.67 sec
Evaluation completed in 0.73 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.3 sec
Evaluation completed in 1.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 5.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 5.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 5.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.6 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.4 sec
Evaluation completed in 1.5 sec
|    9 | Best   |     0.10033 |      164.41 |     0.10033 |      0.1004 |          112 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 2.1 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 0.98 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 0.98 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 5.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 0.98 sec
- Pass 4 of 4: Completed in 1.7 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 0.99 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.7 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.9 sec
|   10 | Accept |     0.10145 |      102.12 |     0.10033 |     0.10042 |         1682 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.3 sec
Evaluation completed in 1.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 5.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 5.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 0.99 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 5.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.6 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.8 sec
- Pass 2 of 4: Completed in 2 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.6 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.4 sec
Evaluation completed in 1.4 sec
|   11 | Accept |     0.10047 |      164.08 |     0.10033 |     0.10044 |          114 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.2 sec
Evaluation completed in 1.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.8 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.8 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 2.1 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.6 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.7 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 5.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.8 sec
Evaluation completed in 1.8 sec
|   12 | Accept |     0.10105 |      171.09 |     0.10033 |     0.10061 |          116 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.63 sec
Evaluation completed in 0.68 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.3 sec
Evaluation completed in 1.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 7.2 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.2 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2 sec
Evaluation completed in 7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 5.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.1 sec
Evaluation completed in 6.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 6.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.5 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.9 sec
Evaluation completed in 7.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.9 sec
Evaluation completed in 1.9 sec
|   13 | Accept |     0.10105 |      155.32 |     0.10033 |     0.10069 |          122 |
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 0.63 sec
Evaluation completed in 0.69 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 1: Completed in 1.3 sec
Evaluation completed in 1.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 0.99 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 5.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 0.99 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.4 sec
Evaluation completed in 6.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.1 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.3 sec
Evaluation completed in 6.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.3 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.5 sec
Evaluation completed in 5.9 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.6 sec
- Pass 2 of 4: Completed in 1.4 sec
- Pass 3 of 4: Completed in 1.5 sec
- Pass 4 of 4: Completed in 1.6 sec
Evaluation completed in 6.6 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 1.7 sec
Evaluation completed in 7.3 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.1 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 1.8 sec
Evaluation completed in 6.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.2 sec
- Pass 2 of 4: Completed in 1.9 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 2.5 sec
Evaluation completed in 8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.3 sec
- Pass 2 of 4: Completed in 1.5 sec
- Pass 3 of 4: Completed in 1 sec
- Pass 4 of 4: Completed in 2.8 sec
Evaluation completed in 7.4 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.8 sec
- Pass 2 of 4: Completed in 2.1 sec
- Pass 3 of 4: Completed in 1.1 sec
- Pass 4 of 4: Completed in 3 sec
Evaluation completed in 8.8 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.7 sec
- Pass 3 of 4: Completed in 1.6 sec
- Pass 4 of 4: Completed in 3.1 sec
Evaluation completed in 8.7 sec
Evaluating tall expression using the Parallel Pool 'local':
- Pass 1 of 4: Completed in 1.5 sec
- Pass 2 of 4: Completed in 1.8 sec
- Pass 3 of 4: Completed in 1.2 sec
- Pass 4 of 4: 0% complete
Evalua...
Mdl = 
  classreg.learning.classif.CompactClassificationTree
             ResponseName: 'Y'
    CategoricalPredictors: []
               ClassNames: [0 1]
           ScoreTransform: 'none'


  Properties, Methods

FitInfo = struct with no fields.


HyperparameterOptimizationResults = 
  BayesianOptimization with properties:

                      ObjectiveFcn: @createObjFcn/tallObjFcn
              VariableDescriptions: [4×1 optimizableVariable]
                           Options: [1×1 struct]
                      MinObjective: 0.1003
                   XAtMinObjective: [1×1 table]
             MinEstimatedObjective: 0.1007
          XAtMinEstimatedObjective: [1×1 table]
           NumObjectiveEvaluations: 30
                  TotalElapsedTime: 4.7763e+03
                         NextPoint: [1×1 table]
                            XTrace: [30×1 table]
                    ObjectiveTrace: [30×1 double]
                  ConstraintsTrace: []
                     UserDataTrace: {30×1 cell}
      ObjectiveEvaluationTimeTrace: [30×1 double]
                IterationTimeTrace: [30×1 double]
                        ErrorTrace: [30×1 double]
                  FeasibilityTrace: [30×1 logical]
       FeasibilityProbabilityTrace: [30×1 double]
               IndexOfMinimumTrace: [30×1 double]
             ObjectiveMinimumTrace: [30×1 double]
    EstimatedObjectiveMinimumTrace: [30×1 double]

入力引数

すべて折りたたむ

モデルを学習させるために使用する標本データ。テーブルとして指定します。Tbl の各行は 1 つの観測値に、各列は 1 つの予測子変数に対応します。オプションとして、Tbl に応答変数用の列を 1 つ追加できます。文字ベクトルの cell 配列ではない cell 配列と複数列の変数は使用できません。

Tbl に応答変数が含まれている場合に Tbl 内の他の変数をすべて予測子として使用するには、ResponseVarName を使用して応答変数を指定します。

Tbl に応答変数が含まれている場合に Tbl 内の他の変数の一部のみを予測子として使用するには、formula を使用して式を指定します。

Tbl に応答変数が含まれていない場合は、Y を使用して応答変数を指定します。応答変数の長さと Tbl の行数は等しくなければなりません。

データ型: テーブル

応答変数の名前。Tbl 内の変数の名前で指定します。

ResponseVarName には文字ベクトルまたは string スカラーを指定しなければなりません。たとえば、応答変数 YTbl.Y として格納されている場合、'Y' として指定します。それ以外の場合、モデルを学習させるときに、Tbl の列は Y を含めてすべて予測子として扱われます。

応答変数は、categorical 配列、文字配列、string 配列、logical ベクトル、数値ベクトル、または文字ベクトルの cell 配列でなければなりません。Y が文字配列である場合、応答変数の各要素は配列の 1 つの行に対応しなければなりません。

名前と値のペアの引数 ClassNames を使用してクラスの順序を指定することをお勧めします。

データ型: char | string

予測子変数のサブセットおよび応答の説明モデル。'Y~X1+X2+X3' という形式の文字ベクトルまたは string スカラーを指定します。この式では、Y は応答変数を、X1X2 および X3 は予測子変数を表します。変数は、Tbl (Tbl.Properties.VariableNames) に含まれている変数の名前でなければなりません。

モデルに学習をさせるための予測子として Tbl 内の変数のサブセットを指定するには、式を使用します。式を指定した場合、formula に現れない Tbl 内の変数は使用されません。

データ型: char | string

クラス ラベル。数値ベクトル、categorical ベクトル、logical ベクトル、文字配列、string 配列、または文字ベクトルの cell 配列を指定します。Y の各行は、X の対応する行の分類を表します。

木をあてはめるときに、fitctreeY に含まれている NaN'' (空の文字ベクトル)、"" (空の string)、<missing>、および <undefined> 値を欠損値と見なします。fitctree は、Y に対し欠損値がある観測値をあてはめで使用しません。

Y が数値の場合は、代わりに fitrtree を使用して回帰木を近似させることを検討してください。

データ型: single | double | カテゴリカル | logical | char | string | cell

予測子データ。数値行列として指定します。X の各行は 1 つの観測値に、各列は 1 つの予測子変数に対応します。

fitctree は、XNaN 値を欠損値として認識します。fitctree は、すべての欠損値のある観測を X の近似に使用しません。fitctree は、これらの観測が有効な値をもつ場合に変数の分割を検出するために、一部の欠損値のある観測を X に使用します。

データ型: single | double

名前と値のペアの引数

オプションの Name,Value 引数のコンマ区切りペアを指定します。Name は引数名で、Value は対応する値です。Name は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN のように、複数の名前と値のペアの引数を、任意の順番で指定できます。

例: 'CrossVal','on','MinLeafSize',40 は、葉ごとに最低 40 個の観測値をもつ交差検証分類木を指定します。

メモ

交差検証の名前と値のペアの引数を名前と値のペアの引数 'OptimizeHyperparameters' と同時に使用することはできません。'OptimizeHyperparameters' の場合の交差検証は、名前と値のペアの引数 'HyperparameterOptimizationOptions' を使用することのみによって変更できます。

モデル パラメーター

すべて折りたたむ

データに対する C 個のカテゴリと K (3 以上) 個のクラスがあるカテゴリカル予測子に対して最適な分割を求めるアルゴリズム。'AlgorithmForCategorical' と次のいずれかの値から構成されるコンマ区切りのペアとして指定されます。

説明
'Exact'2C–1 – 1 のすべての組み合わせを検討します。
'PullLeft'右枝にあるすべての C カテゴリから開始します。残りのカテゴリにおいて K クラスの最小不純度を実現するように、各カテゴリを左枝に移動することを検討してください。このシーケンスから、最小の不純度をもつ分割を選択します。
'PCA'(中心となるクラス確率行列の) 重み付け共分散行列の最初の主成分とそのカテゴリに対するクラス確率のベクトル間の内積を使用して、各カテゴリのスコアを計算します。スコアを昇順に並べ替え、C - 分割をすべてを検討します。
'OVAbyClass'右枝にあるすべての C カテゴリから開始します。クラスごとに、そのクラスの確率に基づいてカテゴリの順序を設定します。最初のクラスでは、各カテゴリを左枝に順番に移動し、各移動の不純度基準を記録します。残りのクラスに対して同じ作業を繰り返します。このシーケンスから、最小の不純度をもつ分割を選択します。

fitctree により、既知のクラスの数とカテゴリカル予測子のレベルを使用して分割ごとに最適なアルゴリズムのサブセットが自動的に選択されます。K = 2 クラスの場合、fitctree では常に完全一致検索が実行されます。特定のアルゴリズムを指定するには、名前と値のペアの引数 'AlgorithmForCategorical' を使用します。

詳細は、分類木のカテゴリカル予測子の分割を参照してください。

例: 'AlgorithmForCategorical','PCA'

カテゴリカル予測子のリスト。'CategoricalPredictors' と次の表のいずれかの値から構成されるコンマ区切りのペアとして指定します。

説明
正の整数のベクトルベクトルのエントリは、カテゴリカル変数が含まれている予測子データ (X または Tbl) の列に対応するインデックス値です。
logical ベクトルtrue というエントリは、予測子データ (X または Tbl) の対応する列がカテゴリカル変数であることを意味します。
文字行列行列の各行は予測子変数の名前です。名前は PredictorNames のエントリに一致しなくてはなりません。文字行列の各行が同じ長さになるように、名前を余分な空白で埋めてください。
文字ベクトルの cell 配列または string 配列配列の各要素は予測子変数の名前です。名前は PredictorNames のエントリに一致しなくてはなりません。
'all'すべての予測子がカテゴリカルです。

既定では、予測子データが table (Tbl) 内にあり、この table に論理値、カテゴリカル値、string 配列、または文字ベクトルの cell 配列が格納されている場合、fitctree は変数がカテゴリカルであると見なします。予測子データが行列 (X) である場合、fitctree はすべての予測子が連続的であると見なします。データが行列の場合にカテゴリカル予測子を確認するには、名前と値のペアの引数 'CategoricalPredictors' を使用します。

例: 'CategoricalPredictors','all'

データ型: single | double | logical | char | string | cell

学習に使用するクラスの名前。'ClassNames' と categorical 配列、文字配列、string 配列、logical ベクトル、数値ベクトル、または文字ベクトルの cell 配列から構成されるコンマ区切りのペアとして指定します。ClassNames のデータ型は Y と同じでなければなりません。

ClassNames が文字配列の場合、各要素は配列の 1 つの "行" に対応しなければなりません。

ClassNames の使用目的は次のとおりです。

  • 学習時のクラスの順序を指定する。

  • クラスの順序に対応する入力または出力引数の次元の順序を指定する。たとえば、Cost の次元の順序や predict によって返される分類スコアの列の順序を指定するために ClassNames を使用します。

  • 学習用にクラスのサブセットを選択する。たとえば、Y に含まれているすべての異なるクラス名の集合が {'a','b','c'} であるとします。クラス 'a' および 'c' のみの観測値を使用してモデルに学習をさせるには、'ClassNames',{'a','c'} を指定します。

ClassNames の既定値は、Y に含まれているすべての異なるクラス名の集合です。

例: 'ClassNames',{'b','g'}

データ型: カテゴリカル | char | string | logical | single | double | cell

点の誤分類のコスト。'Cost' と以下のいずれかで構成されるコンマ区切りペアとして指定されます。

  • 正方行列。Cost(i,j) は真のクラスが i である場合に 1 つの点をクラス j に分類するためのコストです (行は真のクラス、列は予測したクラスに対応します)。Cost の対応する行と列についてクラスの順序を指定するには、名前と値のペアの引数 ClassNames も指定します。

  • 2 つのフィールドをもつ S を構成します。2 つのフィールドは、Y と同じデータ型のグループ名を表す変数が格納されている S.ClassNames と、コスト行列が格納されている S.ClassificationCosts です。

既定値は、i~=j の場合は Cost(i,j)=1i=j の場合は Cost(i,j)=0 です。

データ型: single | double | 構造体

最大の木の深さ。'MaxDepth' と正の整数から構成されるコンマ区切りのペアとして指定します。この引数の値を指定すると、レベル数が少なく、計算対象の tall 配列に対して必要な通過回数が少ない木が返されます。一般に、fitctree のアルゴリズムでは、データを 1 回通過し、木の各レベルに対してさらに 1 回ずつ通過します。既定では、この関数は最大の木の深さを設定しません。

メモ

このオプションは、tall 配列に対して fitctree を使用する場合のみ適用されます。詳細については、tall 配列を参照してください。

カテゴリ レベルの最大数。'MaxNumCategories' と非負のスカラー値で構成されるコンマ区切りのペアとして指定します。予測子が分割ノードで最大 MaxNumCategories 個のレベルをもつ場合、fitctree は、完全一致検索アルゴリズムを使用してカテゴリカル予測子を分割します。それ以外の場合、fitctree はあいまいアルゴリズムのいずれかを使用して最適なカテゴリカル分割を見つけます。

小さい値を渡すと精度が失われる可能性があり、大きい値を渡すと計算時間が長くなり、メモリ オーバーロードが発生する可能性があります。

例: 'MaxNumCategories',8

葉マージ フラグ。'MergeLeaves''on' または 'off' で構成されるコンマ区切りのペアとして指定します。

MergeLeaves'on' の場合、fitctree

  • 同じ親ノードより発し、そのリスク値合計が親ノードに紐づけられたリスク以上となる葉をマージする

  • 枝刈りされた部分木の最適系列を推定するが、分類木は枝刈りしない

それ以外の場合、fitctree は葉をマージしません。

例: 'MergeLeaves','off'

分岐ノードの観測値の最小数。'MinParentSize' と正の整数値で構成されるコンマ区切りのペアとして指定します。ツリーの各分岐ノードには少なくとも MinParentSize の観測値があります。MinParentSizeMinLeafSize 両方を指定した場合、fitctree では葉の数が多くなる方の設定を使用します。MinParentSize = max(MinParentSize,2*MinLeafSize)

例: 'MinParentSize',8

データ型: single | double

数値予測子のビンの個数。'NumBins' と正の整数スカラーから構成されるコンマ区切りのペアとして指定します。

  • 'NumBins' の値が空 (既定) である場合、どの予測子もビン化されません。

  • 'NumBins' の値として正の整数スカラーを指定した場合、指定した個数の同確率のビンにすべての数値予測子がビン化され、元のデータではなくビンのインデックスに対して木が成長します。

    • 'NumBins' の値が一意な予測子の値の個数 (u) を超える場合、fitctree は u 個のビンに予測子をビン化します。

    • fitctree は、カテゴリカル予測子をビン化しません。

大規模な学習データセットを使用する場合、このビン化オプションを使用すると、学習を高速化できますが、精度が低下する可能性があります。はじめに 'NumBins',50 を試してから、精度と学習速度に応じて 'NumBins' の値を変更できます。

学習済みのモデルでは、ビンのエッジは BinEdges プロパティに格納されます。

例: 'NumBins',50

データ型: single | double

予測子変数名。'PredictorNames' と一意な名前の string 配列または一意な文字ベクトルの cell 配列から構成されるコンマ区切りのペアとして指定します。'PredictorNames' の機能は、学習データの提供方法によって決まります。

  • XY を指定した場合、'PredictorNames' を使用して X の名前で予測子変数を指定できます。

    • PredictorNames 内の名前の順序は、X の列の順序に一致しなければなりません。つまり、PredictorNames{1}X(:,1) の名前、PredictorNames{2}X(:,2) の名前であり、他も同様です。また、size(X,2)numel(PredictorNames) は等しくなければなりません。

    • 既定では PredictorNames{'x1','x2',...} です。

  • Tbl が与えられた場合、'PredictorNames' を使用して学習に使用する予測子変数を選択できます。つまり、fitctreePredictorNames の予測子変数と応答変数のみを学習で使用します。

    • PredictorNamesTbl.Properties.VariableNames のサブセットでなければならず、応答変数の名前を含めることはできません。

    • 既定では、すべての予測子変数の名前が PredictorNames に格納されます。

    • 'PredictorNames'formula のいずれか一方のみを使用して学習用の予測子を指定することをお勧めします。

例: 'PredictorNames',{'SepalLength','SepalWidth','PetalLength','PetalWidth'}

データ型: string | cell

各ノードで最適な分割予測子の選択に使用するアルゴリズム。'PredictorSelection' と次の表の値から構成されるコンマ区切りのペアとして指定します。

説明
'allsplits'

標準 CART — すべての予測子に対して可能なすべての分割について分割基準ゲインを最大化する分割予測子を選択します[1]

'curvature'曲率検定 — 各予測子と応答の間の独立性に対するカイ二乗検定の p 値を最小化する分割予測子を選択します[4]。学習速度は標準 CART と同等です。
'interaction-curvature'交互作用検定 — 各予測子と応答の間の独立性に対するカイ二乗検定の p 値、および予測子の各ペアと応答の間の独立性に対するカイ二乗検定の p 値を最小化する分割予測子を選択します[3]。学習速度は標準 CART より遅くなる可能性があります。

'curvature''interaction-curvature' では、すべての検定で p 値が 0.05 を超える場合、fitctree はノードの分割を停止します。

ヒント

  • 標準 CART アルゴリズムには、相違する値が少ない分割予測子 (カテゴリカル変数など) よりも、相違する値が多い分割予測子 (連続変数など) を選択する傾向があります[4]。以下のいずれかに該当する場合は、曲率検定または交互作用検定の指定を検討してください。

    • 相違する値の個数が他の予測子よりも比較的少ない予測子がある場合 (予測子データセットが異種混合である場合など)。

    • 予測子の重要度の分析が目標である場合。予測子の重要度の推定に関する詳細については、predictorImportance を参照してください。

  • 標準 CART を使用して成長させた木は、予測子変数の交互作用の影響を受けません。また、多くの無関係な予測子が存在する状況では、このような木によって重要な変数が特定される可能性は、交互作用検定を適用した場合より低くなります。このため、予測子の交互作用を考慮し、重要度変数の特定を多くの無関係な変数が存在する状況で行うには、交互作用検定を指定します[3]

  • 'PredictorSelection' の値は、予測速度に影響を与えません。

fitctree が分割予測子を選択する方法の詳細については、ノード分割規則分割予測子選択手法の選択を参照してください。

例: 'PredictorSelection','curvature'

各クラスの事前確率。'Prior' と以下のいずれかで構成されるコンマ区切りのペアとして指定します。

  • 文字ベクトルまたは string スカラー

    • 'empirical'Y のクラスの頻度からクラス確率を決定します。観測値の重みを渡す場合、fitctree はこの重みを使用してクラス確率を計算します。

    • 'uniform' はすべてのクラス確率を均等に設定します。

  • ベクトル (クラスごとに 1 つのスカラー値)。Prior の対応する要素についてクラスの順序を指定するには、名前と値のペアの引数 ClassNames も指定します。

  • 構造体 S には 2 つのフィールドがあります。

    • Y と同じ型の変数としてクラス名を含む S.ClassNames

    • 対応する確率のベクトルを含む S.ClassProbs

weightsprior の両方に値を設定した場合は、重みは再正規化され、それぞれのクラスの事前確率の値に加算されます。

例: 'Prior','uniform'

データ型: char | string | single | double | 構造体

枝刈りされた部分木の最適なシーケンスを推定するフラグ。'Prune''on' または 'off' で構成されるコンマ区切りのペアとして指定します。

Prune'on' の場合、fitctree は枝刈りを行わずに分類木を成長させますが、枝刈りされた部分木の最適なシーケンスの推定は行います。それ以外の場合は、fitctree は分類木を成長させますが、枝刈りされた部分木の最適シーケンスを推定しません。

学習済みの ClassificationTree モデルに対して枝刈りを行うには、モデルを prune に渡します。

例: 'Prune','off'

枝刈り条件。'PruneCriterion' および 'error' または 'impurity' で構成されるコンマ区切りのペアとして指定します。

'impurity' を指定した場合、fitctree は名前と値のペアの引数 'SplitCriterion' によって指定された不純度の尺度を使用します。

詳細については、不純度とノード誤差を参照してください。

例: 'PruneCriterion','impurity'

モデルの学習の反復実行における再現性を強制するためのフラグ。'Reproducible'false または true から構成されるコンマ区切りのペアとして指定します。

'NumVariablesToSample''all' ではない場合、各分岐で予測子が無作為に選択されます。無作為な選択を再現するには、'Reproducible',true を指定し、rng を使用して乱数発生器のシードを設定しなければなりません。'Reproducible'true に設定すると学習速度が低下する可能性があることに注意してください。

例: 'Reproducible',true

データ型: logical

応答変数名。'ResponseName' と応答変数の名前を表す文字ベクトルまたは string スカラーから構成されるコンマ区切りのペアとして指定します。

入力引数 ResponseVarName または formula を使用した場合、この名前と値のペアは無効になります。

例: 'ResponseName','IrisType'

データ型: char | string

スコア変換。'ScoreTransform' と文字ベクトル、string スカラー、または関数ハンドルから構成されるコンマ区切りのペアとして指定します。

次の表は、使用可能な文字ベクトルおよび string スカラーをまとめています。

説明
'doublelogit'1/(1 + e–2x)
'invlogit'log(x / (1 – x))
'ismax'最大のスコアをもつクラスのスコアを 1 に設定し、他のすべてのクラスのスコアを 0 に設定します。
'logit'1/(1 + e–x)
'none' または 'identity'x (変換なし)
'sign'x < 0 のとき –1
x = 0 のとき 0
x > 0 のとき 1
'symmetric'2x – 1
'symmetricismax'最大のスコアをもつクラスのスコアを 1 に設定し、他のすべてのクラスのスコアを –1 に設定します。
'symmetriclogit'2/(1 + e–x) – 1

MATLAB® 関数またはユーザー定義関数の場合は、スコア変換用の関数ハンドルを使用します。関数ハンドルは、行列 (元のスコア) を受け入れて同じサイズの行列 (変換したスコア) を返さなければなりません。

例: 'ScoreTransform','logit'

データ型: char | string | function_handle

代理決定分岐フラグ。'Surrogate''on''off''all' または正の整数値から構成されるコンマ区切りのペアとして指定します。

  • 'on' に設定すると、fitctree は各分岐ノードで最大 10 の代理分岐を検出します。

  • 'all' に設定すると、fitctree は各分岐ノードですべての代理分岐を検出します。'all' に設定すると、処理時間およびメモリ使用量が非常に増加する可能性があります。

  • 正の整数値に設定すると、fitctree は各分岐ノードで最大指定された数の代理分岐を検出します。

代理分岐を使用すると、欠損値をもつデータの予測精度が改善されます。また、予測子同士の関連性予測尺度も計算できます。詳細は、ノード分割規則を参照してください。

例: 'Surrogate','on'

データ型: single | double | char | string

観測値の重み。'Weights' とスカラー値のベクトルまたは Tbl 内の変数の名前から構成されるコンマ区切りのペアとして指定します。X または Tbl の各行に含まれている観測値には、Weights の対応する値で重みが付けられます。Weights のサイズは、X または Tbl の行数と同じでなければなりません。

入力データをテーブル Tbl として指定した場合、Weights は数値ベクトルが含まれている Tbl 内の変数の名前にすることができます。この場合、Weights には文字ベクトルまたは string スカラーを指定しなければなりません。たとえば、重みのベクトル WTbl.W として格納されている場合、'W' として指定します。それ以外の場合、モデルを学習させるときに、Tbl の列は W を含めてすべて予測子として扱われます。

fitctree は、合計がクラスの事前確率の値になるように各クラスの重みを正規化します。

データ型: single | double | char | string

交差検証

すべて折りたたむ

交差検証決定木を成長させるフラグ。'CrossVal''on' または 'off' で構成されるコンマ区切りのペアとして指定します。

'on' の場合は、fitctree が10 分割交差検証決定木を成長させます。'KFold''Holdout''Leaveout' または 'CVPartition' 名前と値のペアの引数のいずれかを使用してこの交差検証の設定をオーバーライドできます。交差検証木を作成する場合、これらの 4 つの引数のうち 1 つだけを使用できます。

または、crossval メソッドを使用して、後で tree に交差検証を実施します。

例: 'CrossVal','on'

交差検証決定木で使用する分割。'CVPartition' と、cvpartition を使用して作成されるオブジェクトで構成される、コンマ区切りのペアとして指定します。

'CVPartition' を使用する場合は、'KFold''Holdout' または 'Leaveout' 名前と値のペアの引数のいずれも使用できません。

ホールドアウト検定に使用されるデータの比率。'Holdout' と、[0,1] の範囲内のスカラー値から成るコンマ区切りのペアとして指定します。ホールドアウト検定は、データの指定部分をテストし、データの残りの部分を学習に使用します。

'Holdout' を使用する場合は、'CVPartition''KFold' または 'Leaveout' 名前と値のペアの引数のいずれも使用できません。

例: 'Holdout',0.1

データ型: single | double

交差検証分類器で使用する分割の数。'KFold' と 1 より大きい正の整数から構成されるコンマ区切りのペアとして指定します。たとえば、'KFold',k を指定した場合、以下が行われます。

  1. データを無作為に k 個のセットに分割する

  2. 各セットについて、そのセットを検定データとして予約し、他の k - 1 個のセットを使用してモデルに学習をさせる

  3. k 個のコンパクトな学習済みモデルを、交差検証済みモデルの Trained プロパティに含まれている k 行 1 列の cell ベクトルのセルに格納する。

交差検証済みモデルを作成するために使用できるオプションは、CVPartitionHoldoutKFoldLeaveout のいずれかのみです。

例: 'KFold',8

データ型: single | double

Leave-one-out 法の交差検証のフラグ。'Leaveout''on' または 'off' で構成されるコンマ区切りのペアとして指定します。Leave-one-out 法の交差検証を使用する場合は、'on' を指定します。

'Leaveout' を使用する場合は、'CVPartition''Holdout' または 'KFold' 名前と値のペアの引数のいずれも使用できません。

例: 'Leaveout','on'

ハイパーパラメーター

すべて折りたたむ

決定分岐 (分岐ノード) の最大数。'MaxNumSplits' と正の整数をコンマ区切りのペアとして指定します。fitctree では、分岐ノードの数が MaxNumSplits 以下になるように分割します。分割の動作についての詳細は、アルゴリズムを参照してください。

例: 'MaxNumSplits',5

データ型: single | double

葉ノードの観測値の最小数。'MinLeafSize' と正の整数値で構成されるコンマ区切りのペアとして指定します。各葉には少なくともツリー葉あたり MinLeafSize の観測値があります。MinParentSizeMinLeafSize の両方を指定した場合、fitctree では葉の数が多くなる方の設定を使用します。MinParentSize = max(MinParentSize,2*MinLeafSize)

例: 'MinLeafSize',3

データ型: single | double

分割ごとにランダムに選択する予測子の数。'NumVariablesToSample' と正の整数値で構成されるコンマ区切りのペアとして指定します。また、'all' を指定すると、使用可能なすべての予測子が使用されます。

多数の予測子が学習データに含まれている場合に予測子の重要度を分析するには、'NumVariablesToSample' として 'all' を指定します。このようにしないと、重要度が過小評価されて一部の予測子が選択されない可能性があります。

無作為な選択を再現するには、rng を使用して乱数発生器のシードを設定し、'Reproducible',true を指定しなければなりません。

例: 'NumVariablesToSample',3

データ型: char | string | single | double

分割条件。'SplitCriterion' と、'gdi' (ジニ多様性指数)、Twoing 規則の 'twoing'、最大逸脱度減少量 (クロス エントロピーともいう) の 'deviance' のいずれかで構成される、コンマ区切りのペアとして指定します。

詳細については、不純度とノード誤差を参照してください。

例: 'SplitCriterion','deviance'

ハイパーパラメーターの最適化

すべて折りたたむ

最適化するパラメーター。'OptimizeHyperparameters' と次のいずれかから構成されるコンマ区切りのペアとして指定します。

  • 'none' — 最適化を行いません。

  • 'auto'{'MinLeafSize'} を使用します。

  • 'all' — すべての使用可能パラメーターを最適化します。

  • 使用可能パラメーター名の string 配列または cell 配列

  • optimizableVariable オブジェクトのベクトル。通常は hyperparameters の出力です。

最適化では、パラメーターを変化させることにより、fitctree の交差検証損失 (誤差) を最小化しようとします。(各種の状況における) 交差検証損失の詳細については、分類損失を参照してください。交差検証のタイプおよびその他の最適化の側面を制御するには、名前と値のペア HyperparameterOptimizationOptions を使用します。

メモ

'OptimizeHyperparameters' の値は、他の名前と値のペアの引数を使用して設定した値より優先されます。たとえば、'OptimizeHyperparameters''auto' に設定すると、'auto' の値が適用されます。

fitctree では、以下のパラメーターを使用できます。

  • MaxNumSplitsfitctree は、既定では範囲 [1,max(2,NumObservations-1)] の対数スケールで、整数を探索します。

  • MinLeafSizefitctree は、既定では範囲 [1,max(2,floor(NumObservations/2))] の対数スケールで、整数を探索します。

  • SplitCriterion — 2 クラスの場合、fitctree'gdi''deviance' で探索します。3 クラス以上の場合、fitctree'twoing' でも探索します。

  • NumVariablesToSamplefitctree は、このハイパーパラメーターについて最適化を行いません。NumVariablesToSample をパラメーター名として渡しても、fitctree はすべての予測子を使用するだけです。ただし、fitcensemble はこのハイパーパラメーターについて最適化を行います。

既定以外のパラメーターを設定するには、既定以外の値が含まれている optimizableVariable オブジェクトのベクトルを渡します。たとえば、以下のようにします。

load fisheriris
params = hyperparameters('fitctree',meas,species);
params(1).Range = [1,30];

OptimizeHyperparameters の値として params を渡します。

既定では、コマンド ラインに反復表示が表示され、最適化のハイパーパラメーターの個数に従ってプロットが表示されます。最適化とプロットにおける目的関数は、回帰の場合は log(1 + 交差検証損失)、分類の場合は誤分類率です。反復表示を制御するには、名前と値のペアの引数 'HyperparameterOptimizationOptions'Verbose フィールドを設定します。プロットを制御するには、名前と値のペアの引数 'HyperparameterOptimizationOptions'ShowPlots フィールドを設定します。

たとえば、分類木の最適化を参照してください。

例: 'auto'

最適化のオプション。'HyperparameterOptimizationOptions' と構造体から構成されるコンマ区切りのペアとして指定します。この引数を指定すると、名前と値のペアの引数 OptimizeHyperparameters の効果が変化します。この構造体のフィールドは、すべてオプションです。

フィールド名既定の設定
Optimizer
  • 'bayesopt' — ベイズ最適化を使用。内部的には bayesopt が呼び出されます。

  • 'gridsearch' — 次元ごとに NumGridDivisions の値があるグリッド探索を使用。

  • 'randomsearch'MaxObjectiveEvaluations 個の点で無作為に探索。

'gridsearch' では、グリッドからの一様な非復元抽出により、無作為な順序で探索します。最適化後、sortrows(Mdl.HyperparameterOptimizationResults) コマンドを使用してグリッド順のテーブルを取得できます。

'bayesopt'
AcquisitionFunctionName

  • 'expected-improvement-per-second-plus'

  • 'expected-improvement'

  • 'expected-improvement-plus'

  • 'expected-improvement-per-second'

  • 'lower-confidence-bound'

  • 'probability-of-improvement'

オブジェクト関数のランタイムによって最適化が異なるので、名前に per-second が含まれている獲得関数は、再現性がある結果を生成しません。名前に plus が含まれている獲得関数は、領域を過剰利用している場合に動作を変更します。詳細は、獲得関数のタイプを参照してください。

'expected-improvement-per-second-plus'
MaxObjectiveEvaluations目的関数評価の最大数。'bayesopt' または 'randomsearch' の場合は 30'gridsearch' の場合はグリッド全体
MaxTime

制限時間。正の実数を指定します。制限時間の単位は、tictoc によって測定される秒です。MaxTime は関数評価を中断させないため、実行時間が MaxTime を超える可能性があります。

Inf
NumGridDivisions'gridsearch' における各次元の値の個数。値は、各次元の値の個数を表す正の整数のベクトル、またはすべての次元に適用されるスカラーが可能です。カテゴリカル変数の場合、このフィールドは無視されます。10
ShowPlotsプロットを表示するかどうかを示す論理値。true の場合、最良の目的関数の値が反復回数に対してプロットされます。1 つまたは 2 つの最適化パラメーターがあり、Optimizer'bayesopt' である場合、ShowPlots はパラメーターに対する目的関数のモデルのプロットも行います。true
SaveIntermediateResultsOptimizer'bayesopt' である場合に結果を保存するかどうかを示す論理値。true の場合、'BayesoptResults' という名前のワークスペース変数が反復ごとに上書きされます。この変数は BayesianOptimization オブジェクトです。false
Verbose

コマンド ラインへの表示。

  • 0 — 反復表示なし

  • 1 — 反復表示あり

  • 2 — 追加情報付きで反復表示あり

詳細については、bayesopt の名前と値のペアの引数 Verbose を参照してください。

1
UseParallelベイズ最適化を並列実行するかどうかを示す論理値。並列実行には Parallel Computing Toolbox™ が必要です。詳細については、並列ベイズ最適化を参照してください。false
Repartition

反復ごとに交差検証を再分割するかどうかを示す論理値。false の場合、オプティマイザーは単一の分割を最適化に使用します。

分割ノイズが考慮されるので、通常は true にすると最も確実な結果が得られます。ただし、true で良好な結果を得るには、2 倍以上の関数評価が必要になります。

false
以下の 3 つのフィールド名は 1 つだけ使用できます。
CVPartitioncvpartition によって作成される cvpartition オブジェクト。交差検証フィールドが指定されていない場合 'Kfold',5
Holdoutホールドアウトの比率を表す範囲 (0,1) のスカラー。
Kfold1 より大きい整数。

例: 'HyperparameterOptimizationOptions',struct('MaxObjectiveEvaluations',60)

データ型: 構造体

出力引数

すべて折りたたむ

分類木。分類木オブジェクトとして返します。

'CrossVal''KFold''Holdout''Leaveout' または 'CVPartition' オプションを使用すると、クラス ClassificationPartitionedModel の木が生成されます。予測に分割されたツリーは使用できないため、この種類のツリーには predict メソッドがありません。代わりに、kfoldPredict を使用して、学習に使用しない観測値の応答を予測します。

それ以外の場合、tree のクラスは ClassificationTree で、predict メソッドを使用して予測を行うことができます。

詳細

すべて折りたたむ

曲率検定

"曲率検定" は、2 つの変数に関連性がないという帰無仮説を評価する統計検定です。

予測子変数 x および y の間の曲率検定は、以下のプロセスを使用して実施されます。

  1. x が連続である場合、四分位数に分割します。分割のどの部分に属するかに従って観測値をビン化するノミナル変数を作成します。欠損値がある場合は、そのための追加のビンを作成します。

  2. 分割した予測子の各レベル j = 1,...,J と応答のクラス k = 1,...,K について、クラス k における観測値の加重比率を計算します。

    π^jk=i=1nI{yi=k}wi.

    wi は観測値 i の重みで wi=1 です。I はインジケーター関数、n は標本サイズです。すべての観測値の重みが同じである場合、π^jk=njkn になります。njk は、クラス k に属している予測子のレベル j の予測子のレベル <varname>j</varname> の観測値の個数です。

  3. 検定統計量を計算します。

    t=nk=1Kj=1J(π^jkπ^j+π^+k)2π^j+π^+k

    π^j+=kπ^jk は、レベル j で予測子が観測される周辺確率です。π^+k=jπ^jk は、クラス k が観測される周辺確率です。n が十分に大きい場合、t は自由度が (K - 1)(J - 1) の χ2 分布になります。

  4. この検定の p 値が 0.05 未満である場合、x と y には関連性がないという帰無仮説が棄却されます。

標準 CART アルゴリズムには、各ノードにおける最適な分割予測子を決定するときに、レベル数の多い連続予測子を選択する傾向があります。このような選択は見せかけだけの場合があり、カテゴリカル予測子などのような、より少ないレベルのより重要な予測子を隠してしまう可能性があります。

標準 CART の代わりに曲率検定を適用して、各ノードにおける最適な分割予測子を決定することができます。この場合、最適な分割予測子変数は、各予測子と応答変数の間における曲率検定の有意な p 値 (0.05 未満) が最小になる変数です。このような選択は、各予測子のレベル数に対してロバストです。

メモ

予測子のレベルが特定のクラスについて純粋である場合、fitctree はこれらのレベルをマージします。このため、アルゴリズムの手順 3 で、J が実際の予測子のレベル数より小さくなる可能性があります。たとえば、x に 4 つのレベルがあり、ビン 1 および 2 の観測値がすべてクラス 1 に属している場合、これらのレベルはクラス 1 について純粋です。この結果、fitctree はビン 1 および 2 の観測値をマージするので、J は 3 になります。

曲率検定を分類木の成長に適用する方法の詳細については、ノード分割規則[4]を参照してください。

不純度とノード誤差

ClassificationTree は、"不純度" または "ノード誤差" に基づいてノードを分割します。

不純度とは、SplitCriterion 名前と値のペアの引数によって、次のいずれかの意味を表します。

  • ジニ多様性指数 (gdi) — ノードのジニ指数は、次の式で表されます。

    1ip2(i),

    ここで、合計はノードのクラス i 全体が対象であり、p(i) は、ノードに到達したクラス i をもつ観測クラスの比率です。クラスを 1 つだけもつノード ("純粋" ノード) のジニ指数は 0 です。それ以外のノードでは、ジニ指数は正の値です。したがって、ジニ指数はノードの不純度の基準です。

  • 逸脱度 ('deviance') — ノードの逸脱度は、ジニ指数と同様に定義された p(i) を用いて次の式で表されます。

    ip(i)log2p(i).

    純粋ノードの逸脱度は 0 です。それ以外のノードでは、逸脱度は正の値です。

  • Twoing 規則 ('twoing') — Twoing はノードの純粋度の基準ではありませんが、ノードの分割を判断するための別の基準の 1 つです。L(i) は、分割後の左側の子ノードのクラス i のメンバーの比率を示し、R(i) は分割後の右側の子ノードのクラス i のメンバーの比率を示すとします。最大化するための分割基準を選択します。

    P(L)P(R)(i|L(i)R(i)|)2,

    ここで、P(L) および P(R) は、それぞれ左側と右側に分割された観測値の比率を表します。式が大きい場合は、分割によって各子ノードの純粋度は高くなります。同様に、式が小さい場合は、分割によって各子ノードが互いに類似するようになります。このため、親ノードとも類似するようになります。分割によるノードの純粋度の向上はありませんでした。

  • ノード誤差 — ノード誤差はノードで誤分類されたクラスの比率です。j がノードで最大の学習標本数をもつクラスである場合は、ノード誤差は次のように表されます。

    1 – p(j).

交互作用検定

"交互作用検定" は、予測子変数のペアと応答変数の間に交互作用がないという帰無仮説を評価する統計検定です。

y に関して予測子変数 x1 および x2 の関連性を評価する交互作用検定は、以下のプロセスを使用して実施されます。

  1. x1 または x2 が連続である場合、その変数を四分位数に分割します。分割のどの部分に属するかに従って観測値をビン化するノミナル変数を作成します。欠損値がある場合は、そのための追加のビンを作成します。

  2. x1 および x2 のどのレベルに属しているかに従ってインデックスを観測値 i に割り当てる、J = J1J2 個のレベルがあるノミナル変数 z を作成します。どの観測値にも対応しないレベルを z から削除します。

  3. z と y の間で曲率検定を実施します。

決定木を成長させるときに、予測子のペア間に重要な交互作用があり、重要度が低い他の予測子がデータ内に多数あると、標準 CART は重要な交互作用を見逃す傾向があります。しかし、代わりに曲率検定と交互作用検定を実施して予測子を選択すると、重要な交互作用の検出が改善され、より正確な決定木が生成される可能性があります。

交互作用検定を決定木の成長に適用する方法の詳細については、曲率検定ノード分割規則および[3]を参照してください。

関連性予測尺度

"関連性予測尺度" は、観測値を分割する決定規則間の類似度を示す値です。(木を成長させることによって求められる) 最適な分割に対して比較される、可能なすべての決定分岐の中で、最適な代理決定分岐は関連性予測尺度が最大になります。2 番目に最適な代理分岐は、関連性予測尺度が 2 番目に大きくなります。

xj と xk がそれぞれ予測子変数 j および k であり、j ≠ k であるとします。ノード t における最適な分割 xj < u と代理分岐 xk < v の間の関連性予測尺度は、次のようになります。

λjk=min(PL,PR)(1PLjLkPRjRk)min(PL,PR).

  • PL は、ノード t において xj < u となる観測値の比率です。添字 L は、ノード t の左の子を表します。

  • PR は、ノード t において xj ≥ u となる観測値の比率です。添字 R は、ノード t の右の子を表します。

  • PLjLk は、ノード t において xj < u および xk < v となる観測値の比率です。

  • PRjRk は、ノード t において xj ≥ u および xk ≥ v となる観測値の比率です。

  • xj または xk について欠損値がある観測値は、比率の計算に使用されません。

λjk は、(-∞,1] の値になります。λjk > 0 である場合、xk < v は xj < u の代理分岐として価値があります。

代理決定分岐

"代理決定分岐" は、決定木の特定のノードにおける最適な決定分岐の代わりになります。最適な分割は、木を成長させることによって求められます。代理分岐では、類似する予測子変数または相関関係がある予測子変数と分割基準を使用します。

ある観測値について最適な分割予測子の値が欠損している場合、その観測値は最適な代理予測子を使用して左または右の子ノードに送られます。観測値について最適な代理予測子の値も欠損している場合、その観測値は 2 番目に最適な代理予測子を使用して左または右の子ノードに送られます。3 番目以降についても同様です。分割候補は、関連性予測尺度の降順で並べ替えられます。

ヒント

  • 既定では Prune'on' です。ただし、この仕様は分類木を枝刈りしません。学習させた分類木を枝刈りするには、分類木を prune に渡します。

  • モデルに学習をさせた後で、新しいデータについてラベルを予測する C/C++ コードを生成できます。C/C++ コードの生成には MATLAB Coder™ が必要です。詳細については、コード生成の紹介を参照してください。

アルゴリズム

すべて折りたたむ

ノード分割規則

fitctree は、以下のプロセスを使用してノード t の分割方法を決定します。

  • 標準 CART の場合 (つまり、PredictorSelection'allpairs' である場合)、すべての予測子 xi (i = 1,...,p) について以下を行います。

    1. fitctree は、ノード t の重み付き不純度 it を計算します。サポートされる不純度の尺度については、SplitCriterion を参照してください。

    2. fitctree は、次の式を使用して、観測値がノード t に含まれる確率を推定します。

      P(T)=jTwj.

      wj は観測値 j の重み、T はノード t に含まれているすべての観測値のインデックスの集合です。PriorWeights のいずれも指定しなかった場合、wj = 1/n になります。ここで、n は標本サイズです。

    3. fitctree は、xi を昇順で並べ替えます。並べ替えられた予測子の各要素は、分割候補または切り取り点です。fitctree は、欠損値に対応するインデックスを、分割されない集合 TU に格納します。

    4. fitctree は、すべての分割候補で不純度ゲイン (ΔI) を最大化することにより、xi を使用してノード t を分割する最適な方法を決定します。つまり、xi に含まれているすべての分割候補について、

      1. fitctree は、ノード t に含まれている観測値を左と右の子ノード (それぞれ tL および tR) に分割します。

      2. fitctree は ΔI を計算します。特定の分割候補について、集合 TL および TR 内の観測値のインデックスがそれぞれ tL および tR に含まれていると仮定します。

        • xi に欠損値が含まれていない場合、現在の分割候補の不純度ゲインは次のようになります。

          ΔI=P(T)itP(TL)itLP(TR)itR.

        • xi に欠損値が含まれている場合、観測値はランダムに欠損していると仮定され、不純度ゲインは次のようになります。

          ΔIU=P(TTU)itP(TL)itLP(TR)itR.

          T - TU は、ノード t に含まれている、欠損していないすべての観測値のインデックスの集合です。

        • 代理決定分岐を使用する場合、次のようになります。

          1. fitctree は、決定分岐 xj < u と可能なすべての決定分岐 xk < v (j ≠ k) の間で関連性予測尺度 を計算します。

          2. fitctree は、最適な分割となる関連性予測尺度の降順に、可能な代替決定分岐を並べ替えます。代理分岐は、尺度が最大になる決定分岐です。

          3. fitctree は、xi について代理分岐を使用して、欠損値が含まれている観測値を子ノードに割り当てます。代理予測子にも欠損値が含まれている場合、fitctree は他の代理がなくなるまで、尺度が 2 番目に大きいものから順番に決定分岐を使用します。fitctree は、ノード t で 2 つの異なる代理分岐を使用して 2 つの異なる観測値を分割することができます。たとえば、ノード t で予測子 xi (i ∉ {1,2}) について、予測子 x1 および x2 がそれぞれ最適および 2 番目に最適な代理であるとします。予測子 xi の観測値 m が欠損しており (つまり、xmi が欠損)、xm1 は欠損していない場合、x1 は観測値 xmi の代理予測子になります。観測値 x(m + 1),i と x(m + 1),1 が欠損しており、x(m + 1),2 は欠損していない場合、x2 は観測値 m + 1 の代理予測子になります。

          4. fitctree は、適切な不純度ゲインの式を使用します。つまり、fitctree が代理分岐を使用して、ノード t に含まれているすべての欠損観測値を子ノードに割り当てることができない場合、不純度ゲインは ΔIU になります。それ以外の場合、fitctree は不純度ゲインに ΔI を使用します。

      3. fitctree は、不純度ゲインが最大になる候補を選択します。

    fitctree は、不純度ゲインが最大になる切り取り点で予測子変数を分割します。

  • 曲率検定の場合 (つまり、PredictorSelection'curvature' である場合)

    1. fitctree は、ノード t の観測値について各予測子と応答の間で曲率検定を実施します。

      • すべての p 値が 0.05 以上である場合、fitctree はノード t を分割しません。

      • 最小の p 値が存在する場合、fitctree は対応する予測子を選択してノード t を分割します。

      • アンダーフローにより複数の p 値がゼロになる場合、fitctree は対応する予測子に標準 CART を適用して分割予測子を選択します。

    2. fitctree は、分割予測子を選択した場合に、標準 CART を使用して切り取り点を選択します (標準 CART のプロセスの手順 4 を参照)。

  • 交互作用検定の場合 (つまり、PredictorSelection'interaction-curvature' である場合)

    1. fitctree は、ノード t の観測値について、各予測子と応答の間で曲率検定を、予測子の各ペアと応答の間で交互作用検定を実施します。

      • すべての p 値が 0.05 以上である場合、fitctree はノード t を分割しません。

      • 曲率検定の結果により最小の p 値が存在する場合、fitctree は対応する予測子を選択してノード t を分割します。

      • 交互作用検定の結果により最小の p 値が存在する場合、fitctree は対応する予測子のペアに対して標準 CART を使用して分割予測子を選択します。

      • アンダーフローにより複数の p 値がゼロになる場合、fitctree は対応する予測子に標準 CART を適用して分割予測子を選択します。

    2. fitctree は、分割予測子を選択した場合に、標準 CART を使用して切り取り点を選択します (標準 CART のプロセスの手順 4 を参照)。

木の深さの制御

  • MergeLeaves'on' および PruneCriterion'error' (これらの名前と値のペアの引数の既定値) の場合、枝刈りは分類誤差を使用して葉のみに適用されます。この仕様はツリー葉あたり最も一般的なクラスを共有する葉のマージになります。

  • MaxNumSplits に対応するため、fitctree は現在の "レイヤー" に含まれているすべてのノードを分割してから分岐ノードの数をカウントします。レイヤーとは、ルート ノードから同じ距離にあるノードの集合です。分岐ノードの数が MaxNumSplits を超えた場合、fitctree は以下の手順に従います。

    1. 現在のレイヤーに含まれている分岐ノードが、最大でも MaxNumSplits になるように、分割を解除する数を判断する。

    2. 不純度順に分岐ノードを並べ替える。

    3. 適切ではない分岐の分割を解除する。

    4. それまでに成長させた決定木を返す。

    この手順に従うと、バランスが最大の木が生成されます。

  • 次の条件のいずれかが満たされるまで、分岐ノードをレイヤー単位で分割します。

    • MaxNumSplits 個の分岐ノードが存在している。

    • 推奨されている分割を行うと、少なくとも 1 つの分岐ノードで観測値の数が MinParentSize より少なくなる。

    • 推奨される分割を行うと、少なくとも 1 つの葉ノードで観測値の数が MinLeafSize より少なくなる。

    • レイヤー内で適切な分割を検出できない。つまり、現在の枝刈り基準 (PruneCriterion 参照) では、レイヤー内で推奨されている分割を行っても状況が改善されない。すべてのノードが純粋 (ノード内のすべての観測値が同じクラス) になるのは特殊なケースです。

    • PredictorSelection の値が 'curvature' または 'interaction-curvature' の場合に、すべての検定で p 値が 0.05 を超える。

    MaxNumSplitsMinLeafSize は、既定値で行われる分割に影響を与えません。'MaxNumSplits' を設定した場合、MaxNumSplits 回の分割が発生する前に、MinParentSize の値が原因となって分割が停止することもあります。

並列化

デュアルコア以上のシステムの場合、fitctree では Intel® スレッディング ビルディング ブロック (TBB) を使用して決定木の学習を並列化します。Intel TBB についての詳細は、https://software.intel.com/en-us/intel-tbb を参照してください。

参照

[1] Breiman, L., J. Friedman, R. Olshen, and C. Stone. Classification and Regression Trees. Boca Raton, FL: CRC Press, 1984.

[2] Coppersmith, D., S. J. Hong, and J. R. M. Hosking. “Partitioning Nominal Attributes in Decision Trees.” Data Mining and Knowledge Discovery, Vol. 3, 1999, pp. 197–217.

[3] Loh, W.Y. “Regression Trees with Unbiased Variable Selection and Interaction Detection.” Statistica Sinica, Vol. 12, 2002, pp. 361–386.

[4] Loh, W.Y. and Y.S. Shih. “Split Selection Methods for Classification Trees.” Statistica Sinica, Vol. 7, 1997, pp. 815–840.

拡張機能

R2014a で導入