主要内容

导入策略和价值功能表示

要创建用于强化学习的函数近似器,您可以使用深度学习工具箱™网络导入功能导入预先训练的深度神经网络或深度神经网络层架构。你可以导入:

  • 开放神经网络交换(ONNX™)模型,需要ONNX模型格式支持包软件的深度学习工具箱转换器。金宝app有关更多信息,importONNXLayers

  • TensorFlow™-Keras网络,需要张量流模型的深度学习工具箱转换器金宝app支持包软件。有关更多信息,请参见importKerasLayers

  • Caffe卷积网络,这需要咖啡模型的深度学习工具箱进口商金宝app支持包软件。有关更多信息,请参见importCaffeLayers

导入深度神经网络后,可以使用表示对象创建策略或值函数表示对象,例如rlValueRepresentation

当您导入深度神经网络架构时,请考虑以下事项。

  • 导入的体系结构必须有一个输入层和一个输出层。因此,不支持导入带有观察和动作输入层的整个批评家网络。金宝app

  • 导入的网络架构输入和输出层的维度必须与您的环境中相应的操作、观察或奖励维度的维度相匹配。

  • 导入网络结构后,需要设置输入层和输出层的名称,使其与相应的动作规范和观测规范的名称相匹配。

有关强化学习支持的深度神经网络架构的更多信息,请参见金宝app创建策略和价值功能表示

引进影像观察应用的演员和评论家

例如,假设您有一个具有50 × 50灰度图像观测信号和连续动作空间的环境。为了训练策略梯度代理,您需要以下函数近似器,两者都必须有单个50 × 50的图像输入观察层和单个标量输出值。

  • 演员—根据当前观察选择动作值

  • 评论家-根据当前的观察估计预期的长期回报

另外,假设您有以下要导入的网络架构:

  • 具有50 × 50图像输入层和标量输出层的actor的深度神经网络架构,以ONNX格式保存(criticNetwork.onnx).

  • 具有50 × 50图像输入层和标量输出层的批评家的深度神经网络架构,以ONNX格式保存(actorNetwork.onnx).

要引进影评人和演员网络,使用importONNXLayers函数,而不指定输出层。

criticNetwork = importONNXLayers (“criticNetwork.onnx”);actorNetwork = importONNXLayers (“actorNetwork.onnx”);

这些命令生成一个警告,说明网络在添加输出层之前是可训练的。当您使用导入的网络创建参与者或批评者表示时,Reinforcement Learning Toolbox™软件会自动为您添加一个输出层。

导入网络后,创建参与者和批评者函数近似表示。要做到这一点,首先要从环境中获得观察和行动规范。

obsInfo = getObservationInfo (env);actInfo = getActionInfo (env);

创建批评家表示,指定批评家网络的输入层的名称作为观察名称。由于批评网络有单一的观察输入和单一的行动输出,所以使用价值-功能表示。

评论家= rlValueRepresentation (criticNetwork obsInfo,...“观察”, {criticNetwork.Layers (1) . name});

创建参与者表示,将参与者网络的输入层名称指定为观察名称,并将参与者网络的输出层名称指定为观察名称。由于参与者网络具有单个标量输出,所以使用确定性参与者表示。

演员= rlDeterministicActorRepresentation (actorNetwork obsInfo actInfo,...“观察”, {actorNetwork.Layers (1) . name},...“行动”{actorNetwork.Layers(结束). name});

然后,您可以:

  • 使用这些表示创建代理。有关更多信息,请参见强化学习代理

  • 使用。设置现有代理中的参与者和批评者表示setActorsetCritic,分别。

相关的话题