Создайте опции для представлений агента обучения с подкреплением
возвращает опции по умолчанию для определения представления для агента обучения с подкреплением. repOpts
= rlRepresentationOptions
набор опции с помощью заданных пар "имя-значение", чтобы заменить значения опции по умолчанию.repOpts
= rlRepresentationOptions(Name,Value
)
Создайте набор опций для создания критика или представления агента для агента обучения с подкреплением. Установите темп обучения для представления 0,05 и установите порог градиента к 1. Можно определить опции с помощью Имени, пар Значения, когда вы создаете набор опций. Любые опции, которые вы явным образом не устанавливаете, имеют свои значения по умолчанию.
repOpts = rlRepresentationOptions('LearnRate',5e-2,... 'GradientThreshold',1)
repOpts = rlRepresentationOptions with properties: LearnRate: 0.0500 GradientThreshold: 1 GradientThresholdMethod: "l2norm" L2RegularizationFactor: 1.0000e-04 UseDevice: "cpu" Optimizer: "adam" OptimizerParameters: [1x1 rl.option.OptimizerParameters]
В качестве альтернативы создайте набор опций по умолчанию и используйте запись через точку, чтобы изменить некоторые значения.
repOpts = rlRepresentationOptions; repOpts.LearnRate = 5e-2; repOpts.GradientThreshold = 1
repOpts = rlRepresentationOptions with properties: LearnRate: 0.0500 GradientThreshold: 1 GradientThresholdMethod: "l2norm" L2RegularizationFactor: 1.0000e-04 UseDevice: "cpu" Optimizer: "adam" OptimizerParameters: [1x1 rl.option.OptimizerParameters]
Если вы хотите изменить свойства OptimizerParameters
опция, используйте запись через точку, чтобы получить доступ к ним.
repOpts.OptimizerParameters.Epsilon = 1e-7; repOpts.OptimizerParameters
ans = OptimizerParameters with properties: Momentum: "Not applicable" Epsilon: 1.0000e-07 GradientDecayFactor: 0.9000 SquaredGradientDecayFactor: 0.9990
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'Optimizer',"rmsprop"
'LearnRate'
— Темп обучения для представленияТемп обучения для представления, заданного как разделенная запятой пара, состоящая из 'LearnRate'
и положительная скалярная величина. Если темп обучения является слишком низким, то обучение занимает много времени. Если темп обучения слишком высок, то учебная сила достигает субоптимального результата или отличается.
Пример: 'LearnRate',0.025
'Optimizer'
— Оптимизатор для представления"adam"
(значение по умолчанию) | "sgdm"
| "rmsprop"
Оптимизатор для того, чтобы обучить сеть представления, заданного как разделенная запятой пара, состоящая из 'Optimizer'
и одна из следующих строк:
"adam"
— Используйте оптимизатор Адама. Можно задать уровни затухания градиента и скользящих средних значений градиента в квадрате с помощью GradientDecayFactor
и SquaredGradientDecayFactor
поля OptimizerParameters
опция.
"sgdm"
— Используйте стохастический градиентный спуск с импульсом (SGDM) оптимизатор. Можно задать значение импульса с помощью Momentum
поле OptimizerParameters
опция.
"rmsprop"
— Используйте оптимизатор RMSProp. Можно задать уровень затухания скользящего среднего значения градиента в квадрате с помощью SquaredGradientDecayFactor
поля OptimizerParameters
опция.
Для получения дополнительной информации об этих оптимизаторах, смотрите Стохастический Градиентный спуск (Deep Learning Toolbox) в разделе Algorithms trainingOptions
в Deep Learning Toolbox™.
Пример: 'Optimizer',"sgdm"
'OptimizerParameters'
— Применимые параметры для оптимизатораOptimizerParameters
объектПрименимые параметры для оптимизатора, заданного как разделенная запятой пара, состоящая из 'OptimizerParameters'
и OptimizerParameters
объект.
OptimizerParameters
объект имеет следующие свойства.
Momentum | Вклад предыдущего шага, заданного как скаляр от 0 до 1. Значение 0 средних значений никакой вклад от предыдущего шага. Значение 1 среднего значения максимальный вклад. Этот параметр применяется только когда |
Epsilon | Смещение знаменателя, заданное как положительная скалярная величина. Оптимизатор добавляет это смещение к знаменателю в сетевых обновлениях параметра, чтобы избежать деления на нуль. Этот параметр применяется только когда |
GradientDecayFactor | Уровень затухания скользящего среднего значения градиента, заданного как положительная скалярная величина от 0 до 1. Этот параметр применяется только когда |
SquaredGradientDecayFactor | Уровень затухания скользящего среднего значения градиента в квадрате, заданного как положительная скалярная величина от 0 до 1. Этот параметр применяется только когда |
Когда конкретное свойство OptimizerParameters
не применимо к типу оптимизатора, заданному в Optimizer
опция, то свойство установлено в "Not applicable"
.
Чтобы изменить значения по умолчанию, создайте rlRepresentationOptions
установите и используйте запись через точку, чтобы получить доступ и изменить свойства OptimizerParameters
.
repOpts = rlRepresentationOptions; repOpts.OptimizerParameters.Epsilon = 1e-7;
'GradientThreshold'
— Пороговое значение для градиентаInf
(значение по умолчанию) | положительная скалярная величинаПороговое значение для градиента представления, заданного как разделенная запятой пара, состоящая из 'GradientThreshold'
и Inf
или положительная скалярная величина. Если градиент превышает это значение, градиент отсекается, как задано GradientThresholdOption
. Усечение градиента ограничивает, сколько сетевые параметры изменяют в учебной итерации.
Пример: 'GradientThreshold',1
'GradientThresholdMethod'
— Пороговый метод градиента"l2norm"
(значение по умолчанию) | "global-l2norm"
| "absolute-value"
Пороговый метод градиента раньше отсекал значения градиента, которые превышают порог градиента, заданный как разделенная запятой пара, состоящая из 'GradientThresholdMethod'
и одна из следующих строк:
"l2norm"
— Если L 2 нормы градиента learnable параметра больше, чем GradientThreshold
, затем масштабируйте градиент так, чтобы L 2 нормы равнялся GradientThreshold
.
"global-l2norm"
— Если глобальный L 2 нормы, L, больше, чем GradientThreshold
, затем масштабируйте все градиенты фактором GradientThreshold/
L. Глобальный L 2 нормы рассматривает все learnable параметры.
"absolute-value"
— Если абсолютное значение отдельной частной производной в градиенте learnable параметра больше, чем GradientThreshold
, затем масштабируйте частную производную, чтобы иметь величину, равную GradientThreshold
и сохраните знак частной производной.
Для получения дополнительной информации смотрите, что Градиент Отсекает (Deep Learning Toolbox) в разделе Algorithms trainingOptions
в Deep Learning Toolbox.
Пример: 'GradientThresholdMethod',"absolute-value"
'L2RegularizationFactor'
— Фактор для L 2 регуляризацииФактор для L 2 регуляризации (затухание веса), заданный как разделенная запятой пара, состоящая из 'L2RegularizationFactor'
и неотрицательный скаляр. Для получения дополнительной информации см. Регуляризацию L2 (Deep Learning Toolbox) в разделе Algorithms trainingOptions
в Deep Learning Toolbox.
Чтобы постараться не сверхсоответствовать при использовании представления многим параметрам, рассмотрите увеличение L2RegularizationFactor
опция.
Пример: 'L2RegularizationFactor',0.0005
'UseDevice'
— Устройство расчета для обучения"cpu"
(значение по умолчанию) | "gpu"
Устройство расчета для обучения агент, который использует представление, заданное как разделенная запятой пара, состоящая из 'UseDevice'
и любой "cpu"
или "gpu"
.
"gpu"
опция требует Parallel Computing Toolbox™. Чтобы использовать графический процессор в обучении сети, у вас должен также быть CUDA®, включенный NVIDIA®, графический процессор с вычисляет возможность 3.0 или выше.
Пример: 'UseDevice',"gpu"
repOpts
— Опции представленияrlRepresentationOptions
объектНабор опции для определения представления для агента обучения с подкреплением., возвратился как rlRepresentationgOptions
объект. Значения свойств repOpts
инициализируются к значениям по умолчанию или к значениям, которые вы задаете с Name,Value
пары. Можно далее изменить значения свойств с помощью записи через точку. Используйте набор опций в качестве входного параметра с rlRepresentation
когда вы создаете представления обучения с подкреплением.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.