UnsqueezeTransform¶
- class torchrl.envs.transforms.UnsqueezeTransform(*args, **kwargs)[source]¶
在指定位置插入大小为 1 的维度。
- 参数:
dim (int) – 要取消压缩的维度。必须为负数(或必须启用 allow_positive_dim)。
- 关键字参数:
allow_positive_dim (bool, optional) – 如果
True
,则接受正维度。UnsqueezeTransform 会将这些维度映射到输入张量的第 n 个特征维度(即父环境批大小后的第 n 个维度),独立于 tensordict 批大小(即正维度在传递不同批维度 tensordict 的上下文中可能很危险)。默认为 False,即不允许非负维度。in_keys (list of NestedKeys) – 输入条目(读取)。
out_keys (list of NestedKeys) – 输入条目(写入)。如果未提供,则默认为
in_keys
。in_keys_inv (list of NestedKeys) –
inv()
调用期间的输入条目(读取)。out_keys_inv (list of NestedKeys) –
inv()
调用期间的输入条目(写入)。如果未提供,则默认为in_keys_in
。
- transform_input_spec(input_spec)[source]¶
转换输入规范,使结果规范与转换映射匹配。
- 参数:
input_spec (TensorSpec) – 转换前的规范
- 返回:
转换后预期的规范
- transform_observation_spec(observation_spec: TensorSpec) TensorSpec [source]¶
转换观察规范,使结果规范与转换映射匹配。
- 参数:
observation_spec (TensorSpec) – 转换前的规范
- 返回:
转换后预期的规范
- transform_reward_spec(reward_spec: TensorSpec) TensorSpec [source]¶
转换奖励规范,使结果规范与转换映射匹配。
- 参数:
reward_spec (TensorSpec) – 转换前的规范
- 返回:
转换后预期的规范