резюме

Класс: RegressionSVM

Возобновите учебную поддержку векторная модель регрессии машины

Синтаксис

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

Описание

updatedMdl = resume(mdl,numIter) возвращает обновленную модель регрессии машины вектора поддержки (SVM), updatedMdl, по образованию модель для дополнительного количества итераций, как задано numIter.

resume применяет те же опции обучения к updatedMdl, который вы устанавливаете при использовании fitrsvm, чтобы обучить mdl.

updatedMdl = resume(mdl,numIter,Name,Value) возвращает обновленную модель регрессии SVM с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value.

Входные параметры

развернуть все

Полная, обученная модель регрессии SVM, заданная как модель RegressionSVM, обученная с помощью fitrsvm.

Количество итераций, чтобы продолжить обучение модель регрессии SVM, заданная как положительное целочисленное значение.

Типы данных: single | double

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Уровень многословия, заданный как пара, разделенная запятой, состоящая из 'Verbose' и или 0, 1 или 2. Verbose управляет суммой информации об оптимизации, что отображения программного обеспечения к Командному окну и сохранены в модели как mdl.ModelParameters.VerbosityLevel.

По умолчанию Verbose является значением, что fitrsvm раньше обучал mdl.

Пример: 'Verbose',1

Типы данных: single | double

Количество итераций между диагностическими распечатками сообщения, заданными как пара, разделенная запятой, состоящая из 'NumPrint' и неотрицательного целого числа.

Если вы устанавливаете 'Verbose',1 и 'NumPrint',numprint, то сообщения диагностики оптимизации отображений программного обеспечения к Командному окну каждое количество numprint итераций.

По умолчанию NumPrint является значением, что fitrsvm раньше обучал mdl.

Пример: 'NumPrint',500

Типы данных: single | double

Выходные аргументы

развернуть все

Обновленная модель регрессии SVM, возвращенная как модель RegressionSVM.

Примеры

развернуть все

Этот пример показывает, как возобновить обучение модель регрессии SVM, которой не удалось сходиться, не перезапуская целый процесс обучения.

Загрузите набор данных carsmall.

load carsmall
rng default  % for reproducibility

Задайте Acceleration, Cylinders, Displacement, Horsepower и Weight как переменные прогноза (X) и MPG как переменная отклика (Y).

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