快捷方式

SignTransform

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

計算 TensorDict 值符號的 transform。

此 transform 讀取 in_keysin_keys_inv 中的張量,計算其元素的符號,並將結果符號張量分別寫入 out_keysout_keys_inv 中。

引數
  • in_keys (list of NestedKeys) – 輸入條目(讀取)

  • out_keys (list of NestedKeys) – 輸入條目(寫入)

  • in_keys_inv (list of NestedKeys) – 在 inv() 呼叫期間讀取的輸入條目。

  • out_keys_inv (list of NestedKeys) – 在 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]

轉換觀察規範,使結果規範與 transform 對映匹配。

引數

observation_spec (TensorSpec) – transform 之前的規範

返回

transform 後的預期規範

transform_reward_spec(reward_spec: TensorSpec) TensorSpec[source]

轉換獎勵規範,使結果規範與 transform 對映匹配。

引數

reward_spec (TensorSpec) – transform 之前的規範

返回

transform 後的預期規範

文件

訪問 PyTorch 的全面開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源