ray.rllib.算法.算法配置.AlgorithmConfig.实验性#

AlgorithmConfig.experimental(*, _torch_grad_scaler_class: ~typing.Type | None = <ray.rllib.utils.from_config._NotProvided object>, _torch_lr_scheduler_classes: ~typing.List[~typing.Type] | ~typing.Dict[str, ~typing.Type] | None = <ray.rllib.utils.from_config._NotProvided object>, _tf_policy_handles_more_than_one_loss: bool | None = <ray.rllib.utils.from_config._NotProvided object>, _disable_preprocessor_api: bool | None = <ray.rllib.utils.from_config._NotProvided object>, _disable_action_flattening: bool | None = <ray.rllib.utils.from_config._NotProvided object>, _disable_initialize_loss_from_dummy_batch: bool | None = <ray.rllib.utils.from_config._NotProvided object>, _enable_new_api_stack=-1) AlgorithmConfig[源代码]#

设置配置的实验性设置。

参数:
  • _torch_grad_scaler_class – 用于 torch 损失缩放(和梯度反缩放)的类。该类必须实现以下方法才能与 TorchLearner 兼容。这些方法/API 与 torch 自己的 torch.amp.GradScaler 完全匹配(更多详情请参见 https://pytorch.org/docs/stable/amp.html#gradient-scaling):scale([loss]) 用于按某个因子缩放损失。get_scale() 用于获取当前缩放因子值。step([optimizer]) 用于反缩放梯度(除以缩放因子)并执行给定的优化器步骤。update() 用于在优化器步骤后更新缩放器(例如调整缩放因子)。

  • _torch_lr_scheduler_classes – 一个 torch.lr_scheduler.LRScheduler 类(更多详情请参见 https://pytorch.org/docs/stable/optim.html#how-to-adjust-learning-rate)列表,或一个将模块ID映射到此类调度器类列表的字典。可以按顺序应用多个调度器类,并将按照此处定义的顺序进行步骤操作。注意,大多数学习率调度器需要配置参数,即你需要在列表中部分初始化调度器。

  • _tf_policy_handles_more_than_one_loss – 实验性标志。如果为 True,TFPolicy 将处理多个损失/优化器。如果您希望从 loss_fn 返回多个损失项,并从 optimizer_fn 返回相同数量的优化器,请将其设置为 True。未来,此标志的默认值将为 True。

  • _disable_preprocessor_api – 实验性标志。如果为 True,则不会创建(观察)预处理器,观察结果将按环境返回的方式传递给模型。未来,此项的默认值将为 True。

  • _disable_action_flattening – 实验性标志。如果为 True,RLlib 将不再将策略计算的动作展平为一个单一的张量(用于存储在 SampleCollectors/输出文件等中),而是保持(可能嵌套的)动作不变。禁用展平会影响: - SampleCollectors:必须存储可能嵌套的动作结构。 - 将先前动作作为输入一部分的模型。 - 从离线文件读取的算法(包括动作信息)。

返回:

这个更新的 AlgorithmConfig 对象。