快捷方式

SignTransform

class torchrl.envs.transforms.SignTransform(in_keys=None, out_keys=None, in_keys_inv=None, out_keys_inv=None)[source]

计算 TensorDict 值符号的转换。

此转换读取 in_keysin_keys_inv 中的张量,计算其元素的符号,并将结果符号张量分别写入 out_keysout_keys_inv

参数:
  • in_keys (嵌套键列表) – 输入项(读取)

  • out_keys (嵌套键列表) – 输入项(写入)

  • in_keys_inv (嵌套键列表) – 在 inv() 调用期间的输入项(读取)。

  • out_keys_inv (嵌套键列表) – 在 inv() 调用期间的输入项(写入)。

示例

>>> from torchrl.envs import GymEnv, TransformedEnv, SignTransform
>>> base_env = GymEnv("Pendulum-v1")
>>> env = TransformedEnv(base_env, SignTransform(in_keys=['observation']))
>>> r = env.rollout(100)
>>> obs = r["observation"]
>>> assert (torch.logical_or(torch.logical_or(obs == -1, obs == 1), obs == 0.0)).all()
transform_observation_spec(observation_spec: TensorSpec) TensorSpec[source]

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

参数:

observation_spec (TensorSpec) – 转换前的规范

返回:

转换后的预期规范

transform_reward_spec(reward_spec: TensorSpec) TensorSpec[source]

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

参数:

reward_spec (TensorSpec) – 转换前的规范

返回:

转换后的预期规范

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发人员的深入教程

查看教程

资源

查找开发资源并获得问题解答

查看资源