RandomCropTensorDict¶
- class torchrl.envs.transforms.RandomCropTensorDict(sub_seq_len: int, sample_dim: int = - 1, mask_key: Optional[NestedKey] = None)[source]¶
用于回放缓冲区和模块的轨迹子采样器。
沿输入 tensordict 的最后一个维度收集定义长度的子序列。这可以用于从回放缓冲区采样的轨迹中获取裁剪后的轨迹。
此转换主要设计用于回放缓冲区和模块。目前,它不能用作环境转换。如果需要此行为,请随时通过 issue 提出请求。
- 参数:
sub_seq_len (int) – 要采样的子轨迹的长度
sample_dim (int, optional) – 应在哪个维度上进行裁剪。应优先使用负维度,以使转换对具有不同批次维度的 tensordict 具有鲁棒性。默认为 -1(TorchRL 中的默认时间维度)。
mask_key (NestedKey) – 如果提供,则表示在进行采样时要查找的掩码键。如果提供,则仅返回有效元素。假定掩码是布尔张量,具有先 True 值,然后是 False 值,而不是混合在一起。
RandomCropTensorDict
不会检查是否遵守此规则,因此由不正确的掩码引起的任何错误都有可能被忽略。默认值:None(无掩码键)。