Main Content

resume

クラス: RegressionSVM

サポート ベクター マシン回帰モデルの学習の再開

構文

updatedMdl = resume(mdl,numIter)
updatedMdl = resume(mdl,numIter,Name,Value)

説明

updatedMdl = resume(mdl,numIter) は、numIter で指定された追加反復回数で学習させることにより更新したサポート ベクター マシン (SVM) 回帰モデル updatedMdl を返します。

resume は、fitrsvm を使用して mdl を学習させるときに設定されたものと同じ学習オプションを updatedMdl に適用します。

updatedMdl = resume(mdl,numIter,Name,Value) は、1 つ以上の Name,Value ペア引数で指定された追加オプションを使用して、更新された SVM 回帰モデルを返します。

入力引数

すべて展開する

完全な学習済み SVM 回帰モデル。fitrsvm を使用して学習させた RegressionSVM モデルとして指定します。

SVM 回帰モデルの学習を続行するための反復回数。正の整数値として指定します。

データ型: single | double

名前と値の引数

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

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

詳細レベル。'Verbose'01 または 2 から構成されるコンマ区切りのペアとして指定します。Verbose は、コマンド ウィンドウに表示される最適化情報の量を制御し、mdl.ModelParameters.VerbosityLevel としてモデルに保存されます。

既定では、Verbosefitrsvmmdl を学習させるために使用する値です。

例: 'Verbose',1

データ型: single | double

診断メッセージ出力の反復回数。'NumPrint' と非負の整数で構成されるコンマ区切りのペアとして指定します。

'Verbose',1'NumPrint',numprint を設定した場合、numprint 回の反復ごとに最適化診断メッセージがコマンド ウィンドウに表示されます。

既定では、NumPrintfitrsvmmdl を学習させるために使用する値です。

例: 'NumPrint',500

データ型: single | double

出力引数

すべて展開する

更新した SVM 回帰モデル。RegressionSVM モデルとして返されます。

すべて展開する

この例では、学習プロセス全体をやり直さずに、収束に失敗した SVM 回帰モデルの学習を再開する方法を示します。

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

load carsmall
rng default  % for reproducibility

予測子変数 (X) として AccelerationCylindersDisplacementHorsepower および Weight を、応答変数 (Y) として MPG を指定します。

X = [Acceleration,Cylinders,Displacement,Horsepower,Weight];
Y = MPG;

線形 SVM 回帰モデルを学習させます。説明のため、反復制限を 50 回に設定します。データを標準化します。

mdl = fitrsvm(X,Y,'IterationLimit',50,'Standardize',true);

モデルが収束したかどうかを確認します。

mdl.ConvergenceInfo.Converged
ans =

     0

0 という戻り値は、モデルが収束しなかったことを示します。

最大 100 回の追加反復でモデルの学習を再開します。

updatedMdl = resume(mdl,100);

更新したモデルが収束したかどうかを確認します。

updatedMdl.ConvergenceInfo.Converged
ans =

     1

1 という戻り値は、モデルが収束したことを示します。

収束した理由と必要だった総反復回数を確認します。

updatedMdl.ConvergenceInfo.ReasonForConvergence
updatedMdl.NumIterations
ans =

FeasibilityGap


ans =

    97

モデルが収束したのは、97 回の反復後に実行可能性ギャップが許容誤差値に達したためです。

ヒント

'Solver''SMO' または 'ISDA' に設定されているときに最適化が収束しなかった場合は、SVM 回帰モデルの学習の再開を試してください。

バージョン履歴

R2015b で導入