主要内容

rlOptimizerOptions

优化选择演员和批评

    描述

    使用一个rlOptimizerOptions对象指定一个优化选项设置为演员和批评。

    创建

    描述

    例子

    optopt中= rlOptimizerOptions创建一个默认的优化选项设置为使用CriticOptimizerOptionsActorOptimizerOptions代理人选择对象的属性,或者作为最后一个参数rlOptimizer优化器创建一个对象。您可以修改对象属性使用点符号。

    例子

    optopt中= rlOptimizerOptions (名称=值)创建一个选项设置与指定的属性使用一个或多个名称参数。

    属性

    全部展开

    学习速率用于训练演员或评论家函数近似者,指定为一个积极的标量。如果学习速率太低,那么培训需要很长时间。如果学习速率过高,那么训练可能会达到一个理想的结果或发散。

    例子:LearnRate = 0.025

    梯度阈值用于训练演员或评论家函数近似者,指定为或积极的标量。如果梯度超过这个值,指定的梯度是剪GradientThresholdMethod选择。剪切梯度限制多少训练网络参数可以改变在一个迭代。

    例子:GradientThreshold = 1

    梯度阈值方法用于训练演员或评论家函数估计值。这是具体的方法用来夹梯度值超过梯度阈值,它被指定为以下值之一。

    • “l2norm”——如果l2规范的梯度大于可学的参数GradientThreshold,然后尺度梯度,这样l2规范=GradientThreshold

    • “global-l2norm”——如果全球l2规范l大于GradientThreshold规模,那么所有渐变的一个因素GradientThreshold /l。全球l2规范考虑所有可学的参数。

    • “绝对值”——如果一个个体的绝对值偏导数的梯度大于可学的参数GradientThreshold,然后规模偏导数等于级GradientThreshold和留住偏导数的符号。

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

    例子:GradientThresholdMethod =“绝对值”

    因素l2正规化(重量衰变)用于训练演员或评论家函数近似者,指定为负的标量。有关更多信息,请参见L2正规化的算法部分trainingOptions在深入学习工具箱。

    为了避免过度拟合与许多参数,当使用表示考虑增加L2RegularizationFactor选择。

    例子:L2RegularizationFactor = 0.0005

    算法用于训练演员或评论家函数近似者,指定为以下值之一。

    • “亚当”——使用亚当(自适应运动估计)算法。您可以指定的衰变速率梯度和平方梯度移动平均线使用GradientDecayFactorSquaredGradientDecayFactor的字段OptimizerParameters选择。

    • “个”——使用随机梯度下降势头(个)算法。您可以指定使用动量值动力场的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不适用于优化器中指定类型算法属性设置为“不适用”

    改变属性值,创建一个rlOptimizerOptions对象和使用点符号来访问和更改的属性OptimizerParameters

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

    对象的功能

    rlQAgentOptions 选择q学习的代理
    rlSARSAAgentOptions 撒尔沙剂的选择
    rlDQNAgentOptions 选择DQN代理
    rlPGAgentOptions 选择PG代理
    rlDDPGAgentOptions 选择DDPG代理
    rlTD3AgentOptions 选择TD3代理
    rlACAgentOptions 选择AC代理
    rlPPOAgentOptions 选择PPO代理
    rlTRPOAgentOptions 选择TRPO代理
    rlSACAgentOptions 囊剂的选择
    rlOptimizer 优化器创建了一个对象,演员和批评

    例子

    全部折叠

    使用rlOprimizerOptions创建一个默认的优化器选择对象使用的培训评论家函数估计值。

    myCriticOpts = rlOptimizerOptions
    myCriticOpts = rlOptimizerOptions属性:LearnRate: 0.0100 GradientThreshold:正GradientThresholdMethod:“l2norm”L2RegularizationFactor: 1.0000 e-04算法:“亚当”OptimizerParameters: [1 x1 rl.option.OptimizerParameters]

    使用点符号,改变训练算法随机梯度下降法与动量和动量的值参数设置0.6

    myCriticOpts。算法=“个”;myCriticOpts.OptimizerParameters。动量= 0.6;

    创建一个AC代理的选择对象,并设置其CriticOptimizerOptions财产myCriticOpts

    myAgentOpt = rlACAgentOptions;myAgentOpt。CriticOptimizerOptions = myCriticOpts;

    您现在可以使用myAgentOpt作为最后一个输入参数rlACAgent当创建你的AC代理。

    使用rlOprimizerOptions创建一个优化器选择对象使用演员的训练函数估计值。指定一个学习的速度0.2并设置GradientThresholdMethod“绝对值”

    myActorOpts = rlOptimizerOptions (LearnRate = 0.2,GradientThresholdMethod =“绝对值”)
    myActorOpts = rlOptimizerOptions属性:LearnRate: 0.2000 GradientThreshold:正GradientThresholdMethod:“绝对值”L2RegularizationFactor: 1.0000 e-04算法:“亚当”OptimizerParameters: [1 x1 rl.option.OptimizerParameters]

    使用点符号,改变GradientThreshold10

    myActorOpts。GradientThreshold = 10;

    创建一个AC代理选择对象并设置它ActorOptimizerOptions财产myActorOpts

    myAgentOpt = rlACAgentOptions (“ActorOptimizerOptions”,myActorOpts);

    您现在可以使用myAgentOpt作为最后一个输入参数rlACAgent当创建你的AC代理。

    版本历史

    介绍了R2022a