快捷方式

ClipTransform

class torchrl.envs.transforms.ClipTransform(in_keys=None, out_keys=None, in_keys_inv=None, out_keys_inv=None, *, low=None, high=None)[source]

用于裁剪输入(状态、动作)或输出(观察、奖励)值的变换。

此变换可以接受多个输入或输出键,但每次变换只能接受一个值。如果需要多个裁剪值,则应将多个变换一个接一个地附加。

参数:
  • in_keys (NestedKeys 列表) – 输入条目(读取)

  • out_keys (NestedKeys 列表) – 输入条目(写入)

  • in_keys_inv (NestedKeys 列表) – 在 inv() 调用期间的输入条目(读取)。

  • out_keys_inv (NestedKeys 列表) – 在 inv() 调用期间的输入条目(写入)。

关键字参数:
  • low (标量, 可选) – 裁剪空间的下限。

  • high (标量, 可选) – 裁剪空间的上限。

注意

允许仅提供参数 lowhigh 中的一个,但至少必须提供一个。

示例

>>> from torchrl.envs.libs.gym import GymEnv
>>> base_env = GymEnv("Pendulum-v1")
>>> env = TransformedEnv(base_env, ClipTransform(in_keys=['observation'], low=-1, high=0.1))
>>> r = env.rollout(100)
>>> assert (r["observation"] <= 0.1).all()
transform_observation_spec(observation_spec: TensorSpec) TensorSpec[source]

变换观察规范,使结果规范与变换映射匹配。

参数:

observation_spec (TensorSpec) – 变换前的规范

返回:

变换后预期的规范

transform_reward_spec(reward_spec: TensorSpec) TensorSpec[source]

变换奖励规范,使结果规范与变换映射匹配。

参数:

reward_spec (TensorSpec) – 变换前的规范

返回:

变换后预期的规范

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深度教程

查看教程

资源

查找开发资源并获得解答

查看资源