resume

Возобновить обучение ансамбля

Синтаксис

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

Описание

ens1 = resume(ens,nlearn) обучает ens в каждую складку для nlearn больше циклов. resume использует те же опции обучения fitrensemble используется для создания ens, за исключением параллельных опций обучения. Если вы хотите возобновить обучение параллельно, передайте 'Options' Пара "имя-значение".

ens1 = resume(ens,nlearn,Name,Value) обучает ens с дополнительными опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

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

ens

Перекрестно проверенный регрессионный ансамбль. ens является результатом либо:

  • fitrensemble функция с парой "имя-значение" перекрестной проверки. Имена следующие 'crossval', 'kfold', 'holdout', 'leaveout', или 'cvpartition'.

  • The crossval способ применяется в регрессионном ансамбле.

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'

Опции для параллельных вычислений и установки случайных чисел, заданные как структура. Создайте Options структура с statset.

Примечание

Вам нужно Parallel Computing Toolbox™, чтобы вычислить параллельно.

Можно использовать те же параллельные опции для resume как вы использовали для оригинального обучения. Однако при необходимости можно изменить параллельные опции. В этой таблице перечислены поля опций и их значения.

Имя поляЗначениеДефолт
UseParallel

Установите это значение равным true для параллельного вычисления. Параллельные тренировки ансамбля требуют, чтобы вы установили 'Method' аргумент имя-значение в 'Bag'. Параллельное обучение доступно только для учащихся-древовидников, тип по умолчанию для 'Bag'.

false
UseSubstreams

Установите это значение равным true проводить расчеты параллельно воспроизводимым способом.

Чтобы вычислить воспроизводимо, установите Streams к типу, который позволяет субпотоки: 'mlfg6331_64' или 'mrg32k3a'.

false
StreamsЗадайте это значение как RandStream объект или массив ячеек таких объектов. Используйте один объект, кроме тех случаев, когда UseParallel значение true и UseSubstreams значение false. В этом случае используйте массив ячеек, размер которого совпадает с размером параллельного пула.Если вы не задаете Streams, затем resume использует поток по умолчанию или потоки.

Для двухъядерных систем и выше, resume параллелизирует обучение с помощью Intel® Многопоточные базовые блоки (TBB). Поэтому установка UseParallel опция как true может не обеспечить значительную скорость на одном компьютере. Для получения дополнительной информации о Intel TBB смотрите https://software.intel.com/en-us/intel-tbb.

Пример: 'Options',statset('UseParallel',true)

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

ens1

Перекрестно проверенный регрессионный ансамбль ens, дополненный дополнительным обучением.

Примеры

расширить все

Исследуйте ошибку перекрестной валидации после обучения регрессионого ансамбля для большего количества циклов.

Загрузите carsmall набор данных и выбор объема, лошадиной силы и веса транспортного средства в качестве предикторов.

load carsmall
X = [Displacement Horsepower Weight];

Обучите регрессионный ансамбль на 50 циклов.

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

Перекрестная проверка ансамбля и проверка ошибки перекрестной проверки.

rng(10,'twister') % For reproducibility
cvens = crossval(ens);
L = kfoldLoss(cvens)
L = 27.9435

Обучите еще 50 циклам и исследуйте новую ошибку перекрестной валидации.

cvens = resume(cvens,50);
L = kfoldLoss(cvens)
L = 28.7114

Дополнительное обучение не улучшило ошибку перекрестной проверки.

Расширенные возможности