主要内容

rlRepresentationOptions

(不推荐)为强化学习代理表示设置的选项(批评者和参与者)

rlRepresentationOptions不建议使用。使用一个rlOptimizerOptions对象中的代理选项对象。有关更多信息,请参见rlRepresentationOptions不建议使用

创建

描述

例子

repOpts= rlRepresentationOptions创建一个默认选项集,在创建强化学习参与者或批评者时将其用作最后一个参数。可以使用点表示法修改对象属性。

例子

repOpts= rlRepresentationOptions (名称,值属性创建一个选项集属性使用一个或多个名称-值对参数。

属性

全部展开

表示的学习率,指定为正标量。如果学习率太低,那么训练就需要很长时间。如果学习率太高,那么训练可能会达到次优结果或发散。

例子:“LearnRate”,0.025

用于训练表示的网络的优化器,指定为以下值之一。

  • “亚当”-使用Adam优化器。函数指定梯度移动平均和平方梯度移动平均的衰减率GradientDecayFactor而且SquaredGradientDecayFactor字段OptimizerParameters选择。

  • “个”-使用随机梯度下降与动量(SGDM)优化器。方法指定动量值动力字段OptimizerParameters选择。

  • “rmsprop”-使用RMSProp优化器。函数指定梯度移动平均平方的衰减率SquaredGradientDecayFactor字段OptimizerParameters选择。

有关这些优化器的详细信息,请参见随机梯度下降的算法部分trainingOptions在深度学习工具箱™。

例子:“优化”、“个”

优化器的适用参数,指定为OptimizerParameters使用以下参数创建。

参数 描述
动力

上一步的贡献,指定为从0到1的标量。值为0表示上一步没有贡献。值为1表示最大贡献。

仅当优化器“个”.在这种情况下,默认值是0.9。这个默认值适用于大多数问题。

ε

分母偏移量,指定为正标量。优化器将此偏移量添加到网络参数更新中的分母中,以避免除零。

仅当优化器“亚当”“rmsprop”.在这种情况下,默认值为108.这个默认值适用于大多数问题。

GradientDecayFactor

梯度移动平均的衰减率,指定为从0到1的正标量。

仅当优化器“亚当”.在这种情况下,默认值是0.9。这个默认值适用于大多数问题。

SquaredGradientDecayFactor

梯度移动平均的平方衰减率,指定为从0到1的正标量。

仅当优化器“亚当”“rmsprop”.在这种情况下,默认值为0.999。这个默认值适用于大多数问题。

的特定属性时OptimizerParameters中指定的优化器类型不适用优化器选项,该属性被设置为“不适用”

若要更改默认值,请创建rlRepresentationOptions的属性设置并使用点表示法来访问和更改OptimizerParameters

repOpts = rlRepresentationOptions;repOpts.OptimizerParameters.GradientDecayFactor = 0.95;

表示梯度的阈值,指定为或者一个正标量。类所指定的渐变将被剪切GradientThresholdMethod选择。裁剪梯度限制了网络参数在训练迭代中的变化量。

例子:“GradientThreshold”,1

梯度阈值方法用于剪辑超过梯度阈值的梯度值,指定为以下值之一。

  • “l2norm”-如果l2可学习参数的梯度范数大于GradientThreshold,然后缩放梯度,使l2规范=GradientThreshold

  • “global-l2norm”-如果全局l2规范,l,大于GradientThreshold,然后将所有梯度按倍缩放GradientThreshold /l.全球l2Norm考虑所有可学习参数。

  • “绝对值”-如果一个可学习参数的梯度中个别偏导数的绝对值大于GradientThreshold,然后将偏导数缩放为GradientThreshold保留偏导数的符号。

有关更多信息,请参见梯度剪裁的算法部分trainingOptions在深度学习工具箱中。

例子:“GradientThresholdMethod”、“绝对值”

因素l2正则化(权重衰减),指定为非负标量。有关更多信息,请参见L2正规化的算法部分trainingOptions在深度学习工具箱中。

为了避免在使用具有许多参数的表示时过度拟合,可以考虑增加L2RegularizationFactor选择。

例子:“L2RegularizationFactor”,0.0005

用于在训练过程中执行梯度计算、参数更新和预测等深度神经网络操作的计算设备。它被指定为任意一种“cpu”“图形”

“图形”选项需要并行计算工具箱™软件和CUDA®使英伟达®GPU。有关支持的图形处理器的更多信息,请参见GPU计算要求(并行计算工具箱)

你可以使用gpuDevice(并行计算工具箱),查询或选择要使用MATLAB的本地GPU设备®

请注意

在GPU上训练或模拟代理涉及特定于设备的数值舍入误差。与在CPU上执行相同的操作相比,这些错误会产生不同的结果。

注意,如果你想使用并行处理来加速训练,你不需要设置UseDevice.相反,在训练你的代理时,使用rlTrainingOptions对象,其中UseParallel选项设置为真正的.有关使用多核处理器和gpu进行训练的更多信息,请参见使用并行计算和图形处理器训练代理

例子:“UseDevice”、“gpu”

对象的功能

rlValueRepresentation (不推荐)用于强化学习代理的值函数批评表示
rlQValueRepresentation (不推荐)用于强化学习代理的Q-Value函数批评表示
rlDeterministicActorRepresentation (不推荐)用于强化学习代理的确定性参与者表示
rlStochasticActorRepresentation (不推荐)用于强化学习代理的随机参与者表示

例子

全部折叠

创建一个选项集,用于为强化学习代理创建评论家或参与者表示。设置表示的学习率为0.05,设置梯度阈值为1。在创建选项集时,可以使用“名称”、“值”对设置选项。没有显式设置的任何选项都有默认值。

repOpts = rlRepresentationOptions(“LearnRate”5飞行,...“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
动量:"不适用" Epsilon: 1.0000e-07 GradientDecayFactor: 0.9000 SquaredGradientDecayFactor: 0.9990

版本历史

在R2019a中引入

全部展开

Baidu
map