Задайте опции обучения в Reinforcement Learning Designer

Чтобы сконфигурировать обучение агента в приложении Reinforcement Learning Designer, задайте опции обучения на вкладке Train.

Specify training options on the Train tab.

Задайте основные опции

На вкладке Train можно задать следующие опции начальной подготовки.

ОпцияОписание
Max EpisodesМаксимальное количество эпизодов, чтобы обучить агента в виде положительного целого числа.
Max Episode LengthМаксимальное количество шагов, чтобы запуститься на эпизод в виде положительного целого числа.
Stopping Criteria

Учебное условие завершения в виде одного из следующих значений.

  • AverageSteps — Остановите обучение, когда рабочее среднее количество шагов на эпизод будет равняться или будет превышать критическое значение, заданное Stopping Value.

  • AverageReward — Остановите обучение, когда рабочее среднее вознаграждение будет равняться или будет превышать критическое значение.

  • EpisodeReward — Остановите обучение, когда вознаграждение в текущем эпизоде будет равняться или будет превышать критическое значение.

  • GlobalStepCount — Остановите обучение, когда общее количество шагов во всех эпизодах (общее количество времен агент вызывается) равняется или превышает критическое значение.

  • EpisodeCount — Остановите обучение, когда количество эпизодов тренировки будет равняться или будет превышать критическое значение.

Stopping ValueКритическое значение учебного условия завершения в Stopping Criteria в виде скаляра.
Average Window LengthДлина окна для усреднения баллов, вознаграждений и количества шагов для агента, когда или Stopping Criteria или Save agent criteria задают условие усреднения.

Задайте дополнительные опции

Чтобы задать дополнительные опции обучения, на вкладке Train, нажимают More Options.

В диалоговом окне More Training Options можно задать следующие опции.

ОпцияОписание
Save agent criteria

Условие для сохранения агентов во время обучения в виде одного из следующих значений.

  • none — Не сохраняйте агентов во время обучения.

  • AverageSteps — Сохраните агента, когда рабочее среднее количество шагов на эпизод будет равняться или будет превышать критическое значение, заданное Save agent value.

  • AverageReward — Сохраните агента, когда рабочее среднее вознаграждение будет равняться или будет превышать критическое значение.

  • EpisodeReward — Сохраните агента, когда вознаграждение в текущем эпизоде будет равняться или будет превышать критическое значение.

  • GlobalStepCount — Сохраните агента, когда общее количество шагов во всех эпизодах (общее количество времен агент вызывается) равняется или превышает критическое значение.

  • EpisodeCount — Сохраните агента, когда количество эпизодов тренировки будет равняться или будет превышать критическое значение.

Save agent valueКритическое значение условия агента сохранения в Save agent criteria в виде скаляра или "none".
Save directory

Папка для сохраненных агентов. Если вы задаете имя, и папка не существует, приложение создает папку в текущей рабочей директории.

Чтобы в интерактивном режиме выбрать папку, нажмите Browse.

Show verbose outputВыберите эту опцию, чтобы отобразить прогресс обучения в командной строке.
Stop on ErrorВыберите эту опцию, чтобы остановить обучение, когда ошибка произойдет во время эпизода.
Training plot

Опция, чтобы графически отобразить прогресс обучения в приложении в виде одного из следующих значений. "training-progress" или "none".

  • training-progress — Покажите процесс обучения

  • none — Не показывайте процесс обучения

Задайте параллельные опции обучения

Обучать вашего агента с помощью параллельных вычислений, на вкладке Train, нажатии кнопкиParallel computing icon.. Учебные агенты с помощью параллельных вычислений требуют программного обеспечения Parallel Computing Toolbox™. Для получения дополнительной информации смотрите, Обучают Агентов Используя Параллельные вычисления и графические процессоры.

Чтобы задать опции для параллельного обучения, выберите Use Parallel> Parallel training options.

Parallel training options dialog box.

В диалоговом окне Parallel Training Options можно задать следующие опции обучения.

ОпцияОписание
Parallel computing mode

Режим параллельных вычислений в виде одного из следующих значений.

  • sync Использование parpool запускать синхронное обучение на доступных рабочих. В этом случае рабочие приостанавливают выполнение, пока все рабочие не закончены. Хост обновляет агента и параметры критика на основе результатов всех рабочих и отправляет обновленные параметры всем рабочим.

  • async Использование parpool запускать асинхронное обучение на доступных рабочих. В этом случае рабочие передают свои данные обратно в хост, как только они закончили и получают обновленные параметры от хоста. Рабочие затем продолжают свою задачу.

Type of data from workers

Тип данных, которые рабочие отправляют в хост в виде одного из следующих значений.

  • experiences — Симуляция выполняется рабочими, и изучение выполняется хостом. А именно, рабочие симулируют агента против среды и отправляют данные об опыте (наблюдение, действие, вознаграждение, следующее наблюдение и флаг, указывающий, было ли терминальное условие достигнуто) к хосту. Для агентов с градиентами хост вычисляет градиенты из событий, обновляет сетевые параметры и передает обновленные параметры обратно рабочим, они могут выполнить новую симуляцию против среды.

  • gradients — И симуляция и изучение выполняются рабочими. А именно, рабочие симулируют агента против среды, вычисляют градиенты из событий и отправляют градиенты в хост. Хост составляет в среднем градиенты, обновляет сетевые параметры и передает обновленные параметры обратно рабочим, они могут выполнить новую симуляцию против среды.

Примечание

Для DQN, DDPG, PPO и TD3 необходимо установить эту опцию на experiences.

Steps until data is sent

Количество шагов, после которых рабочие отправляют данные в хост и получают обновленные параметры в виде –1 или положительное целое число. Когда этой опцией является –1, рабочий ожидает до конца эпизода и затем отправляет все данные о шаге в хост. В противном случае рабочий ожидает конкретное количество шагов перед передающими данными.

Transfer workspace variables to workers

Выберите эту опцию, чтобы отправить переменные и рабочей области модели, чтобы быть параллельными рабочим. Когда вы выбираете эту опцию, хост отправляет переменные, используемые в моделях и заданные в рабочей области MATLAB® рабочим.

Random seed for workers

Инициализация Randomizer для рабочих в виде одного из следующих значений.

  • –1 — Присвойте уникальный случайный seed каждому рабочему. Значение seed является ID рабочего.

  • –2 — Не присваивайте случайный seed рабочим.

  • Вектор — Вручную задает случайный seed для каждого рабочего. Число элементов в векторе должно совпадать с количеством рабочих.

Files to attach to parallel poolДополнительные файлы, чтобы присоединить к параллельному пулу. Задайте имена файлов в текущей рабочей директории с одним именем на каждой линии.
Worker setup functionФункция, чтобы запуститься перед обучением запускается в виде указателя на функцию, имеющую входные параметры. Эта функция запущена однажды на рабочего, прежде чем обучение начнется. Запишите эту функцию, чтобы выполнить любую обработку, в которой вы нуждаетесь до обучения.
Worker cleanup functionФункция, чтобы выполняться после учебных концов в виде указателя на функцию, имеющую входные параметры. Можно записать эту функцию, чтобы очистить рабочую область или выполнить другую обработку после того, как обучение завершит работу.

Следующий рисунок показывает, что пример параллелен учебной настройке следующие файлы и функции.

  • Файл данных, присоединенный к параллельному пулу — workerData.mat

  • Функция настройки рабочего — mySetup.m

  • Функция очистки рабочего — myCleanup.m

Parallel training options dialog showing file and function information.

Смотрите также

Похожие темы