Main Content

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

resume

アンサンブル回帰モデルの学習の再開

説明

ens1 = resume(ens,nlearn) は、ens の学習に使用したものと同じオプション (並列学習オプションと出力頻度は除く) を使用して、学習をさらに nlearn サイクル続行します。この関数は、新しいアンサンブル回帰モデル ens1 を返します。

ens1 = resume(ens,nlearn,Name=Value) では、1 つ以上の名前と値の引数を使用して追加オプションを指定します。たとえば、出力頻度を指定したり、並列計算のオプションを設定したりできます。

すべて折りたたむ

アンサンブル回帰に 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

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

入力引数

すべて折りたたむ

アンサンブル回帰モデル。fitrensemble で学習させた RegressionEnsemble モデル オブジェクトとして指定します。

ens の追加学習サイクル数。正の整数として指定します。

データ型: double | single

名前と値の引数

オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで Name は引数名、Value は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。

例: resume(ens,10,NPrint=5,Options=statset(UseParallel=true)) は、ens の学習を追加で 10 サイクル行い、resume で 5 個の弱学習器の学習が完了するたびにコマンド ラインにメッセージを表示し、計算を並列に実行するように指定します。

出力頻度。正の整数 m または "off" として指定します。resume は、m 個の弱学習器の学習が完了するたびにコマンド ラインにメッセージを表示します。"off" を指定した場合、resume で弱学習器の学習が完了してもメッセージは表示されません。

例: NPrint=5

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

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

メモ

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

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

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

並列計算する場合は、この値を true に設定します。並列アンサンブル学習では、名前と値の引数 Method"Bag" に設定する必要があります。並列学習は Method="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://www.intel.com/content/www/us/en/developer/tools/oneapi/onetbb.htmlを参照してください。

例: Options=statset(UseParallel=true)

データ型: struct

拡張機能

バージョン履歴

R2011a で導入