Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

resume

学習アンサンブルの再開

構文

ens1 = resume(ens,nlearn)
ens1 = resume(ens,nlearn,Name,Value)

説明

ens1 = resume(ens,nlearn) は、ens の学習をさらに nlearn サイクル行います。resume は、fitrensembleens の作成に使用した同じ学習オプションを使用します (並列学習オプションを除く)。並列学習を再開する場合は、名前と値のペア 'Options' を渡します。

ens1 = resume(ens,nlearn,Name,Value) では、1 つ以上の Name,Value の引数ペアで指定された追加オプションを使用して、ens の学習を行います。

入力引数

ens

fitrensemble で作成されたアンサンブル回帰。

nlearn

ens の追加学習でのサイクル数を示す、正の整数。

名前と値のペアの引数

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

NPrint

出力頻度、正の整数のスカラーまたは 'off' (出力しない)。NPrint が正の整数である場合、NPrint 個の弱学習器の学習後に、コマンド ラインにメッセージが表示されます。

ヒント

一部のブースティングされた決定木の学習を最速にするには、NPrint を既定値の 'off' に設定します。このヒントは、分類の Method'AdaBoostM1''AdaBoostM2''GentleBoost'、または 'LogitBoost' であるか、回帰の Method'LSBoost' である場合に有効です。

既定値: 'off'

Options

並列計算と乱数設定のオプション。構造体として指定します。statset を使用して Options 構造体を作成します。

メモ

並列計算を行うには、Parallel Computing Toolbox™ が必要です。

resume では元の学習に使用したものと同じ並列オプションを使用できます。ただし、必要に応じて並列オプションを変更できます。次の表は、オプションのフィールドとその値の一覧です。

フィールド名既定の設定
UseParallel

並列計算する場合は、この値を true に設定します。並列アンサンブル学習では、名前と値の引数 'Method''Bag' に設定する必要があります。並列学習は 'Bag' の既定のタイプである木学習器にのみ使用できます。

false
UseSubstreams

再生可能な方法で並列計算する場合は、この値を true に設定します。

再現性のある計算を行うには、Streams をサブストリームを許可する型 ('mlfg6331_64' または 'mrg32k3a') に設定します。

false
StreamsRandStream オブジェクトまたはそのようなオブジェクトの cell 配列としてこの値を指定します。UseParallel の値が true でなく、UseSubstreams の値も false でない場合、単一オブジェクトを使用します。この場合は、並列プールと同じサイズの cell 配列を使用します。Streams を指定しなかった場合、resume は既定のストリームを使用します。

デュアルコア以上のシステムの場合、resume では Intel® スレッディング ビルディング ブロック (TBB) を使用して学習を並列化します。したがって、UseParallel オプションを true と指定しても、単一のコンピューターではそれほど大きな高速化の効果は得られないことがあります。Intel TBB についての詳細は、https://software.intel.com/en-us/intel-tbb を参照してください。

例: 'Options',statset('UseParallel',true)

出力引数

ens1

追加学習で拡張された、アンサンブル回帰 ens

すべて展開する

アンサンブル回帰に 50 サイクル学習をさせ、アンサンブルにさらに数サイクル学習をさせた後で再代入誤差を比較します。

carsmall データセットを読み込み、排気量、馬力および車両重量を予測子として選択します。

load carsmall
X = [Displacement Horsepower Weight];

アンサンブル回帰に 50 サイクル学習をさせ、再代入誤差を調べます。

ens = fitrensemble(X,MPG,'NumLearningCycles',50);
L = resubLoss(ens)
L = 0.5563

さらに 50 サイクル学習をさせ、新しい再代入誤差を調べます。

ens = resume(ens,50);
L = resubLoss(ens)
L = 0.3463

新しいアンサンブルでは、元のアンサンブルより再代入誤差が小さくなっています。

拡張機能