捷徑

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,使結果 spec 與 transform mapping 相符。

參數:

observation_spec (TensorSpec) – 轉換前的 spec

回傳:

轉換後預期的 spec

transform_reward_spec(reward_spec: TensorSpec) TensorSpec[source]

轉換 reward spec,使結果 spec 與 transform mapping 相符。

參數:

reward_spec (TensorSpec) – 轉換前的 spec

回傳:

轉換後預期的 spec

文件

Access comprehensive developer documentation for PyTorch

View Docs

Tutorials

Get in-depth tutorials for beginners and advanced developers

View Tutorials

Resources

Find development resources and get your questions answered

View Resources